From 9720c363805a41f8ed096bb7d18e475210ee68f7 Mon Sep 17 00:00:00 2001 From: "Carlos A. da Silva" Date: Tue, 20 Oct 2009 08:59:01 -0200 Subject: [PATCH] Updating tests and fix rememberable serialize_from_cookie. --- lib/devise/models/rememberable.rb | 2 +- test/models/rememberable_test.rb | 26 +++++++++----------------- 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/lib/devise/models/rememberable.rb b/lib/devise/models/rememberable.rb index ec7354f0..c31f0ba0 100644 --- a/lib/devise/models/rememberable.rb +++ b/lib/devise/models/rememberable.rb @@ -61,7 +61,7 @@ module Devise # Recreate the user based on the stored cookie def serialize_from_cookie(cookie) record_id, remember_token = cookie.split('::') - record = find_by_id(attributes[:id]) + record = find_by_id(record_id) record if record.try(:valid_remember_token?, remember_token) end diff --git a/test/models/rememberable_test.rb b/test/models/rememberable_test.rb index 1f6a3993..b33fd62e 100644 --- a/test/models/rememberable_test.rb +++ b/test/models/rememberable_test.rb @@ -45,23 +45,6 @@ class RememberableTest < ActiveSupport::TestCase assert_not user.valid_remember_token?(user.remember_token) end - test 'find a user by its id and remember it if the token is valid' do - user = create_user - user.remember_me! - remembered_user = User.remember_me!(:id => user.id, :remember_token => user.remember_token) - assert_not_nil remembered_user - assert_equal remembered_user, user - end - - test 'remember me should return nil if no user is found' do - assert_nil User.remember_me!(:id => 0) - end - - test 'remember me return nil if is a valid user with invalid token' do - user = create_user - assert_nil User.remember_me!(:id => user.id, :remember_token => 'invalid_token') - end - test 'serialize into cookie' do user = create_user user.remember_me! @@ -73,4 +56,13 @@ class RememberableTest < ActiveSupport::TestCase user.remember_me! assert_equal user, User.serialize_from_cookie("#{user.id}::#{user.remember_token}") end + + test 'serialize should return nil if no user is found' do + assert_nil User.serialize_from_cookie('0::123') + end + + test 'remember me return nil if is a valid user with invalid token' do + user = create_user + assert_nil User.serialize_from_cookie("#{user.id}::#{user.remember_token}123") + end end