Skip to content

Commit f90baf2

Browse files
committed
refactor(tests): convert feedback request email tests to delivery assertions
Simplifies after create hook tests by removing mock-based tests and replacing with direct email delivery verification. Changes: - Consolidates two mock-based tests into one email delivery test - Verifies email is sent and has expected subject Removes allow().to receive() and have_received() mocks
1 parent 1dc8d4f commit f90baf2

1 file changed

Lines changed: 6 additions & 11 deletions

File tree

spec/models/feedback_request_spec.rb

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,13 @@
2525
end
2626

2727
context 'after create hook' do
28-
it '#email' do
29-
feedback_request = Fabricate.build(:feedback_request)
30-
allow(feedback_request).to receive(:email)
31-
allow(feedback_request).to receive(:member_id).and_return(:member_id)
32-
feedback_request.save
33-
expect(feedback_request).to have_received(:email)
34-
end
35-
3628
it 'sends request feedback email' do
37-
allow(FeedbackRequestMailer).to receive(:request_feedback) { double('feedback_request_mailer').as_null_object }
38-
Fabricate(:feedback_request)
39-
expect(FeedbackRequestMailer).to have_received(:request_feedback)
29+
expect {
30+
Fabricate(:feedback_request)
31+
}.to change { ActionMailer::Base.deliveries.count }.by(1)
32+
33+
email = ActionMailer::Base.deliveries.last
34+
expect(email.subject).to include('Feedback')
4035
end
4136
end
4237
end

0 commit comments

Comments
 (0)