aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGareth Rees <gareth@mysociety.org>2014-11-18 15:16:28 +0000
committerGareth Rees <gareth@mysociety.org>2014-11-18 15:16:28 +0000
commit72865e846ae7eee6116e898c78cf46767f79c596 (patch)
tree30e581218cdfe0494236ca5a6ed12f45d3c9e917
parente9bd15ff13de3df2b55cc252dc092d0159e83e73 (diff)
Specs for AdminCensorRuleController#new
-rw-r--r--spec/controllers/admin_censor_rule_controller_spec.rb48
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 37ffd9764..080779c66 100644
--- a/spec/controllers/admin_censor_rule_controller_spec.rb
+++ b/spec/controllers/admin_censor_rule_controller_spec.rb
@@ -1,5 +1,53 @@
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
+describe AdminCensorRuleController do
+
+ describe 'GET new' do
+
+ it 'returns a successful response' do
+ get :new
+ expect(response).to be_success
+ end
+
+ it 'renders the correct template' do
+ get :new
+ expect(response).to render_template('new')
+ 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)
+ get :new, :info_request_id => info_request.id
+ expect(assigns[:info_request]).to eq(info_request)
+ end
+
+ it 'does not find an info request if no info_request_id param is supplied' do
+ get :new
+ 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)
+ get :new, :user_id => user.id
+ expect(assigns[:censor_user]).to eq(user)
+ end
+
+ it 'does not find a user if no user_id param is supplied' do
+ get :new
+ expect(assigns[:censor_user]).to be_nil
+ end
+
+ end
+
+ end
+
+end
+
describe AdminCensorRuleController, "when making censor rules from the admin interface" do
render_views
before { basic_auth_login @request }