diff options
-rw-r--r-- | app/models/censor_rule.rb | 2 | ||||
-rw-r--r-- | spec/models/censor_rule_spec.rb | 11 |
2 files changed, 10 insertions, 3 deletions
diff --git a/app/models/censor_rule.rb b/app/models/censor_rule.rb index 4e96dc55a..02b85dc70 100644 --- a/app/models/censor_rule.rb +++ b/app/models/censor_rule.rb @@ -38,7 +38,7 @@ class CensorRule < ActiveRecord::Base :public_body_id => nil}} def require_user_request_or_public_body - if !self.regexp? && self.info_request.nil? && self.user.nil? && self.public_body.nil? + if self.info_request.nil? && self.user.nil? && self.public_body.nil? errors.add("Censor must apply to an info request a user or a body; ") end end diff --git a/spec/models/censor_rule_spec.rb b/spec/models/censor_rule_spec.rb index de9651f01..443bbe449 100644 --- a/spec/models/censor_rule_spec.rb +++ b/spec/models/censor_rule_spec.rb @@ -89,10 +89,17 @@ describe 'when validating rules' do describe 'when the allow_global flag has not been set' do before do - @censor_rule = CensorRule.new() + @censor_rule = CensorRule.new end - it 'should not allow a global censor rule (without user_id, request_id or public_body_id)' do + it 'should not allow a global text censor rule (without user_id, request_id or public_body_id)' do + @censor_rule.valid?.should == false + @expected_error = 'Censor must apply to an info request a user or a body; is invalid' + @censor_rule.errors.full_messages.should == [@expected_error] + end + + it 'should not allow a global regex censor rule (without user_id, request_id or public_body_id)' do + @censor_rule.regexp = true @censor_rule.valid?.should == false @expected_error = 'Censor must apply to an info request a user or a body; is invalid' @censor_rule.errors.full_messages.should == [@expected_error] |