2014-05-19 21:21:06 +05:30
require 'spec_helper'
describe ConferenceController do
2016-06-20 21:05:08 +03:00
let ( :conference ) { create ( :conference , splashpage : create ( :splashpage , public : true ) , venue : create ( :venue ) ) }
let! ( :cfp ) { create ( :cfp , program : conference . program ) }
let ( :room ) { create ( :room , venue : conference . venue ) }
2014-08-12 11:51:59 +03:00
2014-11-14 17:24:24 +01:00
describe 'GET #index' do
it 'Response code is 200' do
get :index
expect ( response . response_code ) . to eq ( 200 )
end
end
2014-05-19 21:25:42 +05:30
describe 'GET #show' do
2014-06-17 00:47:49 +05:30
context 'conference made public' do
it 'assigns the requested conference to conference' do
get :show , id : conference . short_title
expect ( assigns ( :conference ) ) . to eq conference
end
2014-05-19 21:21:06 +05:30
2014-06-17 00:47:49 +05:30
it 'renders the show template' do
get :show , id : conference . short_title
expect ( response ) . to render_template :show
end
end
2014-05-28 15:06:08 +05:30
end
2014-11-14 17:24:24 +01:00
2016-06-15 20:54:51 +03:00
describe 'GET #schedule' do
context 'XML' do
before :each do
conference . program . schedule_public = true
conference . program . save!
create ( :event_scheduled , program : conference . program )
create ( :event_scheduled , program : conference . program )
get :schedule , id : conference . short_title , format : :xml
end
it 'assigns variables' do
expect ( assigns ( :conference ) ) . to eq conference
2016-07-20 23:20:47 +02:00
expect ( assigns ( :events_xml ) ) . to eq conference . program . schedules . find ( conference . program . selected_schedule ) . event_schedules . where ( 'start_time IS NOT NULL AND room_id IS NOT NULL' )
. order ( start_time : :asc ) . map ( & :event ) . group_by { | event | event . scheduled_start_time . to_date }
2016-06-15 20:54:51 +03:00
end
it 'renders successfully' do
expect ( response ) . to be_success
end
end
end
2014-11-14 17:24:24 +01:00
describe 'OPTIONS #index' do
it 'Response code is 200' do
process :index , 'OPTIONS'
expect ( response . response_code ) . to eq ( 200 )
end
end
2014-05-19 21:21:06 +05:30
end