# frozen_string_literal: true
require 'test_helper'

class CandidateMailerTest < ActionMailer::TestCase
  test "welcome" do
    candidate = candidates(:martha)
    mail = CandidateMailer.welcome candidate
    assert_match(/skills assessment test/i, mail.subject)
    assert_equal [candidate.email], mail.to
    assert_equal [ENV["default_mail_from"]], mail.from
    assert_match candidate.test_hash, mail.body.encoded
  end

  test "reminder" do
    candidate = candidates(:roy)
    mail = CandidateMailer.reminder candidate
    assert_match(/skills assessment test/i, mail.subject)
    assert_equal [candidate.email], mail.to
    assert_equal [ENV["default_mail_from"]], mail.from
    assert_match candidate.test_hash, mail.body.encoded
    assert_match candidate.recruiter.email, mail.body.encoded
  end

  test "submitted" do
    candidate = candidates(:dawn)
    mail = CandidateMailer.submitted candidate
    assert_match(/skills assessment test/i, mail.subject)
    assert_equal [candidate.email], mail.to
    assert_equal [ENV["default_mail_from"]], mail.from
    assert_match candidate.name, mail.body.encoded
  end
end
