Sto provando a testare alcuni mailer con rspec ma le consegne sono sempre vuote. Qui è la mia prova rspec:ActionMailer :: Base.deliveries sempre vuoto in Rspec
require "spec_helper"
describe "AccountMailer", :type => :helper do
before(:each) do
ActionMailer::Base.delivery_method = :test
ActionMailer::Base.perform_deliveries = true
ActionMailer::Base.deliveries = []
end
it "should send welcome email to account email" do
account = FactoryGirl.create :account
account.send_welcome_email
ActionMailer::Base.deliveries.empty?.should be_false
ActionMailer::Base.deliveries.last.to.should == account.email
end
end
non riesce con:
1) AccountMailer should send welcome email to account email
Failure/Error: ActionMailer::Base.deliveries.empty?.should be_false
expected true to be false
La mia funzione send_welcome_email assomiglia a questo (che è il mio modello):
def send_welcome_email
AccountMailer.welcome self
end
E il mio mailer:
class AccountMailer < ActionMailer::Base
default from: APP_CONFIG['email']['from']
def welcome data
if data.locale == 'es'
template = 'welcome-es'
else
template = 'welcome-en'
end
mail(:to => data.email, :subject => I18n.t('welcome_email_subject'), :template_name => template)
end
end
Qualche idea? Non sono sicuro di come procedere.
solo mi ha salvato un sacco di tempo. grazie per questo! – MilesStanfield