Feature #38263 » 38263-with_test.patch
| app/models/mail_handler.rb | ||
|---|---|---|
| 263 | 263 |
# Reply will be added to the issue |
| 264 | 264 |
def receive_journal_reply(journal_id) |
| 265 | 265 |
journal = Journal.find_by(:id => journal_id) |
| 266 |
if journal.nil? |
|
| 267 |
logger&.info "MailHandler: ignoring reply from [#{email.from.first}] to a nonexistent journal"
|
|
| 268 |
return nil |
|
| 269 |
end |
|
| 270 | 266 | |
| 271 |
if journal.journalized_type == 'Issue' |
|
| 267 |
if journal && journal.journalized_type == 'Issue'
|
|
| 272 | 268 |
receive_issue_reply(journal.journalized_id, journal) |
| 269 |
elsif m = email.subject.to_s.match(ISSUE_REPLY_SUBJECT_RE) |
|
| 270 |
logger&.info "MailHandler: reply to a nonexistant journal, calling receive_issue_reply with issue from subject" |
|
| 271 |
receive_issue_reply(m[1].to_i) |
|
| 273 | 272 |
else |
| 274 |
logger&.info "MailHandler: ignoring reply from [#{email.from.first}] to a journal whose journalized_type is not Issue"
|
|
| 273 |
logger&.info "MailHandler: ignoring reply to a nonexistant journal or issue"
|
|
| 275 | 274 |
return nil |
| 276 | 275 |
end |
| 277 | 276 |
end |
| test/unit/mail_handler_test.rb | ||
|---|---|---|
| 1114 | 1114 |
end |
| 1115 | 1115 |
end |
| 1116 | 1116 | |
| 1117 |
def test_reply_to_a_nonexitent_journal_with_subject_fallback |
|
| 1118 |
journal_id = Issue.find(2).journals.last.id |
|
| 1119 |
Journal.destroy(journal_id) |
|
| 1120 |
assert_no_difference 'Issue.count' do |
|
| 1121 |
assert_difference 'Journal.count', 1 do |
|
| 1122 |
journal = submit_email('ticket_reply.eml') do |email|
|
|
| 1123 |
email.sub! %r{^In-Reply-To:.*$}, "In-Reply-To: <redmine.journal-#{journal_id}.20060719210421@osiris>"
|
|
| 1124 |
email.sub! %r{^Subject:.*$}, "Subject: Re: [Feature request #2] Add ingredients categories"
|
|
| 1125 |
end |
|
| 1126 |
puts journal.inspect |
|
| 1127 |
assert_kind_of Journal, journal |
|
| 1128 |
assert_equal Issue.find(2), journal.journalized |
|
| 1129 |
end |
|
| 1130 |
end |
|
| 1131 |
end |
|
| 1132 | ||
| 1117 | 1133 |
def test_reply_to_a_message |
| 1118 | 1134 |
m = submit_email('message_reply.eml')
|
| 1119 | 1135 |
assert m.is_a?(Message) |
- « Previous
- 1
- 2
- Next »