diff options
author | Pierre de La Morinerie <pierre@capitainetrain.com> | 2014-07-08 13:56:37 +0200 |
---|---|---|
committer | Pierre de La Morinerie <pierre@capitainetrain.com> | 2014-07-25 10:50:58 +0200 |
commit | 32a6f41f1cd5bbea690461d2e930843266893f1b (patch) | |
tree | 3feb96f5de22cb85b145006543c24dfeba478cd2 | |
parent | 414afd68f3b9c529fa9de9f60bfe86994b1fda81 (diff) | |
download | gitlab-ce-32a6f41f1cd5bbea690461d2e930843266893f1b.tar.gz |
Include "Merge-request reopened" emails in the proper email thread
-rw-r--r-- | app/mailers/emails/merge_requests.rb | 7 | ||||
-rw-r--r-- | spec/mailers/notify_spec.rb | 29 |
2 files changed, 33 insertions, 3 deletions
diff --git a/app/mailers/emails/merge_requests.rb b/app/mailers/emails/merge_requests.rb index 935987e2ed1..9ecdac87d72 100644 --- a/app/mailers/emails/merge_requests.rb +++ b/app/mailers/emails/merge_requests.rb @@ -49,9 +49,10 @@ module Emails @updated_by = User.find updated_by_user_id @target_url = project_merge_request_url(@project, @merge_request) set_reference("merge_request_#{merge_request_id}") - mail(from: sender(updated_by_user_id), - to: recipient(recipient_id), - subject: subject("#{@merge_request.title} (##{@merge_request.iid}) #{@mr_status}")) + mail_answer_thread(@merge_request, + from: sender(updated_by_user_id), + to: recipient(recipient_id), + subject: subject("#{@merge_request.title} (##{@merge_request.iid}) #{@mr_status}")) end end diff --git a/spec/mailers/notify_spec.rb b/spec/mailers/notify_spec.rb index 314b2691c40..25872b3a257 100644 --- a/spec/mailers/notify_spec.rb +++ b/spec/mailers/notify_spec.rb @@ -322,6 +322,35 @@ describe Notify do end end + describe 'status changed' do + let(:status) { 'reopened' } + subject { Notify.merge_request_status_email(recipient.id, merge_request.id, status, current_user) } + + it_behaves_like 'an answer to an existing thread', 'merge_request' + + it 'is sent as the author' do + sender = subject.header[:from].addrs[0] + sender.display_name.should eq(current_user.name) + sender.address.should eq(gitlab_sender) + end + + it 'has the correct subject' do + should have_subject /#{merge_request.title} \(##{merge_request.iid}\)/i + end + + it 'contains the new status' do + should have_body_text /#{status}/i + end + + it 'contains the user name' do + should have_body_text /#{current_user.name}/i + end + + it 'contains a link to the merge request' do + should have_body_text /#{project_merge_request_path project, merge_request}/ + end + end + describe 'that are merged' do subject { Notify.merged_merge_request_email(recipient.id, merge_request.id, merge_author.id) } |