diff options
-rw-r--r-- | app/models/public_body.rb | 22 | ||||
-rw-r--r-- | spec/models/public_body_spec.rb | 12 |
2 files changed, 13 insertions, 21 deletions
diff --git a/app/models/public_body.rb b/app/models/public_body.rb index f26246660..c2078d02d 100644 --- a/app/models/public_body.rb +++ b/app/models/public_body.rb @@ -237,24 +237,16 @@ class PublicBody < ActiveRecord::Base # Can an FOI (etc.) request be made to this body? def is_requestable? - if self.defunct? - return false - end - if self.not_apply? - return false - end - if self.request_email.nil? - return false - end - return !self.request_email.empty? && self.request_email != 'blank' + has_request_email? && !defunct? && !not_apply? end # Strict superset of is_requestable? def is_followupable? - if self.request_email.nil? - return false - end - return !self.request_email.empty? && self.request_email != 'blank' + has_request_email? + end + + def has_request_email? + !request_email.blank? && request_email != 'blank' end # Also used as not_followable_reason @@ -263,7 +255,7 @@ class PublicBody < ActiveRecord::Base return 'defunct' elsif self.not_apply? return 'not_apply' - elsif self.request_email.nil? or self.request_email.empty? or self.request_email == 'blank' + elsif !has_request_email? return 'bad_contact' else raise "requestable_failure_reason called with type that has no reason" diff --git a/spec/models/public_body_spec.rb b/spec/models/public_body_spec.rb index c500e8e61..91340a12c 100644 --- a/spec/models/public_body_spec.rb +++ b/spec/models/public_body_spec.rb @@ -1008,21 +1008,21 @@ describe PublicBody do it 'should return false if request_email is nil' do @body.request_email = nil - @body.is_requestable?.should == false + @body.is_followupable?.should == false end it 'should return false if the request email is "blank"' do - @body.request_email = "blank" - @body.is_requestable?.should == false + @body.request_email = 'blank' + @body.is_followupable?.should == false end it 'should return false if the request email is an empty string' do - @body.request_email = "" - @body.is_requestable?.should == false + @body.request_email = '' + @body.is_followupable?.should == false end it 'should return true if the request email is an email address' do - @body.is_requestable?.should == true + @body.is_followupable?.should == true end end |