diff options
author | Gareth Rees <gareth@mysociety.org> | 2014-11-19 10:29:32 +0000 |
---|---|---|
committer | Gareth Rees <gareth@mysociety.org> | 2014-11-19 11:27:23 +0000 |
commit | 87bc2e24d2845d21911b85581d0d611d888a6315 (patch) | |
tree | a0242047a91a9fe3d92344967049e3d76b14c14c /spec/controllers | |
parent | 259a0fd588e198d2a826ef4ac09284c610005387 (diff) |
Associate censor rule with something in #create
Build the CensorRule against the object that is found by an additional
parameter (either :info_request_id or :user_id)
Diffstat (limited to 'spec/controllers')
-rw-r--r-- | spec/controllers/admin_censor_rule_controller_spec.rb | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/spec/controllers/admin_censor_rule_controller_spec.rb b/spec/controllers/admin_censor_rule_controller_spec.rb index 85f46801a..6e12a1743 100644 --- a/spec/controllers/admin_censor_rule_controller_spec.rb +++ b/spec/controllers/admin_censor_rule_controller_spec.rb @@ -94,6 +94,54 @@ describe AdminCensorRuleController do expect(assigns[:censor_rule].last_edit_editor).to eq('*unknown*') end + context 'info_request_id param' do + + it 'finds an info request if the info_request_id param is supplied' do + info_request = FactoryGirl.create(:info_request) + post :create, :info_request_id => info_request.id, + :censor_rule => @censor_rule_params + expect(assigns[:info_request]).to eq(info_request) + end + + it 'associates the info request with the new censor rule' do + info_request = FactoryGirl.create(:info_request) + post :create, :info_request_id => info_request.id, + :censor_rule => @censor_rule_params + expect(assigns[:censor_rule].info_request).to eq(info_request) + end + + + it 'does not find an info request if no info_request_id param is supplied' do + post :create, :censor_rule => @censor_rule_params + expect(assigns[:info_request]).to be_nil + end + + end + + context 'user_id param' do + + it 'finds a user if the user_id param is supplied' do + user = FactoryGirl.create(:user) + post :create, :user_id => user.id, + :censor_rule => @censor_rule_params + expect(assigns[:censor_user]).to eq(user) + end + + it 'associates the user with the new censor rule' do + user = FactoryGirl.create(:user) + post :create, :user_id => user.id, + :censor_rule => @censor_rule_params + expect(assigns[:censor_rule].user).to eq(user) + end + + + it 'does not find a user if no user_id param is supplied' do + post :create, :censor_rule => @censor_rule_params + expect(assigns[:censor_user]).to be_nil + end + + end + context 'successfully saving the censor rule' do before(:each) do |