Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # demo/app/mailers/user_mailer.rb
- # =========================================================================
- class UserMailer < ApplicationMailer
- # listing 11.12
- def account_activation(user)
- @user = user
- mail to: user.email, subject: "account activated"
- end
- def password_reset(user)
- @user = user
- mail to: user.email, subject: "password reset"
- end
- end
- # demo/test/mailers/user_mailer.rb
- # =========================================================================
- require 'test_helper'
- class UserMailerTest < ActionMailer::TestCase
- # listing 11.20
- test "account_activation" do
- user = users(:michael)
- user.activation_token = User.new_token
- mail = UserMailer.account_activation(user)
- assert_equal "account activated", mail.subject
- assert_equal [user.email], mail.to
- assert_equal ["[email protected]"], mail.from
- assert_match user.name, mail.body.encoded
- assert_match user.activation_token, mail.body.encoded
- assert_match CGI.escape(user.email), mail.body.encoded
- end
- test "password_reset" do # listing 12.12
- user = users(:michael)
- user.reset_token = User.new_token
- mail = UserMailer.password_reset(user)
- assert_equal "password reset", mail.subject
- assert_equal [user.email], mail.to
- assert_equal ["[email protected]"], mail.from
- assert_match user.reset_token, mail.body.encoded # FAILS
- assert_match CGI.escape(user.email), mail.body.encoded # FAILS
- end
- end
- # demo/app/views/user_mailer/password_reset.html.erb
- # ==========================================================
- <h1>User#password_reset</h1>
- <p><%= @greeting %>, find me in app/views/user_mailer/password_reset.html.erb</p>
- # demo/app/views/user_mailer/password_reset.text.erb
- # ==========================================================
- User#password_reset
- <%= @greeting %>, find me in app/views/user_mailer/password_reset.text.erb
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement