我在 Devise 中发送确认电子邮件时遇到了一些问题。这就是为什么我想为此功能编写测试。当我不创建自己的邮件时,我怎么能做到这一点?
编辑
我决定,这应该足够了:
it 'should send an email' do
user
put :complete, params
user.send(:send_confirmation_notification?).should == true
end
如果我错过了什么,请告诉我。
我在 Devise 中发送确认电子邮件时遇到了一些问题。这就是为什么我想为此功能编写测试。当我不创建自己的邮件时,我怎么能做到这一点?
我决定,这应该足够了:
it 'should send an email' do
user
put :complete, params
user.send(:send_confirmation_notification?).should == true
end
如果我错过了什么,请告诉我。
你看过为 Devise 编写的测试吗?
https://github.com/plataformatec/devise/blob/master/test/mailers/confirmation_instructions_test.rb
如果您想进行更明确的测试并实际测试电子邮件是使用 RSpec 发送的,这对我有用。
it 'sends a confirmation email' do
user = FactoryGirl.build :user
expect { user.save }.to change(ActionMailer::Base.deliveries, :count).by(1)
end