start writing tests

This commit is contained in:
Josh
2018-05-09 16:31:52 -04:00
parent e6d01ef1b9
commit 5347d902c0
24 changed files with 370 additions and 192 deletions

View File

@ -2,6 +2,8 @@ class Meeting < ApplicationRecord
before_create :generate_meeting_id
validates :name, presence: true
belongs_to :room
# Creates a meeting on the BigBlueButton server.
@ -11,9 +13,7 @@ class Meeting < ApplicationRecord
logoutURL: options[:meeting_logout_url] || '',
moderatorPW: random_password(12),
attendeePW: random_password(12),
moderatorOnlyMessage: options[:moderator_message],
"meta_#{BigBlueHelper::META_LISTED}": false,
"meta_#{BigBlueHelper::META_TOKEN}": name
moderatorOnlyMessage: options[:moderator_message]
}
#meeting_options.merge!(

View File

@ -11,7 +11,10 @@ class Room < ApplicationRecord
private
# Generates a uid for the room.
def set_uid
self.uid = Digest::SHA1.hexdigest(user.uid + user.provider + user.username)[0..12]
digest = user.id.to_s + user.provider + user.username
digest += user.uid unless user.uid.nil?
self.uid = Digest::SHA1.hexdigest(digest)[0..12]
end
end

View File

@ -1,7 +1,23 @@
class User < ApplicationRecord
after_create :initialize_room
before_save { email.downcase! }
has_one :room
validates :name, length: { maximum: 24 }, presence: true
validates :username, presence: true
validates :provider, presence: true
validates :email, length: { maximum: 60 }, presence: true,
uniqueness: { case_sensitive: false },
format: {with: /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i }
validates :password, length: { minimum: 6 }, allow_nil: true
# We don't want to run the validations because they require a user
# to have a password. Users who authenticate via omniauth won't.
has_secure_password(validations: false)
class << self
# Generates a user from omniauth.
@ -10,10 +26,6 @@ class User < ApplicationRecord
user.name = send("#{auth['provider']}_name", auth)
user.username = send("#{auth['provider']}_username", auth)
user.email = send("#{auth['provider']}_email", auth)
#user.token = auth['credentials']['token']
# Create a room for the user if they don't have one.
user.room = Room.create unless user.room
user.save!
user
@ -48,4 +60,11 @@ class User < ApplicationRecord
end
private
# Initializes a room for the user.
def initialize_room
self.room = Room.new
self.save!
end
end