aboutsummaryrefslogtreecommitdiffstats
path: root/spec/controllers
diff options
context:
space:
mode:
authorGareth Rees <gareth@mysociety.org>2014-11-19 10:30:42 +0000
committerGareth Rees <gareth@mysociety.org>2014-11-19 11:27:23 +0000
commitd5c7e08d58dc5ad52f16eccd9c456543503e4360 (patch)
tree9ab50c40852774d2bacd35469b7e1cf6597434d1 /spec/controllers
parent87bc2e24d2845d21911b85581d0d611d888a6315 (diff)
Set the form URL to POST to in #create
Direct the (re-rendered) form at the correct route for the association (or use the generic route if the rule is being created for some other reason)
Diffstat (limited to 'spec/controllers')
-rw-r--r--spec/controllers/admin_censor_rule_controller_spec.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/spec/controllers/admin_censor_rule_controller_spec.rb b/spec/controllers/admin_censor_rule_controller_spec.rb
index 6e12a1743..deaef1d7f 100644
--- a/spec/controllers/admin_censor_rule_controller_spec.rb
+++ b/spec/controllers/admin_censor_rule_controller_spec.rb
@@ -94,6 +94,11 @@ describe AdminCensorRuleController do
expect(assigns[:censor_rule].last_edit_editor).to eq('*unknown*')
end
+ it 'sets the URL for the form to POST to' do
+ post :create, :censor_rule => @censor_rule_params
+ expect(assigns[:form_url]).to eq(admin_rule_create_path)
+ end
+
context 'info_request_id param' do
it 'finds an info request if the info_request_id param is supplied' do
@@ -110,6 +115,12 @@ describe AdminCensorRuleController do
expect(assigns[:censor_rule].info_request).to eq(info_request)
end
+ it 'sets the URL for the form to POST to' do
+ info_request = FactoryGirl.create(:info_request)
+ post :create, :info_request_id => info_request.id,
+ :censor_rule => @censor_rule_params
+ expect(assigns[:form_url]).to eq(admin_info_request_censor_rules_path(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
@@ -134,6 +145,12 @@ describe AdminCensorRuleController do
expect(assigns[:censor_rule].user).to eq(user)
end
+ it 'sets the URL for the form to POST to' do
+ user = FactoryGirl.create(:user)
+ post :create, :user_id => user.id,
+ :censor_rule => @censor_rule_params
+ expect(assigns[:form_url]).to eq(admin_user_censor_rules_path(user))
+ end
it 'does not find a user if no user_id param is supplied' do
post :create, :censor_rule => @censor_rule_params