diff --git a/app/models/mail_handler.rb b/app/models/mail_handler.rb index dab7a1a..f2a43c7 100644 --- a/app/models/mail_handler.rb +++ b/app/models/mail_handler.rb @@ -145,7 +145,7 @@ class MailHandler < ActionMailer::Base private MESSAGE_ID_RE = %r{^ +Received: from osiris ([127.0.0.1]) + by OSIRIS + with hMailServer ; Sat, 21 Jun 2008 18:41:39 +0200 +Message-ID: <006a01c8d3bd$ad9baec0$0a00a8c0@osiris> +From: "John Smith" +To: +References: <485d0ad366c88_d7014663a025f@osiris.tmail> +Subject: Re: [12345#1][bogus#1][#2] Add ingredients categories +Date: Sat, 21 Jun 2008 18:41:39 +0200 +MIME-Version: 1.0 +Content-Type: multipart/alternative; + boundary="----=_NextPart_000_0067_01C8D3CE.711F9CC0" +X-Priority: 3 +X-MSMail-Priority: Normal +X-Mailer: Microsoft Outlook Express 6.00.2900.2869 +X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2869 + +This is a multi-part message in MIME format. + +------=_NextPart_000_0067_01C8D3CE.711F9CC0 +Content-Type: text/plain; + charset="utf-8" +Content-Transfer-Encoding: quoted-printable + +This is reply +------=_NextPart_000_0067_01C8D3CE.711F9CC0 +Content-Type: text/html; + charset="utf-8" +Content-Transfer-Encoding: quoted-printable + +=EF=BB=BF + + + + + + +
This is=20 +reply
+ +------=_NextPart_000_0067_01C8D3CE.711F9CC0-- + diff --git a/test/fixtures/mail_handler/ticket_reply_with_bogus_issue_strings_in_subject_2.eml b/test/fixtures/mail_handler/ticket_reply_with_bogus_issue_strings_in_subject_2.eml new file mode 100644 index 0000000..c32e221 --- /dev/null +++ b/test/fixtures/mail_handler/ticket_reply_with_bogus_issue_strings_in_subject_2.eml @@ -0,0 +1,73 @@ +Return-Path: +Received: from osiris ([127.0.0.1]) + by OSIRIS + with hMailServer ; Sat, 21 Jun 2008 18:41:39 +0200 +Message-ID: <006a01c8d3bd$ad9baec0$0a00a8c0@osiris> +From: "John Smith" +To: +References: <485d0ad366c88_d7014663a025f@osiris.tmail> +Subject: Re: [12345#1][bogus#1][Feature request #2] Add ingredients categories +Date: Sat, 21 Jun 2008 18:41:39 +0200 +MIME-Version: 1.0 +Content-Type: multipart/alternative; + boundary="----=_NextPart_000_0067_01C8D3CE.711F9CC0" +X-Priority: 3 +X-MSMail-Priority: Normal +X-Mailer: Microsoft Outlook Express 6.00.2900.2869 +X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2869 + +This is a multi-part message in MIME format. + +------=_NextPart_000_0067_01C8D3CE.711F9CC0 +Content-Type: text/plain; + charset="utf-8" +Content-Transfer-Encoding: quoted-printable + +This is reply +------=_NextPart_000_0067_01C8D3CE.711F9CC0 +Content-Type: text/html; + charset="utf-8" +Content-Transfer-Encoding: quoted-printable + +=EF=BB=BF + + + + + + +
This is=20 +reply
+ +------=_NextPart_000_0067_01C8D3CE.711F9CC0-- + diff --git a/test/unit/mail_handler_test.rb b/test/unit/mail_handler_test.rb index 1a34690..527a185 100644 --- a/test/unit/mail_handler_test.rb +++ b/test/unit/mail_handler_test.rb @@ -680,6 +680,15 @@ class MailHandlerTest < ActiveSupport::TestCase assert_equal 'Feature request', journal.issue.tracker.name end + def test_update_issue_with_bogus_issue_strings_in_subject + journal1 = submit_email('ticket_reply_with_bogus_issue_strings_in_subject_1.eml') + journal2 = submit_email('ticket_reply_with_bogus_issue_strings_in_subject_2.eml') + assert journal1.is_a?(Journal) + assert journal2.is_a?(Journal) + assert_equal Issue.find(2), journal1.journalized + assert_equal Issue.find(2), journal2.journalized + end + def test_update_issue_with_attribute_changes # This email contains: 'Status: Resolved' journal = submit_email('ticket_reply_with_status.eml')