Emails are pretty dangerous - inspect your mailer templates from the safety of your browser.
Add to your Gemfile
:
gem "letter_bomb", group: :development
and bundle
away.
Mount the engine in your routes.rb
:
if Rails.env.development?
mount LetterBomb::Engine, at: "/letter_bomb"
end
and hit /letter_bomb
for a list of previews.
Previews can be defined anywhere within app/mailers
suffixed with preview
,
i.e. app/mailers/user_mailer_preview.rb
.
Preview method names are arbitrary so long as they return a Mail
object.
class UserMailerPreview < LetterBomb::Preview
def welcome
WelcomeMailer.for_user(User.last)
end
end
Preview methods are wrapped in an ActiveRecord transaction block that will be rolled back after execution, so it's safe to create your own test data within them.
Rails 4 introduced ActionMailer::Preview
, which should be preferred if available.