mirror of
https://github.com/redmine/redmine.git
synced 2024-09-13 15:45:44 +02:00
Merged r9420 from trunk.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/branches/1.4-stable@9436 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
6d8649b9d3
commit
d6d064f875
@ -34,7 +34,7 @@ class Token < ActiveRecord::Base
|
||||
|
||||
# Delete all expired tokens
|
||||
def self.destroy_expired
|
||||
Token.delete_all ["action <> 'feeds' AND created_on < ?", Time.now - @@validity_time]
|
||||
Token.delete_all ["action NOT IN (?) AND created_on < ?", ['feeds', 'api'], Time.now - @@validity_time]
|
||||
end
|
||||
|
||||
private
|
||||
|
@ -35,4 +35,27 @@ class TokenTest < ActiveSupport::TestCase
|
||||
assert !Token.exists?(t1.id)
|
||||
assert Token.exists?(t2.id)
|
||||
end
|
||||
|
||||
def test_destroy_expired_should_not_destroy_feeds_and_api_tokens
|
||||
Token.delete_all
|
||||
|
||||
Token.create!(:user_id => 1, :action => 'api', :created_on => 7.days.ago)
|
||||
Token.create!(:user_id => 1, :action => 'feeds', :created_on => 7.days.ago)
|
||||
|
||||
assert_no_difference 'Token.count' do
|
||||
assert_equal 0, Token.destroy_expired
|
||||
end
|
||||
end
|
||||
|
||||
def test_destroy_expired_should_destroy_expired_tokens
|
||||
Token.delete_all
|
||||
|
||||
Token.create!(:user_id => 1, :action => 'autologin', :created_on => 7.days.ago)
|
||||
Token.create!(:user_id => 2, :action => 'autologin', :created_on => 3.days.ago)
|
||||
Token.create!(:user_id => 3, :action => 'autologin', :created_on => 1.hour.ago)
|
||||
|
||||
assert_difference 'Token.count', -2 do
|
||||
assert_equal 2, Token.destroy_expired
|
||||
end
|
||||
end
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user