44 lines
1.5 KiB
Ruby
44 lines
1.5 KiB
Ruby
# frozen_string_literal: true
|
|
require 'test_helper'
|
|
|
|
class ReviewerMailerTest < ActionMailer::TestCase
|
|
test "candidate_submission" do
|
|
candidate = candidates :dawn
|
|
mail = ReviewerMailer.candidate_submission candidate
|
|
assert_match "Results", mail.subject
|
|
assert_match candidate.test_hash, mail.subject
|
|
assert_equal candidate.quiz.reviewers.map(&:email), mail.to
|
|
assert_equal [ENV["default_mail_from"]], mail.from
|
|
assert_match candidate.test_hash, mail.body.encoded
|
|
end
|
|
|
|
test "reminder" do
|
|
reminders = ReviewerReminder.new
|
|
reminder = reminders.reminders.first
|
|
mail = ReviewerMailer.reminder reminder
|
|
assert_match "Review Reminder", mail.subject
|
|
assert_equal [reminder.email], mail.to
|
|
assert_equal [ENV["default_mail_from"]], mail.from
|
|
assert_match reminder.test_hash, mail.body.encoded
|
|
end
|
|
|
|
test "notify_manager" do
|
|
candidate = candidates(:richard)
|
|
mail = ReviewerMailer.notify_manager candidate.id
|
|
assert_match "Voting Complete", mail.subject
|
|
assert_equal [candidate.manager.email], mail.to
|
|
assert_equal [ENV["default_mail_from"]], mail.from
|
|
assert_match candidate.test_hash, mail.body.encoded
|
|
end
|
|
|
|
test "comment notification" do
|
|
comment = quiz_comments(:com5)
|
|
mail = ReviewerMailer.new_comment comment
|
|
assert_match "Comment", mail.subject
|
|
assert_match comment.test_hash, mail.subject
|
|
assert_equal comment.candidate.reviewers.map(&:email), mail.to
|
|
assert_equal [ENV["default_mail_from"]], mail.from
|
|
assert_match comment.test_hash, mail.body.encoded
|
|
end
|
|
end
|