From 33dbbc2f39ccff432366e93b1ffbd86682247ce5 Mon Sep 17 00:00:00 2001 From: Stefan Botzenhart Date: Thu, 1 Oct 2015 11:52:31 +0200 Subject: [PATCH] Provide fixtures for legacy specs --- spec/fixtures/files/060719210727_archive.zip | Bin 157 -> 0 bytes .../060719210727_changeset_iso8859-1.diff | 13 - .../files/060719210727_changeset_utf8.diff | 13 - spec/fixtures/files/060719210727_source.rb | 39 -- .../apple_mail_with_attachment.eml | 240 ---------- .../fullname_of_sender_as_utf8_encoded.eml | 5 - ...pdate_with_multiple_quoted_reply_above.eml | 48 -- .../issue_update_with_quoted_reply_above.eml | 48 -- .../japanese_keywords_iso_2022_jp.eml | 60 --- spec/fixtures/mail_handler/message_reply.eml | 15 - .../mail_handler/message_reply_by_subject.eml | 13 - .../mail_handler/subject_as_iso-8859-1.eml | 11 - .../mail_handler/ticket_by_empty_user.eml | 17 - .../ticket_from_emission_address.eml | 19 - .../mail_handler/ticket_html_only.eml | 22 - .../mail_handler/ticket_on_given_project.eml | 60 --- spec/fixtures/mail_handler/ticket_reply.eml | 74 --- .../ticket_reply_by_message_id.eml | 74 --- .../mail_handler/ticket_reply_with_status.eml | 80 ---- .../mail_handler/ticket_with_attachment.eml | 248 ---------- .../mail_handler/ticket_with_attributes.eml | 43 -- spec/fixtures/mail_handler/ticket_with_cc.eml | 40 -- .../ticket_with_custom_fields.eml | 41 -- .../ticket_with_invalid_attributes.eml | 47 -- .../ticket_with_localized_attributes.eml | 43 -- .../mail_handler/ticket_with_long_subject.eml | 57 --- ...spaces_between_attribute_and_separator.eml | 43 -- .../ticket_without_from_header.eml | 40 -- spec/models/mail_handler_spec.rb | 445 +----------------- .../fixtures/diffs/partials.diff | 0 .../fixtures/diffs/subversion.diff | 0 .../mail_handler_controller_spec.rb | 2 +- .../unit/lib/redmine/unified_diff_spec.rb | 2 +- spec_legacy/unit/mail_handler_spec.rb | 2 +- 34 files changed, 6 insertions(+), 1898 deletions(-) delete mode 100644 spec/fixtures/files/060719210727_archive.zip delete mode 100644 spec/fixtures/files/060719210727_changeset_iso8859-1.diff delete mode 100644 spec/fixtures/files/060719210727_changeset_utf8.diff delete mode 100644 spec/fixtures/files/060719210727_source.rb delete mode 100644 spec/fixtures/mail_handler/apple_mail_with_attachment.eml delete mode 100644 spec/fixtures/mail_handler/fullname_of_sender_as_utf8_encoded.eml delete mode 100644 spec/fixtures/mail_handler/issue_update_with_multiple_quoted_reply_above.eml delete mode 100644 spec/fixtures/mail_handler/issue_update_with_quoted_reply_above.eml delete mode 100644 spec/fixtures/mail_handler/japanese_keywords_iso_2022_jp.eml delete mode 100644 spec/fixtures/mail_handler/message_reply.eml delete mode 100644 spec/fixtures/mail_handler/message_reply_by_subject.eml delete mode 100644 spec/fixtures/mail_handler/subject_as_iso-8859-1.eml delete mode 100644 spec/fixtures/mail_handler/ticket_by_empty_user.eml delete mode 100644 spec/fixtures/mail_handler/ticket_from_emission_address.eml delete mode 100644 spec/fixtures/mail_handler/ticket_html_only.eml delete mode 100644 spec/fixtures/mail_handler/ticket_on_given_project.eml delete mode 100644 spec/fixtures/mail_handler/ticket_reply.eml delete mode 100644 spec/fixtures/mail_handler/ticket_reply_by_message_id.eml delete mode 100644 spec/fixtures/mail_handler/ticket_reply_with_status.eml delete mode 100644 spec/fixtures/mail_handler/ticket_with_attachment.eml delete mode 100644 spec/fixtures/mail_handler/ticket_with_attributes.eml delete mode 100644 spec/fixtures/mail_handler/ticket_with_cc.eml delete mode 100644 spec/fixtures/mail_handler/ticket_with_custom_fields.eml delete mode 100644 spec/fixtures/mail_handler/ticket_with_invalid_attributes.eml delete mode 100644 spec/fixtures/mail_handler/ticket_with_localized_attributes.eml delete mode 100644 spec/fixtures/mail_handler/ticket_with_long_subject.eml delete mode 100644 spec/fixtures/mail_handler/ticket_with_spaces_between_attribute_and_separator.eml delete mode 100644 spec/fixtures/mail_handler/ticket_without_from_header.eml rename {spec => spec_legacy}/fixtures/diffs/partials.diff (100%) rename {spec => spec_legacy}/fixtures/diffs/subversion.diff (100%) diff --git a/spec/fixtures/files/060719210727_archive.zip b/spec/fixtures/files/060719210727_archive.zip deleted file mode 100644 index 5467885d4b28eedd531d78c32380ffd3e69eded0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 157 zcmWIWW@Zs#U|`^2Fv$%vtB#e4Q3moW^-3yAv`?PU31e8~(mLr% zmr(1LGjl>(xBO9Rz0@@4&k>OY35A}93<2JZOd<@pjRTs 'issues', :action => 'show', :id => @issue, :project_id => @project -+ redirect_to :controller => 'issues', :action => 'show', :id => @issue - return - end - end diff --git a/spec/fixtures/files/060719210727_changeset_utf8.diff b/spec/fixtures/files/060719210727_changeset_utf8.diff deleted file mode 100644 index 031336c8ab..0000000000 --- a/spec/fixtures/files/060719210727_changeset_utf8.diff +++ /dev/null @@ -1,13 +0,0 @@ -Index: trunk/app/controllers/issues_controller.rb -=================================================================== ---- trunk/app/controllers/issues_controller.rb (révision 1483) -+++ trunk/app/controllers/issues_controller.rb (révision 1484) -@@ -149,7 +149,7 @@ - attach_files(@issue, params[:attachments]) - flash[:notice] = 'Demande créée avec succès' - Mailer.deliver_issue_add(@issue) if Setting.notified_events.include?('issue_added') -- redirect_to :controller => 'issues', :action => 'show', :id => @issue, :project_id => @project -+ redirect_to :controller => 'issues', :action => 'show', :id => @issue - return - end - end diff --git a/spec/fixtures/files/060719210727_source.rb b/spec/fixtures/files/060719210727_source.rb deleted file mode 100644 index 7e50438146..0000000000 --- a/spec/fixtures/files/060719210727_source.rb +++ /dev/null @@ -1,39 +0,0 @@ -#-- encoding: UTF-8 -#-- copyright -# OpenProject is a project management system. -# Copyright (C) 2012-2015 the OpenProject Foundation (OPF) -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See doc/COPYRIGHT.rdoc for more details. -#++ - -# The Greeter class -class Greeter - def initialize(name) - @name = name.capitalize - end - - def salute - puts "Hello #{@name}!" - end -end diff --git a/spec/fixtures/mail_handler/apple_mail_with_attachment.eml b/spec/fixtures/mail_handler/apple_mail_with_attachment.eml deleted file mode 100644 index 3f54a6241b..0000000000 --- a/spec/fixtures/mail_handler/apple_mail_with_attachment.eml +++ /dev/null @@ -1,240 +0,0 @@ -From JSmith@somenet.foo Mon Jun 27 06:55:56 2011 -Return-Path: -X-Original-To: redmine@somenet.foo -Delivered-To: redmine@somenet.foo -From: John Smith -Mime-Version: 1.0 (Apple Message framework v1084) -Content-Type: multipart/alternative; boundary=Apple-Mail-3-163265085 -Subject: Test attaching images to tickets by HTML mail -Date: Mon, 27 Jun 2011 16:55:46 +0300 -To: redmine@somenet.foo -Message-Id: <7ABE3636-07E8-47C9-90A1-FCB1AA894DA1@somenet.foo> -X-Mailer: Apple Mail (2.1084) - - ---Apple-Mail-3-163265085 -Content-Transfer-Encoding: quoted-printable -Content-Type: text/plain; - charset=us-ascii - -Yet another test! - - ---Apple-Mail-3-163265085 -Content-Type: multipart/related; - type="text/html"; - boundary=Apple-Mail-4-163265085 - - ---Apple-Mail-4-163265085 -Content-Transfer-Encoding: quoted-printable -Content-Type: text/html; - charset=us-ascii - - -
= - ---Apple-Mail-4-163265085 -Content-Transfer-Encoding: base64 -Content-Disposition: inline; - filename=paella.jpg -Content-Type: image/jpg; - x-unix-mode=0644; - name="paella.jpg" -Content-Id: <1207F0B5-9F9D-4AB4-B547-AF9033E82111> - -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 -cbis+/WpUqUcMZKdF44n/9k= - ---Apple-Mail-4-163265085-- - ---Apple-Mail-3-163265085-- diff --git a/spec/fixtures/mail_handler/fullname_of_sender_as_utf8_encoded.eml b/spec/fixtures/mail_handler/fullname_of_sender_as_utf8_encoded.eml deleted file mode 100644 index ac14b44f9b..0000000000 --- a/spec/fixtures/mail_handler/fullname_of_sender_as_utf8_encoded.eml +++ /dev/null @@ -1,5 +0,0 @@ -From: =?utf-8?b?w4TDpCDDlsO2?= -Subject: foo -Content-Type: text/plain; charset=utf-8 - -testing user creation with quoted From-header diff --git a/spec/fixtures/mail_handler/issue_update_with_multiple_quoted_reply_above.eml b/spec/fixtures/mail_handler/issue_update_with_multiple_quoted_reply_above.eml deleted file mode 100644 index 988720200f..0000000000 --- a/spec/fixtures/mail_handler/issue_update_with_multiple_quoted_reply_above.eml +++ /dev/null @@ -1,48 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -In-Reply-To: -From: "John Smith" -To: -Subject: Re: update to issue 2 -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -An update to the issue by the sender. - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris --- Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - ->> > --- Reply above. Do not remove this line. --- ->> > ->> > Issue #6779 has been updated by Eric Davis. ->> > ->> > Subject changed from Projects with JSON to Project JSON API ->> > Status changed from New to Assigned ->> > Assignee set to Eric Davis ->> > Priority changed from Low to Normal ->> > Estimated time deleted (1.00) ->> > ->> > Looks like the JSON api for projects was missed. I'm going to be ->> > reviewing the existing APIs and trying to clean them up over the next ->> > few weeks. diff --git a/spec/fixtures/mail_handler/issue_update_with_quoted_reply_above.eml b/spec/fixtures/mail_handler/issue_update_with_quoted_reply_above.eml deleted file mode 100644 index b097b25c13..0000000000 --- a/spec/fixtures/mail_handler/issue_update_with_quoted_reply_above.eml +++ /dev/null @@ -1,48 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -In-Reply-To: -From: "John Smith" -To: -Subject: Re: update to issue 2 -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -An update to the issue by the sender. - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris --- Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - -> --- Reply above. Do not remove this line. --- -> -> Issue #6779 has been updated by Eric Davis. -> -> Subject changed from Projects with JSON to Project JSON API -> Status changed from New to Assigned -> Assignee set to Eric Davis -> Priority changed from Low to Normal -> Estimated time deleted (1.00) -> -> Looks like the JSON api for projects was missed. I'm going to be -> reviewing the existing APIs and trying to clean them up over the next -> few weeks. diff --git a/spec/fixtures/mail_handler/japanese_keywords_iso_2022_jp.eml b/spec/fixtures/mail_handler/japanese_keywords_iso_2022_jp.eml deleted file mode 100644 index 84bb265652..0000000000 --- a/spec/fixtures/mail_handler/japanese_keywords_iso_2022_jp.eml +++ /dev/null @@ -1,60 +0,0 @@ -Message-ID: <001101ca9762$293d68c0$0600a8c0@osiris> -From: "jsmith" -To: -Subject: Japanese Character pattern matching -Date: Sun, 17 Jan 2010 11:45:18 +0100 -MIME-Version: 1.0 -Content-Type: multipart/alternative; - boundary="----=_NextPart_000_000E_01CA976A.8AF5E9E0" -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_000E_01CA976A.8AF5E9E0 -Content-Type: text/plain; - charset="iso-2022-jp" -Content-Transfer-Encoding: quoted-printable - -It should be noted that I am receiving emails using pop and the patch in = -Issue #2420 but I don't think the problem lies with this. - -When I try and send emails to the redmine server with Japanese = -characters in them it appears to work apart from the pattern matching. - -For example if I send an email with the following keywords. - -Type: =1B$B3+H/=1B(B - -------=_NextPart_000_000E_01CA976A.8AF5E9E0 -Content-Type: text/html; - charset="iso-2022-jp" -Content-Transfer-Encoding: quoted-printable - - - - - - - - -
-

It should be noted that I am receiving emails using pop and the patch = -in=20 -Issue #2420 but I don't think = -the=20 -problem lies with this.

-

When I try and send emails to the redmine server with Japanese = -characters in=20 -them it appears to work apart from the pattern matching.

-

For example if I send an email with the following keywords.

-

Type: = -=1B$B3+H/=1B(B

- -------=_NextPart_000_000E_01CA976A.8AF5E9E0-- - diff --git a/spec/fixtures/mail_handler/message_reply.eml b/spec/fixtures/mail_handler/message_reply.eml deleted file mode 100644 index e57d2b262a..0000000000 --- a/spec/fixtures/mail_handler/message_reply.eml +++ /dev/null @@ -1,15 +0,0 @@ -Message-ID: <4974C93E.3070005@somenet.foo> -Date: Mon, 19 Jan 2009 19:41:02 +0100 -From: "John Smith" -User-Agent: Thunderbird 2.0.0.19 (Windows/20081209) -MIME-Version: 1.0 -To: openproject@somenet.foo -Subject: Reply via email -References: -In-Reply-To: -Content-Type: text/plain; charset=UTF-8; format=flowed -Content-Transfer-Encoding: 7bit - -This is a reply to a forum message. - - diff --git a/spec/fixtures/mail_handler/message_reply_by_subject.eml b/spec/fixtures/mail_handler/message_reply_by_subject.eml deleted file mode 100644 index 985aaa0e45..0000000000 --- a/spec/fixtures/mail_handler/message_reply_by_subject.eml +++ /dev/null @@ -1,13 +0,0 @@ -Message-ID: <4974C93E.3070005@somenet.foo> -Date: Mon, 19 Jan 2009 19:41:02 +0100 -From: "John Smith" -User-Agent: Thunderbird 2.0.0.19 (Windows/20081209) -MIME-Version: 1.0 -To: redmine@somenet.foo -Subject: Re: [eCookbook - Help board - msg2] Reply to the first post -Content-Type: text/plain; charset=UTF-8; format=flowed -Content-Transfer-Encoding: 7bit - -This is a reply to a forum message. - - diff --git a/spec/fixtures/mail_handler/subject_as_iso-8859-1.eml b/spec/fixtures/mail_handler/subject_as_iso-8859-1.eml deleted file mode 100644 index 45f725bdf1..0000000000 --- a/spec/fixtures/mail_handler/subject_as_iso-8859-1.eml +++ /dev/null @@ -1,11 +0,0 @@ -Content-Type: application/ms-tnef; name="winmail.dat" -Content-Transfer-Encoding: binary -From: John Smith -To: "redmine@somenet.foo" -Subject: =?iso-8859-1?Q?Testmail_from_Webmail:_=E4_=F6_=FC...?= -Date: Fri, 1 Jun 2012 14:39:38 +0200 -Message-ID: <87C31D42249DD0489D1A1444E3232DD7019D6183@foo.bar> -Accept-Language: de-CH, en-US -Content-Language: de-CH - -Fixture diff --git a/spec/fixtures/mail_handler/ticket_by_empty_user.eml b/spec/fixtures/mail_handler/ticket_by_empty_user.eml deleted file mode 100644 index 850f05db1a..0000000000 --- a/spec/fixtures/mail_handler/ticket_by_empty_user.eml +++ /dev/null @@ -1,17 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -To: -Subject: Ticket by unknown user -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit - -This is a ticket submitted by an unknown user. - diff --git a/spec/fixtures/mail_handler/ticket_from_emission_address.eml b/spec/fixtures/mail_handler/ticket_from_emission_address.eml deleted file mode 100644 index 806aa644ad..0000000000 --- a/spec/fixtures/mail_handler/ticket_from_emission_address.eml +++ /dev/null @@ -1,19 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -From: "John Doe" -To: -Subject: Ticket with the ChiliProject emission address -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit - -This is a ticket submitted with the OpenProject emission address. -It should be ignored. - diff --git a/spec/fixtures/mail_handler/ticket_html_only.eml b/spec/fixtures/mail_handler/ticket_html_only.eml deleted file mode 100644 index 511e5f1076..0000000000 --- a/spec/fixtures/mail_handler/ticket_html_only.eml +++ /dev/null @@ -1,22 +0,0 @@ -x-sender: -x-receiver: -Received: from [127.0.0.1] ([127.0.0.1]) by somenet.foo with Quick 'n Easy Mail Server SMTP (1.0.0.0); - Sun, 14 Dec 2008 16:18:06 GMT -Message-ID: <494531B9.1070709@somenet.foo> -Date: Sun, 14 Dec 2008 17:18:01 +0100 -From: "John Smith" -User-Agent: Thunderbird 2.0.0.18 (Windows/20081105) -MIME-Version: 1.0 -To: redmine@somenet.foo -Subject: HTML email -Content-Type: text/html; charset=ISO-8859-1 -Content-Transfer-Encoding: 7bit - - - - - - -This is a html-only email.
- - diff --git a/spec/fixtures/mail_handler/ticket_on_given_project.eml b/spec/fixtures/mail_handler/ticket_on_given_project.eml deleted file mode 100644 index 1cf91d6e21..0000000000 --- a/spec/fixtures/mail_handler/ticket_on_given_project.eml +++ /dev/null @@ -1,60 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -From: "John Smith" -To: -Subject: New ticket on a given project -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris --- Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - ---- This line starts with a delimiter and should not be stripped - -This paragraph is before delimiters. - -BREAK - -This paragraph is between delimiters. - ---- - -This paragraph is after the delimiter so it shouldn't appear. - -Nulla et nunc. Duis pede. Donec et ipsum. Nam ut dui tincidunt neque -sollicitudin iaculis. Duis vitae dolor. Vestibulum eget massa. Sed lorem. -Nullam volutpat cursus erat. Cras felis dolor, lacinia quis, rutrum et, -dictum et, ligula. Sed erat nibh, gravida in, accumsan non, placerat sed, -massa. Sed sodales, ante fermentum ultricies sollicitudin, massa leo -pulvinar dui, a gravida orci mi eget odio. Nunc a lacus. - -Project: onlinestore -Status: Resolved -due date: 2010-12-31 -Start Date:2010-01-01 -Assigned to: John Smith -fixed version: alpha -estimated hours: 2.5 -done ratio: 30 - diff --git a/spec/fixtures/mail_handler/ticket_reply.eml b/spec/fixtures/mail_handler/ticket_reply.eml deleted file mode 100644 index bb8ec0ee9b..0000000000 --- a/spec/fixtures/mail_handler/ticket_reply.eml +++ /dev/null @@ -1,74 +0,0 @@ -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> -In-Reply-To: -From: "John Smith" -To: -References: <485d0ad366c88_d7014663a025f@osiris.tmail> -Subject: Re: 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/spec/fixtures/mail_handler/ticket_reply_by_message_id.eml b/spec/fixtures/mail_handler/ticket_reply_by_message_id.eml deleted file mode 100644 index 8b97208791..0000000000 --- a/spec/fixtures/mail_handler/ticket_reply_by_message_id.eml +++ /dev/null @@ -1,74 +0,0 @@ -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> -In-Reply-To: -From: "John Smith" -To: -References: <485d0ad366c88_d7014663a025f@osiris.tmail> -Subject: Re: 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/spec/fixtures/mail_handler/ticket_reply_with_status.eml b/spec/fixtures/mail_handler/ticket_reply_with_status.eml deleted file mode 100644 index e1e40f5367..0000000000 --- a/spec/fixtures/mail_handler/ticket_reply_with_status.eml +++ /dev/null @@ -1,80 +0,0 @@ -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: [Cookbook - Feature #2] (New) 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 - -Status: Resolved -due date: 2010-12-31 -Start Date:2010-01-01 -Assigned to: jsmith@somenet.foo -float field: 52.6 - -------=_NextPart_000_0067_01C8D3CE.711F9CC0 -Content-Type: text/html; - charset="utf-8" -Content-Transfer-Encoding: quoted-printable - -=EF=BB=BF - - - - - - -
This is=20 -reply Status: Resolved
- -------=_NextPart_000_0067_01C8D3CE.711F9CC0-- - diff --git a/spec/fixtures/mail_handler/ticket_with_attachment.eml b/spec/fixtures/mail_handler/ticket_with_attachment.eml deleted file mode 100644 index 230823f966..0000000000 --- a/spec/fixtures/mail_handler/ticket_with_attachment.eml +++ /dev/null @@ -1,248 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sat, 21 Jun 2008 15:53:25 +0200 -Message-ID: <002301c8d3a6$2cdf6950$0a00a8c0@osiris> -From: "John Smith" -To: -Subject: Ticket created by email with attachment -Date: Sat, 21 Jun 2008 15:53:25 +0200 -MIME-Version: 1.0 -Content-Type: multipart/mixed; - boundary="----=_NextPart_000_001F_01C8D3B6.F05C5270" -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_001F_01C8D3B6.F05C5270 -Content-Type: multipart/alternative; - boundary="----=_NextPart_001_0020_01C8D3B6.F05C5270" - - -------=_NextPart_001_0020_01C8D3B6.F05C5270 -Content-Type: text/plain; - charset="iso-8859-1" -Content-Transfer-Encoding: quoted-printable - -This is a new ticket with attachments -------=_NextPart_001_0020_01C8D3B6.F05C5270 -Content-Type: text/html; - charset="iso-8859-1" -Content-Transfer-Encoding: quoted-printable - - - - - - - - -
This is  a new ticket with=20 -attachments
- -------=_NextPart_001_0020_01C8D3B6.F05C5270-- - -------=_NextPart_000_001F_01C8D3B6.F05C5270 -Content-Type: image/jpeg; - name="Paella.jpg" -Content-Transfer-Encoding: base64 -Content-Disposition: attachment; - filename="Paella.jpg" - -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 -cbis+/WpUqUcMZKdF44n/9k= - -------=_NextPart_000_001F_01C8D3B6.F05C5270-- - diff --git a/spec/fixtures/mail_handler/ticket_with_attributes.eml b/spec/fixtures/mail_handler/ticket_with_attributes.eml deleted file mode 100644 index 22ec6361bc..0000000000 --- a/spec/fixtures/mail_handler/ticket_with_attributes.eml +++ /dev/null @@ -1,43 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -From: "John Smith" -To: -Subject: New ticket on a given project -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris. Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - -Nulla et nunc. Duis pede. Donec et ipsum. Nam ut dui tincidunt neque -sollicitudin iaculis. Duis vitae dolor. Vestibulum eget massa. Sed lorem. -Nullam volutpat cursus erat. Cras felis dolor, lacinia quis, rutrum et, -dictum et, ligula. Sed erat nibh, gravida in, accumsan non, placerat sed, -massa. Sed sodales, ante fermentum ultricies sollicitudin, massa leo -pulvinar dui, a gravida orci mi eget odio. Nunc a lacus. - -Project: onlinestore -Type: Feature request -category: Stock management -priority: Urgent diff --git a/spec/fixtures/mail_handler/ticket_with_cc.eml b/spec/fixtures/mail_handler/ticket_with_cc.eml deleted file mode 100644 index 419e80c7d7..0000000000 --- a/spec/fixtures/mail_handler/ticket_with_cc.eml +++ /dev/null @@ -1,40 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -From: "John Smith" -To: -Cc: -Subject: New ticket on a given project -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris. Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - -Nulla et nunc. Duis pede. Donec et ipsum. Nam ut dui tincidunt neque -sollicitudin iaculis. Duis vitae dolor. Vestibulum eget massa. Sed lorem. -Nullam volutpat cursus erat. Cras felis dolor, lacinia quis, rutrum et, -dictum et, ligula. Sed erat nibh, gravida in, accumsan non, placerat sed, -massa. Sed sodales, ante fermentum ultricies sollicitudin, massa leo -pulvinar dui, a gravida orci mi eget odio. Nunc a lacus. - diff --git a/spec/fixtures/mail_handler/ticket_with_custom_fields.eml b/spec/fixtures/mail_handler/ticket_with_custom_fields.eml deleted file mode 100644 index df2e7a48db..0000000000 --- a/spec/fixtures/mail_handler/ticket_with_custom_fields.eml +++ /dev/null @@ -1,41 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -From: "John Smith" -To: -Subject: New ticket with custom field values -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris. Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - -Nulla et nunc. Duis pede. Donec et ipsum. Nam ut dui tincidunt neque -sollicitudin iaculis. Duis vitae dolor. Vestibulum eget massa. Sed lorem. -Nullam volutpat cursus erat. Cras felis dolor, lacinia quis, rutrum et, -dictum et, ligula. Sed erat nibh, gravida in, accumsan non, placerat sed, -massa. Sed sodales, ante fermentum ultricies sollicitudin, massa leo -pulvinar dui, a gravida orci mi eget odio. Nunc a lacus. - -category: Stock management -searchable field: Value for a custom field diff --git a/spec/fixtures/mail_handler/ticket_with_invalid_attributes.eml b/spec/fixtures/mail_handler/ticket_with_invalid_attributes.eml deleted file mode 100644 index f762a79761..0000000000 --- a/spec/fixtures/mail_handler/ticket_with_invalid_attributes.eml +++ /dev/null @@ -1,47 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -From: "John Smith" -To: -Subject: New ticket on a given project -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris. Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - -Nulla et nunc. Duis pede. Donec et ipsum. Nam ut dui tincidunt neque -sollicitudin iaculis. Duis vitae dolor. Vestibulum eget massa. Sed lorem. -Nullam volutpat cursus erat. Cras felis dolor, lacinia quis, rutrum et, -dictum et, ligula. Sed erat nibh, gravida in, accumsan non, placerat sed, -massa. Sed sodales, ante fermentum ultricies sollicitudin, massa leo -pulvinar dui, a gravida orci mi eget odio. Nunc a lacus. - -Project: onlinestore -Type: Feature request -category: Stock management -assigned to: miscuser9@foo.bar -priority: foo -done ratio: x -start date: some day -due date: never diff --git a/spec/fixtures/mail_handler/ticket_with_localized_attributes.eml b/spec/fixtures/mail_handler/ticket_with_localized_attributes.eml deleted file mode 100644 index 56d539719e..0000000000 --- a/spec/fixtures/mail_handler/ticket_with_localized_attributes.eml +++ /dev/null @@ -1,43 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -From: "John Smith" -To: -Subject: New ticket on a given project -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris. Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - -Nulla et nunc. Duis pede. Donec et ipsum. Nam ut dui tincidunt neque -sollicitudin iaculis. Duis vitae dolor. Vestibulum eget massa. Sed lorem. -Nullam volutpat cursus erat. Cras felis dolor, lacinia quis, rutrum et, -dictum et, ligula. Sed erat nibh, gravida in, accumsan non, placerat sed, -massa. Sed sodales, ante fermentum ultricies sollicitudin, massa leo -pulvinar dui, a gravida orci mi eget odio. Nunc a lacus. - -Projekt: onlinestore -Type: Feature request -Kategorie: Stock management -Priorität: Urgent diff --git a/spec/fixtures/mail_handler/ticket_with_long_subject.eml b/spec/fixtures/mail_handler/ticket_with_long_subject.eml deleted file mode 100644 index 7912c19675..0000000000 --- a/spec/fixtures/mail_handler/ticket_with_long_subject.eml +++ /dev/null @@ -1,57 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -From: "John Smith" -To: -Subject: New ticket on a given project with a very long subject line which exceeds 255 chars and should not be ignored but chopped off. And if the subject line is still not long enough, we just add more text. And more text. Wow, this is really annoying. Especially, if you have nothing to say... -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris --- Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - ---- This line starts with a delimiter and should not be stripped - -This paragraph is before delimiters. - -BREAK - -This paragraph is between delimiters. - ---- - -This paragraph is after the delimiter so it shouldn't appear. - -Nulla et nunc. Duis pede. Donec et ipsum. Nam ut dui tincidunt neque -sollicitudin iaculis. Duis vitae dolor. Vestibulum eget massa. Sed lorem. -Nullam volutpat cursus erat. Cras felis dolor, lacinia quis, rutrum et, -dictum et, ligula. Sed erat nibh, gravida in, accumsan non, placerat sed, -massa. Sed sodales, ante fermentum ultricies sollicitudin, massa leo -pulvinar dui, a gravida orci mi eget odio. Nunc a lacus. - -Project: onlinestore -Status: Resolved -due date: 2010-12-31 -Start Date:2010-01-01 -Assigned to: John Smith - diff --git a/spec/fixtures/mail_handler/ticket_with_spaces_between_attribute_and_separator.eml b/spec/fixtures/mail_handler/ticket_with_spaces_between_attribute_and_separator.eml deleted file mode 100644 index ba3dcfa89d..0000000000 --- a/spec/fixtures/mail_handler/ticket_with_spaces_between_attribute_and_separator.eml +++ /dev/null @@ -1,43 +0,0 @@ -Return-Path: -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -From: "John Smith" -To: -Subject: New ticket on a given project -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris. Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - -Nulla et nunc. Duis pede. Donec et ipsum. Nam ut dui tincidunt neque -sollicitudin iaculis. Duis vitae dolor. Vestibulum eget massa. Sed lorem. -Nullam volutpat cursus erat. Cras felis dolor, lacinia quis, rutrum et, -dictum et, ligula. Sed erat nibh, gravida in, accumsan non, placerat sed, -massa. Sed sodales, ante fermentum ultricies sollicitudin, massa leo -pulvinar dui, a gravida orci mi eget odio. Nunc a lacus. - -Project : onlinestore -Type: Feature request -category : Stock management -priority: Urgent diff --git a/spec/fixtures/mail_handler/ticket_without_from_header.eml b/spec/fixtures/mail_handler/ticket_without_from_header.eml deleted file mode 100644 index ac944ff55d..0000000000 --- a/spec/fixtures/mail_handler/ticket_without_from_header.eml +++ /dev/null @@ -1,40 +0,0 @@ -Received: from osiris ([127.0.0.1]) - by OSIRIS - with hMailServer ; Sun, 22 Jun 2008 12:28:07 +0200 -Message-ID: <000501c8d452$a95cd7e0$0a00a8c0@osiris> -To: -Subject: New ticket on a given project -Date: Sun, 22 Jun 2008 12:28:07 +0200 -MIME-Version: 1.0 -Content-Type: text/plain; - format=flowed; - charset="iso-8859-1"; - reply-type=original -Content-Transfer-Encoding: 7bit -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 - -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas imperdiet -turpis et odio. Integer eget pede vel dolor euismod varius. Phasellus -blandit eleifend augue. Nulla facilisi. Duis id diam. Class aptent taciti -sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In -in urna sed tellus aliquet lobortis. Morbi scelerisque tortor in dolor. Cras -sagittis odio eu lacus. Aliquam sem tortor, consequat sit amet, vestibulum -id, iaculis at, lectus. Fusce tortor libero, congue ut, euismod nec, luctus -eget, eros. Pellentesque tortor enim, feugiat in, dignissim eget, tristique -sed, mauris. Pellentesque habitant morbi tristique senectus et netus et -malesuada fames ac turpis egestas. Quisque sit amet libero. In hac habitasse -platea dictumst. - -Nulla et nunc. Duis pede. Donec et ipsum. Nam ut dui tincidunt neque -sollicitudin iaculis. Duis vitae dolor. Vestibulum eget massa. Sed lorem. -Nullam volutpat cursus erat. Cras felis dolor, lacinia quis, rutrum et, -dictum et, ligula. Sed erat nibh, gravida in, accumsan non, placerat sed, -massa. Sed sodales, ante fermentum ultricies sollicitudin, massa leo -pulvinar dui, a gravida orci mi eget odio. Nunc a lacus. - -Project: onlinestore -Status: Resolved - diff --git a/spec/models/mail_handler_spec.rb b/spec/models/mail_handler_spec.rb index ca715f05c3..95badc5904 100644 --- a/spec/models/mail_handler_spec.rb +++ b/spec/models/mail_handler_spec.rb @@ -26,44 +26,15 @@ # See doc/COPYRIGHT.rdoc for more details. #++ -require File.dirname(__FILE__) + '/../spec_helper' - -FIXTURES_PATH = File.dirname(__FILE__) + '/../fixtures/mail_handler' +require 'spec_helper' DEVELOPER_PERMISSIONS = [:view_messages, :delete_own_messages, :edit_own_messages, :add_project, :edit_project, :select_project_modules, :manage_members, :manage_versions, :manage_categories, :view_work_packages, :add_work_packages, :edit_work_packages, :manage_work_package_relations, :manage_subtasks, :add_work_package_notes, :move_work_packages, :delete_work_packages, :view_work_package_watchers, :add_work_package_watchers, :delete_work_package_watchers, :manage_public_queries, :save_queries, :view_gantt, :view_calendar, :log_time, :view_time_entries, :edit_time_entries, :delete_time_entries, :manage_news, :comment_news, :view_documents, :manage_documents, :view_wiki_pages, :export_wiki_pages, :view_wiki_edits, :edit_wiki_pages, :delete_wiki_pages_attachments, :protect_wiki_pages, :delete_wiki_pages, :rename_wiki_pages, :add_messages, :edit_messages, :delete_messages, :manage_boards, :view_files, :manage_files, :browse_repository, :manage_repository, :view_changesets, :manage_project_activities, :export_work_packages] describe MailHandler, type: :model do - # TODO: (a big one) the test setup to get a general project one can work with should be improved a lot - # let(:user) { FactoryGirl.build(:user, :mail => "JSmith@somenet.foo", :mail_notification => "all", :lastname => "Smith", :firstname => "John", :login => "jsmith") } - # let(:user2) { FactoryGirl.build(:user, :mail => "dlopper@somenet.foo", :mail_notification => "all", :lastname => "Lopper", :firstname => "Dave", :login => "dlopper") } let(:anno_user) { User.anonymous } let(:project) { FactoryGirl.create(:valid_project, identifier: 'onlinestore', name: 'OnlineStore', is_public: false) } - # let(:role) { FactoryGirl.create(:role, :permissions => DEVELOPER_PERMISSIONS, :name => "Developer") } - - # let(:member) { FactoryGirl.build(:member, :project => project, - # :roles => [role], - # :principal => user) } - # let(:member2) { FactoryGirl.build(:member, :project => project, - # :roles => [role], - # :principal => user2) } - # let(:status_open) {project.types.third.statuses.first} - # let(:status_resolved) {project.types.third.statuses.second} - # let(:workflow) {project.types.third.workflows.first} - # let(:type_support) {project.types.second} - # let(:type_feature) {project.types.third} let(:priority_low) { FactoryGirl.create(:priority_low, is_default: true) } - # let(:priority_high) {FactoryGirl.create(:priority_high)} - # let(:priority_urgent) {FactoryGirl.create(:priority_urgent)} - # let(:version_a) {FactoryGirl.create(:version, :name => 'alpha', :description => "Private Alpha", :project => project)} - # let(:version_b) {FactoryGirl.create(:version, :name => 'beta', :description => "Private beta", :project => project)} - # let(:cat_stock_man) {FactoryGirl.create(:issue_category, :name => "Stock management", :assigned_to => nil , :project => project)} - # let(:existing_work_package) {FactoryGirl.create(:work_package, :project => project, :id => 2,:type => type_support, :author => user, :subject => "Add ingredients categories", :description => "Ingredients of the recipe should be classified by categories")} - # let(:project_board) {FactoryGirl.create(:board, :project => project)} - # let(:message_1) {FactoryGirl.create(:message, :id =>1, :subject => "First post", :content => "This is the very first post\n\ in the forum",:author_id => user.id, :parent_id => nil, :board => project_board)} - # let(:message_2) {FactoryGirl.create(:message, :id =>2, :subject => "First reply", :content => "Reply to the first post",:author_id => user2.id, :parent_id => 1, :board => project_board)} - # let(:message_3) {FactoryGirl.create(:message, :id =>3, :subject => "RE: First post", :content => "An other reply",:author_id => user.id, :parent_id => 1, :board => project_board)} - # let(:a_custom_field) {FactoryGirl.create(:work_package_custom_field)} before do allow(Setting).to receive(:notified_events).and_return(Redmine::Notifiable.all.map(&:name)) @@ -71,212 +42,12 @@ describe MailHandler, type: :model do # there is a default work package priority to save any work packages priority_low anno_user - # TODO: these a inherently part of the test setup - # [user, user2, member, member2, priority_low, priority_high, priority_urgent, version_a, version_b, anno_user, message_1, message_2, message_3, a_custom_field].map(&:save!) - # status_open.update_attribute :name, "Open" - # status_resolved.update_attribute :name, "Resolved" - # workflow.role = role - # workflow.save! - # type_support.update_attribute :name, "Support" - # type_feature.update_attribute :name, "Feature" - # cat_stock_man.save - # project.issue_categories << cat_stock_man - # project.save! - # existing_work_package.priority = priority_low - # existing_work_package.save! end after do User.current = nil end - # it "should add an work_package" do - # ActionMailer::Base.deliveries.clear - # work_package = submit_email('ticket_on_given_project.eml', {:allow_override => ['fixed_version']}) - # work_package_created(work_package) - # work_package.project.should == project - # work_package.project.types.first.should == work_package.type - # work_package.subject.should == "New ticket on a given project" - # work_package.author.should == user - # work_package.status.should == status_resolved - # work_package.description.should match(/^Lorem ipsum dolor sit amet, consectetuer adipiscing elit./) - # work_package.start_date.to_s.should == '2010-01-01' - # work_package.due_date.to_s.should == '2010-12-31' - # work_package.assigned_to.should == user - # work_package.fixed_version.should == version_a - # work_package.estimated_hours.should == 2.5 - # work_package.done_ratio.should == 30 - # work_package.root_id.should == work_package.id - # # keywords should be removed from the email body - # work_package.description.should_not match(/^Project:/i) - # work_package.description.should_not match(/^Status:/i) - # work_package.description.should_not match(/^Start Date:/i) - # # Email notification should be sent - # mail = ActionMailer::Base.deliveries.last - # mail.should_not be_nil - # mail.subject.should include('New ticket on a given project') - # end - - # it "should add an work_package with default type" do - # work_package = submit_email('ticket_on_given_project.eml', :work_package => {'type' => 'Support'}) - # work_package_created(work_package) - # work_package.type.name.should == type_support.name - # end - - # it "should add an work_package with status" do - # work_package = submit_email('ticket_on_given_project.eml') - # work_package_created(work_package) - # work_package.project.should == project - # work_package.status.should == status_resolved - # end - - # context "fixed version" do - # it "should add an work_package without version if no version and no fixed version given" do - # work_package = submit_email('ticket_on_given_project_without_version.eml') - # work_package_created(work_package) - # work_package.project.should == project - # work_package.fixed_version.should == nil - # end - - # it "should add an work_package with version if no version given but fixed version present" do - # work_package = submit_email('ticket_on_given_project_without_version.eml', {:work_package => {'fixed_version' => version_a.name}}) - # work_package_created(work_package) - # work_package.project.should == project - # work_package.fixed_version.should == version_a - # end - - # it "should add an work_package with fixed version if different version given but not allowed to override" do - # work_package = submit_email('ticket_on_given_project_with_different_version_then_fixed.eml', {:work_package => {'fixed_version' => version_a.name}}) - # work_package_created(work_package) - # work_package.project.should == project - # work_package.fixed_version.should == version_a - # end - - # it "should add an work_package with given version if fixed version present but allowed to override" do - # work_package = submit_email('ticket_on_given_project_with_different_version_then_fixed.eml', {:work_package => {'fixed_version' => version_a.name}, :allow_override => ['fixed_version']}) - # work_package_created(work_package) - # work_package.project.should == project - # work_package.fixed_version.should == version_b - # end - # end - - # it "should add an work_package with attributes override" do - # work_package = submit_email('ticket_with_attributes.eml', {:allow_override => 'type,category,priority'}) - # work_package_created(work_package) - # work_package.subject.should == "New ticket on a given project" - # work_package.author.should == user - # work_package.project.should == project - # work_package.type.to_s.should == type_feature.name - # work_package.category.to_s.should == cat_stock_man.name - # work_package.priority.to_s.should == priority_urgent.name - # work_package.description.should match(/^Lorem ipsum dolor sit amet, consectetuer adipiscing elit./) - # end - - # it "should add an work_package with partial attributes override" do - # work_package = submit_email('ticket_with_attributes.eml', {:work_package => {'priority' => 'High'}, :allow_override => ['type']}) - # work_package_created(work_package) - # work_package.subject.should == "New ticket on a given project" - # work_package.author.should == user - # work_package.project.should == project - # work_package.type.to_s.should == type_feature.name - # work_package.category.should be_nil - # work_package.priority.to_s.should == priority_high.name - # work_package.description.should match(/^Lorem ipsum dolor sit amet, consectetuer adipiscing elit./) - # end - - # it "should add an work_package with spaces between attribute and separator" do - # work_package = submit_email('ticket_with_spaces_between_attribute_and_separator.eml', {:allow_override => 'type,category,priority'}) - # work_package_created(work_package) - # work_package.subject.should == "New ticket on a given project" - # work_package.author.should == user - # work_package.project.should == project - # work_package.type.to_s.should == type_feature.name - # work_package.category.to_s.should == cat_stock_man.name - # work_package.priority.to_s.should == priority_urgent.name - # work_package.description.should match(/^Lorem ipsum dolor sit amet, consectetuer adipiscing elit./) - # end - - # it "should add an work_package with attachment to specific project" do - # work_package = submit_email('ticket_with_attachment.eml', {:work_package => {'project' => 'onlinestore'}}) - # work_package_created(work_package) - # work_package.subject.should == "Ticket created by email with attachment" - # work_package.author.should == user - # work_package.project.should == project - # work_package.description.should == "This is a new ticket with attachments" - # # Attachment properties - # work_package.attachments.first.filename.should == 'Paella.jpg' - # work_package.attachments.first.content_type.should == 'image/jpeg' - # work_package.attachments.first.filesize.should == 10790 - # end - - # it "should add an work_package with custom_fields" do - # pending - # work_package = submit_email('ticket_with_custom_fields.eml', {:work_package => {'project' => 'onlinestore'}}) - # work_package_created(work_package) - # work_package.subject.should == "New ticket with custom field values" - # work_package.custom_value_for(CustomField.find_by(name: 'Searchable field')).value.should == 'Value for a custom field' - # work_package.description.should_not match(/^searchable field:/i) - # end - - # it "should add an work_package with cc" do - # work_package = submit_email('ticket_with_cc.eml', {:work_package => {'project' => 'onlinestore'}}) - # work_package_created(work_package) - # work_package.subject.should == "New ticket on a given project" - # work_package.watched_by?(user2).should be_true - # work_package.watcher_user_ids.size.should == 1 - # end - - # it "should not add an work_package if a unknow user sends a mail on public project" do - # project.update_attribute :is_public, true - # lambda do - # submit_email('ticket_by_unknown_user.eml', {:work_package => {'project' => 'onlinestore'}}).should be_false - # end.should_not change(User, :count) - # end - - # it "should add an work_package from anonymous user on public project" do - # project.update_attribute :is_public, true - # Role.anonymous.update_attribute :permissions, [:add_work_packages] - # lambda do - # work_package = submit_email('ticket_by_unknown_user.eml', {:work_package => {'project' => 'onlinestore'}, :unknown_user => 'accept'}) - # work_package_created(work_package) - # work_package.author.anonymous?.should be_true - # end.should_not change(User, :count) - # end - - # it "should add an work_package from anonymous user with no from address on public project" do - # project.update_attribute :is_public, true - # Role.anonymous.update_attribute :permissions, [:add_work_packages] - # lambda do - # work_package = submit_email('ticket_by_empty_user.eml', {:work_package => {'project' => 'onlinestore'}, :unknown_user => 'accept'}) - # work_package_created(work_package) - # work_package.author.anonymous?.should be_true - # end.should_not change(User, :count) - # end - - # it "should not add an work_package from anonymous user on private project" do - # project.is_public?.should be_false - # Role.anonymous.update_attribute :permissions, [:add_work_packages] - # lambda do - # lambda do - # submit_email('ticket_by_unknown_user.eml', {:work_package => {'project' => 'onlinestore'}, :unknown_user => 'accept'}).should be_false - # end.should_not change(WorkPackage, :count) - # end.should_not change(User, :count) - # end - - # it "should add an work_package from anonymous user on private project with no_permission_check" do - # project.is_public?.should be_false - # lambda do - # lambda do - # work_package = submit_email('ticket_by_unknown_user.eml', {:work_package => {'project' => 'onlinestore'}, :no_permission_check => '1', :unknown_user => 'accept'}) - # work_package_created(work_package) - # work_package.author.anonymous?.should be_true - # work_package.root_id.should == work_package.id - # work_package.project.is_public?.should be_false - # work_package.leaf?.should be_true - # end.should change(WorkPackage, :count).by(1) - # end.should_not change(User, :count) - # end - it 'should add a work_package by create user on public project' do allow(Setting).to receive(:default_language).and_return('en') Role.non_member.update_attribute :permissions, [:add_work_packages] @@ -303,220 +74,10 @@ describe MailHandler, type: :model do }.to change(User, :count).by(1) end - # it "should not add an work_package if from header is missing" do - # Role.anonymous.update_attribute :permissions, [:add_work_packages] - # submit_email('ticket_without_from_header.eml').should be_false - # end - - # it "should add an work_package with invalid attributes" do - # work_package = submit_email('ticket_with_invalid_attributes.eml', {:allow_override => 'type,category,priority'}) - # work_package_created(work_package) - # work_package.assigned_to.should be_nil - # work_package.start_date.should be_nil - # work_package.due_date.should be_nil - # work_package.done_ratio.should == 0 - # work_package.priority.to_s.should == priority_low.name - # work_package.description.should match(/^Lorem ipsum dolor sit amet, consectetuer adipiscing elit./) - # end - - # it "should add an work_package with localized attributes" do - # pending - # Setting.available_languages = [:en, :fr] - # user.update_attribute :language, 'fr' - # work_package = submit_email('ticket_with_localized_attributes.eml', {:allow_override => 'type,category,priority'}) - # work_package_created(work_package) - # work_package.subject.should == "New ticket on a given project" - # work_package.author.should == user - # work_package.project.should == project - # work_package.type.to_s.should == type_feature.name - # work_package.category.to_s.should == cat_stock_man.name - # work_package.priority.to_s.should == priority_urgent.name - # work_package.description.should match(/^Lorem ipsum dolor sit amet, consectetuer adipiscing elit./) - # end - - # it "should add an work_package with japanese_keywords" do - # pending - # type_j = type.create!(:name => '開発') - # project.types << type_j - # work_package = submit_email('japanese_keywords_iso_2022_jp.eml', {:allow_override => 'type'}) - # work_package_created(work_package) - # work_package.type.should == type_j - # end - - # it "should ignore emails from emission address" do - # Role.anonymous.update_attribute :permissions, [:add_work_packages] - # lambda do - # submit_email('ticket_from_emission_address.eml', {:work_package => {'project' => 'onlinestore'}, :unknown_user => 'create'}).should be_false - # end.should_not change(User, :count) - # end - - # it "should send email notification if work_package added" do - # Setting.notified_events = ['work_package_added'] - # ActionMailer::Base.deliveries.clear - # lambda do - # work_package = submit_email('ticket_on_given_project.eml') - # work_package_created(work_package) - # end.should change(ActionMailer::Base.deliveries, :size) - # end - - # it "should add a work_package note" do - # journal = submit_email('ticket_reply.eml') - # journal.is_a?(Journal).should be_true - # journal.user.should == user - # journal.notes.should match(/This is reply/) - # journal.issue.type.name.should == type_support.name - # end - - # it "should update work_package (Journal) with reply by message_id" do - # pending - # journal = submit_email('ticket_reply_by_message_id.eml') - # journal.is_a?(WorkPackageJournal).should be_true - # journal.user.should == user - # journal.journaled.should == existing_work_package - # journal.notes.should match(/This is reply/) - # journal.issue.type.name.should == type_feature.name - # end - - # it "should change work_package attributes by adding an note" do - # journal = submit_email('ticket_reply_with_status.eml') - # journal.is_a?(Journal).should be_true - # work_package = work_package.find(journal.journaled.id) - # journal.user.should == user - # journal.journaled.should == existing_work_package - # journal.notes.should match(/This is reply/) - # journal.issue.type.name.should == type_support.name - # work_package.status.should == status_resolved - # work_package.start_date.to_s.should == '2010-01-01' - # work_package.due_date.to_s.should == '2010-12-31' - # work_package.assigned_to.should == user - # #issue.custom_value_for(CustomField.find_by(name: 'Float field')).value.should == "52.6" - # # keywords should be removed from the email body - # journal.notes.should_not match(/^Status:/i) - # journal.notes.should_not match(/^Start Date:/i) - # end - - # it "should send email notification by adding an work_package note" do - # ActionMailer::Base.deliveries.clear - # lambda do - # journal = submit_email('ticket_reply.eml') - # journal.is_a?(Journal).should be_true - # end.should change(ActionMailer::Base.deliveries, :size) - # end - - # it "should not set default attributes on adding a work_package note" do - # journal = submit_email('ticket_reply.eml', :work_package => {:type => 'Feature', :priority => 'High'}) - # journal.is_a?(Journal).should be_true - # journal.notes.should match(/This is reply/) - # journal.issue.type.name.should == type_support.name - # journal.issue.priority.name.should == priority_low.name - # end - - # it "should support message reply" do - # mes = submit_email('message_reply.eml') - # mes.is_a?(Message).should be_true - # mes.new_record?.should be_false - # mes.reload - # mes.subject.should == 'Reply via email' - # mes.parent.should == message_1 - # end - - # it "should support message reply by subject" do - # mes = submit_email('message_reply_by_subject.eml') - # mes.is_a?(Message).should be_true - # mes.new_record?.should be_false - # mes.reload - # mes.subject.should == 'Reply to the first post' - # mes.parent.should == message_1 - # end - - # it "should strip tags of html only emails" do - # work_package = submit_email('ticket_html_only.eml', :work_package => {'project' => 'onlinestore'}) - # work_package_created(work_package) - # work_package.description.should == 'This is a html-only email.' - # end - - # context "truncate emails based on the Setting" do - # context "with no setting" do - # before do - # Setting.mail_handler_body_delimiters = '' - # end - - # it "should add the entire email into the work_package" do - # work_package = submit_email('ticket_on_given_project.eml') - # work_package_created(work_package) - # work_package.description.should include('---') - # work_package.description.should include('This paragraph is after the delimiter') - # end - # end - - # context "with a single string" do - # before do - # Setting.mail_handler_body_delimiters = '---' - # end - - # it "should truncate the email at the delimiter for the work_package" do - # work_package = submit_email('ticket_on_given_project.eml') - # work_package_created(work_package) - # work_package.description.should include('This paragraph is before delimiters') - # work_package.description.should include('--- This line starts with a delimiter') - # work_package.description.should_not match(/^---$/) - # work_package.description.should_not include('This paragraph is after the delimiter') - # end - # end - - # context "with a single quoted reply (e.g. reply to a Redmine email notification)" do - # before do - # Setting.mail_handler_body_delimiters = '--- Reply above. Do not remove this line. ---' - # end - - # it "should truncate the email at the delimiter with the quoted reply symbols (>)" do - # journal = submit_email('issue_update_with_quoted_reply_above.eml') - # journal.is_a?(Journal).should be_true - # journal.notes.should include('An update to the work_package by the sender.') - # journal.notes.should_not match(Regexp.escape("--- Reply above. Do not remove this line. ---")) - # journal.notes.should_not include('Looks like the JSON api for projects was missed.') - # end - # end - - # context "with multiple quoted replies (e.g. reply to a reply of a Redmine email notification)" do - # before do - # Setting.mail_handler_body_delimiters = '--- Reply above. Do not remove this line. ---' - # end - - # it "should truncate the email at the delimiter with the quoted reply symbols (>)" do - # journal = submit_email('issue_update_with_multiple_quoted_reply_above.eml') - # journal.is_a?(Journal).should be_true - # journal.notes.should include('An update to the work_package by the sender.') - # journal.notes.should_not match(Regexp.escape("--- Reply above. Do not remove this line. ---")) - # journal.notes.should_not include('Looks like the JSON api for projects was missed.') - # end - # end - - # context "with multiple strings" do - # before do - # Setting.mail_handler_body_delimiters = "---\nBREAK" - # end - - # it "truncate the email at the first delimiter found (BREAK)" do - # work_package = submit_email('ticket_on_given_project.eml') - # work_package_created(work_package) - # work_package.description.should include('This paragraph is before delimiters') - # work_package.description.should_not include('BREAK') - # work_package.description.should_not include('This paragraph is between delimiters') - # work_package.description.should_not match(/^---$/) - # work_package.description.should_not include('This paragraph is after the delimiter') - # end - # end - # end - - # it "it shoud chomp subject on long email subject line" do - # work_package = submit_email('ticket_with_long_subject.eml') - # work_package_created(work_package) - # work_package.subject.should == 'New ticket on a given project with a very long subject line which exceeds 255 chars and should not be ignored but chopped off. And if the subject line is still not long enough, we just add more text. And more text. Wow, this is really annoying. Especially, if you have nothing to say...'[0,255] - # end - private + FIXTURES_PATH = File.dirname(__FILE__) + '/../fixtures/mail_handler' + def submit_email(filename, options = {}) raw = IO.read(File.join(FIXTURES_PATH, filename)) MailHandler.receive(raw, options) diff --git a/spec/fixtures/diffs/partials.diff b/spec_legacy/fixtures/diffs/partials.diff similarity index 100% rename from spec/fixtures/diffs/partials.diff rename to spec_legacy/fixtures/diffs/partials.diff diff --git a/spec/fixtures/diffs/subversion.diff b/spec_legacy/fixtures/diffs/subversion.diff similarity index 100% rename from spec/fixtures/diffs/subversion.diff rename to spec_legacy/fixtures/diffs/subversion.diff diff --git a/spec_legacy/functional/mail_handler_controller_spec.rb b/spec_legacy/functional/mail_handler_controller_spec.rb index 690fa99113..d99ee92f43 100644 --- a/spec_legacy/functional/mail_handler_controller_spec.rb +++ b/spec_legacy/functional/mail_handler_controller_spec.rb @@ -32,7 +32,7 @@ require 'mail_handler_controller' describe MailHandlerController, type: :controller do fixtures :all - FIXTURES_PATH = File.dirname(__FILE__) + '/../../fixtures/mail_handler' + FIXTURES_PATH = File.dirname(__FILE__) + '/../fixtures/mail_handler' before do User.current = nil diff --git a/spec_legacy/unit/lib/redmine/unified_diff_spec.rb b/spec_legacy/unit/lib/redmine/unified_diff_spec.rb index f2fd85615c..351090395a 100644 --- a/spec_legacy/unit/lib/redmine/unified_diff_spec.rb +++ b/spec_legacy/unit/lib/redmine/unified_diff_spec.rb @@ -158,6 +158,6 @@ DIFF private def read_diff_fixture(filename) - File.new(File.join(File.dirname(__FILE__), '/../../../../fixtures/diffs', filename)).read + File.new(File.join(File.dirname(__FILE__), '/../../../fixtures/diffs', filename)).read end end diff --git a/spec_legacy/unit/mail_handler_spec.rb b/spec_legacy/unit/mail_handler_spec.rb index d39edae8cb..907e56c3b0 100644 --- a/spec_legacy/unit/mail_handler_spec.rb +++ b/spec_legacy/unit/mail_handler_spec.rb @@ -31,7 +31,7 @@ require 'legacy_spec_helper' describe MailHandler, type: :model do fixtures :all - FIXTURES_PATH = File.dirname(__FILE__) + '/../../fixtures/mail_handler' + FIXTURES_PATH = File.dirname(__FILE__) + '/../fixtures/mail_handler' before do allow(Setting).to receive(:notified_events).and_return(Redmine::Notifiable.all.map(&:name))