Commit d8a4e4b49481976390a9a8342eca7888eaddc404
1 parent
6baaac4c
Exists in
master
and in
1 other branch
Use comment notification recipients in mailer
Showing
2 changed files
with
33 additions
and
3 deletions
Show diff stats
app/mailers/mailer.rb
... | ... | @@ -34,8 +34,7 @@ class Mailer < ActionMailer::Base |
34 | 34 | @notice = @problem.notices.first |
35 | 35 | @app = @problem.app |
36 | 36 | |
37 | - # Don't send comment notification to user who posted the comment | |
38 | - recipients = @app.notification_recipients - [comment.user.email] | |
37 | + recipients = @comment.notification_recipients | |
39 | 38 | |
40 | 39 | mail :to => recipients, |
41 | 40 | :subject => "#{@user.name} commented on [#{@app.name}][#{@notice.environment_name}] #{@notice.message.truncate(50)}" | ... | ... |
spec/mailers/mailer_spec.rb
... | ... | @@ -46,5 +46,36 @@ describe Mailer do |
46 | 46 | end |
47 | 47 | end |
48 | 48 | end |
49 | -end | |
50 | 49 | |
50 | + context "Comment Notification" do | |
51 | + include EmailSpec::Helpers | |
52 | + include EmailSpec::Matchers | |
53 | + | |
54 | + let!(:notice) { Fabricate(:notice) } | |
55 | + let!(:comment) { Fabricate.build(:comment, :err => notice.problem) } | |
56 | + let!(:watcher) { Fabricate(:watcher, :app => comment.app) } | |
57 | + let(:recipients) { ['recipient@example.com', 'another@example.com']} | |
58 | + | |
59 | + before do | |
60 | + comment.stub(:notification_recipients).and_return(recipients) | |
61 | + Fabricate(:notice, :err => notice.err) | |
62 | + @email = Mailer.comment_notification(comment).deliver | |
63 | + end | |
64 | + | |
65 | + it "should send the email" do | |
66 | + ActionMailer::Base.deliveries.size.should == 1 | |
67 | + end | |
68 | + | |
69 | + it "should be sent to comment notification recipients" do | |
70 | + @email.to.should == recipients | |
71 | + end | |
72 | + | |
73 | + it "should have the notices count in the body" do | |
74 | + @email.should have_body_text("This err has occurred 2 times") | |
75 | + end | |
76 | + | |
77 | + it "should have the comment body" do | |
78 | + @email.should have_body_text(comment.body) | |
79 | + end | |
80 | + end | |
81 | +end | ... | ... |