mirror of
https://github.com/heartcombo/devise.git
synced 2026-01-10 07:18:14 -05:00
Creating notification tests and views.
This commit is contained in:
42
test/mailers/confirmation_instructions_test.rb
Normal file
42
test/mailers/confirmation_instructions_test.rb
Normal file
@@ -0,0 +1,42 @@
|
||||
require 'test_helper'
|
||||
|
||||
class ConfirmationInstructionsTest < ActionMailer::TestCase
|
||||
|
||||
def setup
|
||||
setup_mailer
|
||||
I18n.backend.store_translations :en, {:devise => { :notifier => { :confirmation_instructions => 'Account Confirmation' } }}
|
||||
Notifier.sender = 'test@example.com'
|
||||
@user = create_user
|
||||
@mail = ActionMailer::Base.deliveries.first
|
||||
end
|
||||
|
||||
test 'email sent after creating the user' do
|
||||
assert_not_nil @mail
|
||||
end
|
||||
|
||||
test 'content type should be set to html' do
|
||||
assert_equal 'text/html', @mail.content_type
|
||||
end
|
||||
|
||||
test 'send confirmation instructions to the user email' do
|
||||
assert_equal [@user.email], @mail.to
|
||||
end
|
||||
|
||||
test 'setup sender from configuration' do
|
||||
assert_equal ['test@example.com'], @mail.from
|
||||
end
|
||||
|
||||
test 'setup subject from I18n' do
|
||||
assert_equal 'Account Confirmation', @mail.subject
|
||||
end
|
||||
|
||||
test 'body should have user info' do
|
||||
assert_match /#{@user.email}/, @mail.body
|
||||
end
|
||||
|
||||
test 'body should have link to confirm the account' do
|
||||
host = ActionMailer::Base.default_url_options[:host]
|
||||
confirmation_url_regexp = %r{<a href=\"http://#{host}/confirmation\?perishable_token=#{@user.perishable_token}">}
|
||||
assert_match confirmation_url_regexp, @mail.body
|
||||
end
|
||||
end
|
||||
@@ -1,7 +0,0 @@
|
||||
require 'test_helper'
|
||||
|
||||
class NotifierTest < ActionMailer::TestCase
|
||||
|
||||
# TODO
|
||||
end
|
||||
|
||||
42
test/mailers/reset_password_instructions_test.rb
Normal file
42
test/mailers/reset_password_instructions_test.rb
Normal file
@@ -0,0 +1,42 @@
|
||||
require 'test_helper'
|
||||
|
||||
class ResetPasswordInstructionsTest < ActionMailer::TestCase
|
||||
|
||||
def setup
|
||||
setup_mailer
|
||||
I18n.backend.store_translations :en, {:devise => { :notifier => { :reset_password_instructions => 'Reset instructions' } }}
|
||||
Notifier.sender = 'test@example.com'
|
||||
@user = create_user
|
||||
@mail = Notifier.deliver_reset_password_instructions(@user)
|
||||
end
|
||||
|
||||
test 'email sent after reseting the user password' do
|
||||
assert_not_nil @mail
|
||||
end
|
||||
|
||||
test 'content type should be set to html' do
|
||||
assert_equal 'text/html', @mail.content_type
|
||||
end
|
||||
|
||||
test 'send confirmation instructions to the user email' do
|
||||
assert_equal [@user.email], @mail.to
|
||||
end
|
||||
|
||||
test 'setup sender from configuration' do
|
||||
assert_equal ['test@example.com'], @mail.from
|
||||
end
|
||||
|
||||
test 'setup subject from I18n' do
|
||||
assert_equal 'Reset instructions', @mail.subject
|
||||
end
|
||||
|
||||
test 'body should have user info' do
|
||||
assert_match /#{@user.email}/, @mail.body
|
||||
end
|
||||
|
||||
test 'body should have link to confirm the account' do
|
||||
host = ActionMailer::Base.default_url_options[:host]
|
||||
confirmation_url_regexp = %r{<a href=\"http://#{host}/password/edit\?perishable_token=#{@user.perishable_token}">}
|
||||
assert_match confirmation_url_regexp, @mail.body
|
||||
end
|
||||
end
|
||||
@@ -14,6 +14,7 @@ require 'integration_tests_helper'
|
||||
|
||||
ActionMailer::Base.delivery_method = :test
|
||||
ActionMailer::Base.perform_deliveries = true
|
||||
ActionMailer::Base.default_url_options[:host] = 'test.com'
|
||||
|
||||
ActiveRecord::Migration.verbose = false
|
||||
ActiveRecord::Base.logger = Logger.new(nil)
|
||||
|
||||
Reference in New Issue
Block a user