module ActionMailer::TestHelper

def assert_enqueued_emails(number, &block)

end
end
ContactMailer.welcome.deliver_later
ContactMailer.welcome.deliver_later
assert_enqueued_emails 2 do

end
ContactMailer.welcome.deliver_later
assert_enqueued_emails 1 do
def test_emails_again

emails to be enqueued.
If a block is passed, that block should cause the specified number of

end
assert_enqueued_emails 2
ContactMailer.welcome.deliver_later
assert_enqueued_emails 1
ContactMailer.welcome.deliver_later
assert_enqueued_emails 0
def test_emails

the given number.
Asserts that the number of emails enqueued for later delivery matches
def assert_enqueued_emails(number, &block)
  assert_enqueued_jobs(number, only: ->(job) { delivery_job_filter(job) }, &block)
end