diff options
-rw-r--r-- | app/models/info_request.rb | 2 | ||||
-rw-r--r-- | spec/models/info_request_spec.rb | 12 |
2 files changed, 13 insertions, 1 deletions
diff --git a/app/models/info_request.rb b/app/models/info_request.rb index cf1af0e87..c549d6f5d 100644 --- a/app/models/info_request.rb +++ b/app/models/info_request.rb @@ -294,7 +294,7 @@ public end end def email_subject_followup(incoming_message = nil) - if incoming_message.nil? || !incoming_message.valid_to_reply_to? + if incoming_message.nil? || !incoming_message.valid_to_reply_to? || !incoming_message.subject 'Re: ' + self.email_subject_request else if incoming_message.subject.match(/^Re:/i) diff --git a/spec/models/info_request_spec.rb b/spec/models/info_request_spec.rb index 3eb88b2bb..9b87f909e 100644 --- a/spec/models/info_request_spec.rb +++ b/spec/models/info_request_spec.rb @@ -562,6 +562,18 @@ describe InfoRequest do @info_request.prominence = 'requester_only' @info_request.all_can_view?.should == false end + end + + describe 'when working out a subject for a followup emails' do + + it "should not be confused by an nil subject in the incoming message" do + ir = info_requests(:fancy_dog_request) + im = mock_model(IncomingMessage, + :subject => nil, + :valid_to_reply_to? => true) + subject = ir.email_subject_followup im + subject.should match(/^Re: Freedom of Information request.*fancy dog/) + end end |