1
0
Fork 0
mirror of https://github.com/heartcombo/devise.git synced 2022-11-09 12:18:31 -05:00

timeout_in option can be a Proc object

This commit is contained in:
lest 2011-11-24 21:42:58 +03:00
parent 5909d6a0c5
commit 426223dda0
3 changed files with 30 additions and 6 deletions

View file

@ -14,6 +14,26 @@ class TimeoutableTest < ActiveSupport::TestCase
assert_not new_user.timedout?(nil)
end
test 'should accept timeout_in proc and provide user as argument' do
user = new_user
timeout_in = proc do |obj|
assert_equal user, obj
10.minutes
end
swap Devise, :timeout_in => timeout_in do
assert user.timedout?(12.minutes.ago)
assert_not user.timedout?(8.minutes.ago)
end
end
test 'should not be expired when timeout_in proc returns nil' do
swap Devise, :timeout_in => proc { nil } do
assert_not new_user.timedout?(10.hours.ago)
end
end
test 'fallback to Devise config option' do
swap Devise, :timeout_in => 1.minute do
user = new_user