new specs
This commit is contained in:
34
spec/controllers/live_meetings_controller_spec.rb
Normal file
34
spec/controllers/live_meetings_controller_spec.rb
Normal file
@@ -0,0 +1,34 @@
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe LiveMeetingsController, type: :controller do
|
||||
let(:user) { create(:user) }
|
||||
let(:account) { user.primary_account }
|
||||
let(:project) { create(:project, account: user.primary_account) }
|
||||
let(:broadcast) { create(:broadcast, name: "Broadcast", project: project) }
|
||||
|
||||
before :each do
|
||||
stub_mux_live_stream
|
||||
end
|
||||
|
||||
describe "#show" do
|
||||
before { sign_in user }
|
||||
|
||||
it "does not create new live meeting room if project already has a room" do
|
||||
expect(project.live_meeting_url.present?).to eq true
|
||||
expect(Daily).not_to receive(:create_room)
|
||||
|
||||
get :show, params: { project_id: project.id, broadcast_id: broadcast.id }
|
||||
expect(response).to be_successful
|
||||
end
|
||||
|
||||
it "creates new live meeting room if project has no room already created" do
|
||||
project.update(live_meeting_url: nil)
|
||||
|
||||
dummy_room_response = { url: 'dummy_url' }.to_json
|
||||
expect(Daily).to receive(:create_room).and_return(JSON.parse(dummy_room_response))
|
||||
|
||||
get :show, params: { project_id: project.id, broadcast_id: broadcast.id }
|
||||
expect(response).to be_successful
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user