diff --git a/test/models/rememberable_test.rb b/test/models/rememberable_test.rb index 4950e33d..aa9ce817 100644 --- a/test/models/rememberable_test.rb +++ b/test/models/rememberable_test.rb @@ -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