mirror of
https://github.com/heartcombo/devise.git
synced 2022-11-09 12:18:31 -05:00
41 lines
1.2 KiB
Ruby
41 lines
1.2 KiB
Ruby
require 'test_helper'
|
|
|
|
class TrackableTest < ActiveSupport::TestCase
|
|
test 'required_fields should contain the fields that Devise uses' do
|
|
assert_same_content Devise::Models::Trackable.required_fields(User), [
|
|
:current_sign_in_at,
|
|
:current_sign_in_ip,
|
|
:last_sign_in_at,
|
|
:last_sign_in_ip,
|
|
:sign_in_count
|
|
]
|
|
end
|
|
|
|
test 'update_tracked_fields should only set attributes but not save the record' do
|
|
user = create_user
|
|
request = mock
|
|
request.stubs(:remote_ip).returns("127.0.0.1")
|
|
|
|
assert_nil user.current_sign_in_ip
|
|
assert_nil user.last_sign_in_ip
|
|
assert_nil user.current_sign_in_at
|
|
assert_nil user.last_sign_in_at
|
|
assert_equal 0, user.sign_in_count
|
|
|
|
user.update_tracked_fields(request)
|
|
|
|
assert_equal "127.0.0.1", user.current_sign_in_ip
|
|
assert_equal "127.0.0.1", user.last_sign_in_ip
|
|
assert_not_nil user.current_sign_in_at
|
|
assert_not_nil user.last_sign_in_at
|
|
assert_equal 1, user.sign_in_count
|
|
|
|
user.reload
|
|
|
|
assert_nil user.current_sign_in_ip
|
|
assert_nil user.last_sign_in_ip
|
|
assert_nil user.current_sign_in_at
|
|
assert_nil user.last_sign_in_at
|
|
assert_equal 0, user.sign_in_count
|
|
end
|
|
end
|