diff options
Diffstat (limited to 'spec')
-rw-r--r-- | spec/controllers/request_controller_spec.rb | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/spec/controllers/request_controller_spec.rb b/spec/controllers/request_controller_spec.rb index 02237b29d..cdd1b43f0 100644 --- a/spec/controllers/request_controller_spec.rb +++ b/spec/controllers/request_controller_spec.rb @@ -2765,3 +2765,63 @@ describe RequestController, "#select_authorities" do end +describe RequestController, "#widget" do + + before do + @info_request = FactoryGirl.create(:info_request) + end + + it 'should render the widget template' do + get :widget, :id => @info_request.id + expect(response).to render_template('widget') + end + + it 'should find the info request' do + get :widget, :id => @info_request.id + assigns[:info_request].should == @info_request + end + + it 'should create a track thing for the request' do + get :widget, :id => @info_request.id + assigns[:track_thing].info_request.should == @info_request + end + + it 'should assign the request status' do + get :widget, :id => @info_request.id + assigns[:status].should == @info_request.calculate_status + end + + context 'for a non-logged-in user' do + + context 'if no widget-vote cookie is set' do + + it 'should set a widget-vote cookie' do + cookies[:widget_vote].should be_nil + get :widget, :id => @info_request.id + cookies[:widget_vote].should_not be_nil + end + + end + + end + + +end + +describe RequestController, "#create_widget" do + + before do + @info_request = FactoryGirl.create(:info_request) + end + + it 'should render the create widget template' do + get :create_widget, :id => @info_request.id + expect(response).to render_template('create_widget') + end + + it 'should find the info request' do + get :create_widget, :id => @info_request.id + assigns[:info_request].should == @info_request + end + +end |