Fix test typo and expand test cases for `Rememberable#rememberable_value`.

Closes #4157
This commit is contained in:
Lucas Mazza 2016-06-27 17:08:52 -03:00
parent 22784cb55a
commit fe10a5b17a
No known key found for this signature in database
GPG Key ID: C009F9A6BE4A44CB
1 changed files with 15 additions and 2 deletions

View File

@ -99,15 +99,28 @@ class RememberableTest < ActiveSupport::TestCase
assert_nil User.serialize_from_cookie(user.to_key, "123", Time.now.utc)
end
test 'raises a RuntimeError if the user does not implements a rememberable value' do
user = User.new
assert_raise(RuntimeError) { user.rememberable_value }
user_with_remember_token = User.new
def user_with_remember_token.remember_token; '123-token'; end
assert_equal '123-token', user_with_remember_token.rememberable_value
user_with_salt = User.new
def user_with_salt.authenticatable_salt; '123-salt'; end
assert_equal '123-salt', user_with_salt.rememberable_value
end
test 'raises a RuntimeError if authenticatable_salt is nil or empty' do
user = User.new
def user.authenticable_salt; nil; end
def user.authenticatable_salt; nil; end
assert_raise RuntimeError do
user.rememberable_value
end
user = User.new
def user.authenticable_salt; ""; end
def user.authenticatable_salt; ""; end
assert_raise RuntimeError do
user.rememberable_value
end