Чтобы проверить код программы действий rails с помощью rspec, обычно проверяют ActionMailer :: Base.deliveries.size следующим образом:
it "sends an email successfully" do
expect { mail.deliver_now }.to change { ActionMailer::Base.deliveries.size }.by(1)
end
В чем смысл этого теста? Какой тип ошибки мы можем найти с помощью этого теста?
ИМО, как только я вызову метод доставки, письмо будет отправлено автоматически, это ответственность ActionMailer, не так ли? Почему мы должны тестировать функциональность ActionMailer в нашем тестовом коде?