Ruby on rails 如何为ActionMailer::DeliveryJob存根SMTP错误

Ruby on rails 如何为ActionMailer::DeliveryJob存根SMTP错误,ruby-on-rails,actionmailer,Ruby On Rails,Actionmailer,对于ActionMailer::DeliveryJob方法,测试discard\u on或retry\u on的SMTP错误存根的正确方法是什么?我找不到任何示例,但这是我能想到的最好方法: test 'capture an SMTP exception' do email = MyMailer.with(params).my_message Mail::Message.any_instance.stubs(:deliver).raises(Net::SMTPSyntaxEr

对于
ActionMailer::DeliveryJob
方法,测试
discard\u on
retry\u on
的SMTP错误存根的正确方法是什么?

我找不到任何示例,但这是我能想到的最好方法:

  test 'capture an SMTP exception' do
    email = MyMailer.with(params).my_message
    Mail::Message.any_instance.stubs(:deliver).raises(Net::SMTPSyntaxError)
    job = email.deliver_later
    job.perform_now
    assert_equal 1, job.executions
  end