Files
devise/test/devise_test.rb
2010-01-05 13:44:13 +01:00

58 lines
1.4 KiB
Ruby

require 'test/test_helper'
module Devise
def self.clean_warden_config!
@warden_config = nil
end
end
class DeviseTest < ActiveSupport::TestCase
test 'DeviseMailer.sender can be configured through Devise' do
swap DeviseMailer, :sender => "foo@bar" do
assert_equal "foo@bar", DeviseMailer.sender
Devise.mailer_sender = "bar@foo"
assert_equal "bar@foo", DeviseMailer.sender
end
end
test 'model options can be configured through Devise' do
swap Devise, :confirm_within => 113, :pepper => "foo" do
assert_equal 113, Devise.confirm_within
assert_equal "foo", Devise.pepper
end
end
test 'setup block yields self' do
Devise.setup do |config|
assert_equal Devise, config
end
end
test 'warden manager configuration' do
config = Warden::Config.new
Devise.configure_warden(config)
assert_equal Devise::FailureApp, config.failure_app
assert_equal [:authenticatable], config.default_strategies
assert_equal :user, config.default_scope
assert config.silence_missing_strategies?
assert config.silence_missing_serializers?
end
test 'warden manager user configuration through a block' do
begin
@executed = false
Devise.warden do |config|
@executed = true
assert_kind_of Warden::Config, config
end
Devise.configure_warden(Warden::Config.new)
assert @executed
ensure
Devise.clean_warden_config!
end
end
end