当我使用RSpec运行测试时,我收到了真正的电子邮件。 我已经完成了this question中编写的所有内容(我添加了更改我的环境配置以不发送电子邮件,但它根本没有任何效果。我认为我的设置在某处被替换但是我无法找到。
以下是我的测试环境配置( config / enviroments / test.rb )
DataContext
这是我的邮件程序:
Myapp::Application.configure do
config.action_mailer.delivery_method = :test
config.action_mailer.perform_deliveries = false
end
似乎我错过了一些非常明显的东西。但是我需要你的帮助来分解它。
答案 0 :(得分:1)
由于您使用Mandrill::API
发送电子邮件而非ActionMailer
,因此您对ActionMailer
的设置绝对没有影响。
您应该在Mandrill::API
中找到相应的设置,或者存根测试的发送方法。
我实际上建议你仍然使用ActionMailer
与Mandrill SMTP服务器:
config.action_mailer.smtp_settings = {
address: 'smtp.mandrillapp.com',
port: 587,
domain: Rails.application.config_for(:global)['domain'],
authentication: 'plain',
enable_starttls_auto: true,
user_name: Rails.application.secrets.email_provider_username,
password: Rails.application.secrets.email_provider_apikey
}