Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
gitlab-ce
Commits
bbca0351
Commit
bbca0351
authored
Mar 25, 2014
by
Dmitriy Zaporozhets
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #6606 from kemenaran/fix-merge-notifications
Fix the merge notification email not being sent
parents
55be026e
65f5496e
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
30 additions
and
6 deletions
+30
-6
app/mailers/emails/merge_requests.rb
app/mailers/emails/merge_requests.rb
+2
-2
app/services/notification_service.rb
app/services/notification_service.rb
+1
-1
spec/mailers/notify_spec.rb
spec/mailers/notify_spec.rb
+24
-0
spec/services/notification_service_spec.rb
spec/services/notification_service_spec.rb
+3
-3
No files found.
app/mailers/emails/merge_requests.rb
View file @
bbca0351
...
...
@@ -29,11 +29,11 @@ module Emails
subject:
subject
(
"
#{
@merge_request
.
title
}
(!
#{
@merge_request
.
iid
}
)"
))
end
def
merged_merge_request_email
(
recipient_id
,
merge_request_id
)
def
merged_merge_request_email
(
recipient_id
,
merge_request_id
,
updated_by_user_id
)
@merge_request
=
MergeRequest
.
find
(
merge_request_id
)
@project
=
@merge_request
.
project
@target_url
=
project_merge_request_url
(
@project
,
@merge_request
)
mail
(
from:
sender
(
@merge_request
.
author_id_of_changes
),
mail
(
from:
sender
(
updated_by_user_id
),
to:
recipient
(
recipient_id
),
subject:
subject
(
"
#{
@merge_request
.
title
}
(!
#{
@merge_request
.
iid
}
)"
))
end
...
...
app/services/notification_service.rb
View file @
bbca0351
...
...
@@ -91,7 +91,7 @@ class NotificationService
recipients
=
recipients
.
concat
(
project_watchers
(
merge_request
.
target_project
)).
uniq
recipients
.
each
do
|
recipient
|
mailer
.
merged_merge_request_email
(
recipient
.
id
,
merge_request
.
id
)
mailer
.
merged_merge_request_email
(
recipient
.
id
,
merge_request
.
id
,
merge_request
.
author_id_of_changes
)
end
end
...
...
spec/mailers/notify_spec.rb
View file @
bbca0351
...
...
@@ -229,6 +229,7 @@ describe Notify do
end
context
'for merge requests'
do
let
(
:merge_author
)
{
create
(
:user
)
}
let
(
:merge_request
)
{
create
(
:merge_request
,
author:
current_user
,
assignee:
assignee
,
source_project:
project
,
target_project:
project
)
}
let
(
:merge_request_with_description
)
{
create
(
:merge_request
,
author:
current_user
,
assignee:
assignee
,
source_project:
project
,
target_project:
project
,
description:
Faker
::
Lorem
.
sentence
)
}
...
...
@@ -288,7 +289,30 @@ describe Notify do
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
)
}
it_behaves_like
'a multiple recipients email'
it
'is sent as the merge author'
do
sender
=
subject
.
header
[
:from
].
addrs
[
0
]
sender
.
display_name
.
should
eq
(
merge_author
.
name
)
sender
.
address
.
should
eq
(
gitlab_sender
)
end
it
'has the correct subject'
do
should
have_subject
/
#{
merge_request
.
title
}
\(!
#{
merge_request
.
iid
}
\)/
end
it
'contains the new status'
do
should
have_body_text
/merged/i
end
it
'contains a link to the merge request'
do
should
have_body_text
/
#{
project_merge_request_path
project
,
merge_request
}
/
end
end
end
end
...
...
spec/services/notification_service_spec.rb
View file @
bbca0351
...
...
@@ -233,15 +233,15 @@ describe NotificationService do
should_email
(
@u_watcher
.
id
)
should_not_email
(
@u_participating
.
id
)
should_not_email
(
@u_disabled
.
id
)
notification
.
merge_mr
(
merge_request
)
notification
.
merge_mr
(
merge_request
,
@u_disabled
)
end
def
should_email
(
user_id
)
Notify
.
should_receive
(
:merged_merge_request_email
).
with
(
user_id
,
merge_request
.
id
)
Notify
.
should_receive
(
:merged_merge_request_email
).
with
(
user_id
,
merge_request
.
id
,
@u_disabled
.
id
)
end
def
should_not_email
(
user_id
)
Notify
.
should_not_receive
(
:merged_merge_request_email
).
with
(
user_id
,
merge_request
.
id
)
Notify
.
should_not_receive
(
:merged_merge_request_email
).
with
(
user_id
,
merge_request
.
id
,
@u_disabled
.
id
)
end
end
end
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment