Понятия не имею, почему это не работает. После нескольких часов попыток выяснить это, я написал небольшой тест, чтобы проверить, был ли ActionMailer :: Base.deliveries пустым и был ли он.
Когда я тестирую свою форму сброса, она работает, и почта отправляется, но когда я запускаю тест, кажется, что она ничего не сохраняет в массиве.
require 'spec_helper'
describe "Passwords" do
describe "reset password" do
it "emails user when requesting password reset" do
visit login_path
click_link "Forgot Password?"
response.should render_template "passwords/new"
response.should have_selector :h1, :content => "Reset Password"
fill_in "password_reset[email]", :with => "foobar@gmail.com"
click_button "Reset Password"
response.should render_template "users/new"
response.should have_selector :div, :id => "flash_notice", :content => "Email sent with password reset instructions."
ActionMailer::Base.deliveries.empty?.should be_true
# mail = ActionMailer::Base.deliveries.last
end
end
end