forked from External/greenlight
		
	
		
			
				
	
	
		
			65 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| # frozen_string_literal: true
 | |
| 
 | |
| # BigBlueButton open source conferencing system - http://www.bigbluebutton.org/.
 | |
| #
 | |
| # Copyright (c) 2018 BigBlueButton Inc. and by respective authors (see below).
 | |
| #
 | |
| # This program is free software; you can redistribute it and/or modify it under the
 | |
| # terms of the GNU Lesser General Public License as published by the Free Software
 | |
| # Foundation; either version 3.0 of the License, or (at your option) any later
 | |
| # version.
 | |
| #
 | |
| # BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY
 | |
| # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | |
| # PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
 | |
| #
 | |
| # You should have received a copy of the GNU Lesser General Public License along
 | |
| # with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
 | |
| 
 | |
| require "rails_helper"
 | |
| require 'bigbluebutton_api'
 | |
| 
 | |
| describe Room, type: :model do
 | |
|   before do
 | |
|     @user = create(:user)
 | |
|     @room = @user.main_room
 | |
|   end
 | |
| 
 | |
|   context 'validations' do
 | |
|     it { should validate_presence_of(:name) }
 | |
|   end
 | |
| 
 | |
|   context 'associations' do
 | |
|     it { should belong_to(:owner).class_name("User").with_foreign_key("user_id") }
 | |
|   end
 | |
| 
 | |
|   context '#setup' do
 | |
|     it 'creates random uid and bbb_id' do
 | |
|       expect(@room.uid).to_not be_nil
 | |
|       expect(@room.bbb_id).to_not be_nil
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   context "#to_param" do
 | |
|     it "uses uid as the default identifier for routes" do
 | |
|       expect(@room.to_param).to eq(@room.uid)
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   context "#invite_path" do
 | |
|     it "should have correct invite path" do
 | |
|       expect(@room.invite_path).to eq("/#{@room.uid}")
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   context "#owned_by?" do
 | |
|     it "should return true for correct owner" do
 | |
|       expect(@room.owned_by?(@user)).to be true
 | |
|     end
 | |
| 
 | |
|     it "should return false for incorrect owner" do
 | |
|       expect(@room.owned_by?(create(:user))).to be false
 | |
|     end
 | |
|   end
 | |
| end
 |