@ -44,8 +44,9 @@ module Admin
|
||||
|
||||
test "should process a reset request" do
|
||||
user = users(:admin)
|
||||
post admin_send_reset_url, params: { auth: { email: user.email } }
|
||||
|
||||
assert_difference("ActionMailer::Base.deliveries.size", 1) do
|
||||
post admin_send_reset_url, params: { auth: { email: user.email } }
|
||||
end
|
||||
refute_equal user.reset_token, User.find(user.id).reset_token
|
||||
assert_redirected_to admin_reset_request_url
|
||||
assert_match(/request.*sent/i, flash[:success])
|
||||
|
@ -28,9 +28,11 @@ module Admin
|
||||
end
|
||||
|
||||
test "should post create" do
|
||||
assert_difference("User.count", 1) do
|
||||
post admin_create_user_url, params: { user:
|
||||
{ email: 'new.user@mailinator.com', name: 'New User', role: 'reviewer' } }
|
||||
assert_difference("ActionMailer::Base.deliveries.size", 1) do
|
||||
assert_difference("User.count", 1) do
|
||||
post admin_create_user_url, params: { user:
|
||||
{ email: 'new.user@mailinator.com', name: 'New User', role: 'reviewer' } }
|
||||
end
|
||||
end
|
||||
assert_redirected_to admin_users_url
|
||||
end
|
||||
|
12
test/mailers/previews/user_mailer_preview.rb
Normal file
12
test/mailers/previews/user_mailer_preview.rb
Normal file
@ -0,0 +1,12 @@
|
||||
# Preview all emails at http://localhost:3000/rails/mailers/user_mailer
|
||||
class UserMailerPreview < ActionMailer::Preview
|
||||
def password_reset
|
||||
user = User.find_by(email: 'alan.admin@mailinator.com')
|
||||
UserMailer.password_reset user
|
||||
end
|
||||
|
||||
def welcome
|
||||
user = User.find_by(email: 'alan.admin@mailinator.com')
|
||||
UserMailer.welcome user, '[default-password]'
|
||||
end
|
||||
end
|
20
test/mailers/user_mailer_test.rb
Normal file
20
test/mailers/user_mailer_test.rb
Normal file
@ -0,0 +1,20 @@
|
||||
require 'test_helper'
|
||||
|
||||
class UserMailerTest < ActionMailer::TestCase
|
||||
test "password_reset" do
|
||||
user = users(:admin)
|
||||
user.setup_reset
|
||||
mail = UserMailer.password_reset user
|
||||
|
||||
assert_equal [user.email], mail.to
|
||||
assert_match user.reset_token, mail.body.encoded
|
||||
end
|
||||
|
||||
test "welcome" do
|
||||
user = users(:admin)
|
||||
mail = UserMailer.welcome user, 'p0o9i8u7'
|
||||
|
||||
assert_equal [user.email], mail.to
|
||||
assert_match 'p0o9i8u7', mail.body.encoded
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user