@@ -34,7 +34,7 class Token < ActiveRecord::Base | |||
|
34 | 34 | |
|
35 | 35 | # Delete all expired tokens |
|
36 | 36 | def self.destroy_expired |
|
37 |
Token.delete_all ["action |
|
|
37 | Token.delete_all ["action NOT IN (?) AND created_on < ?", ['feeds', 'api'], Time.now - @@validity_time] | |
|
38 | 38 | end |
|
39 | 39 | |
|
40 | 40 | private |
@@ -35,4 +35,27 class TokenTest < ActiveSupport::TestCase | |||
|
35 | 35 | assert !Token.exists?(t1.id) |
|
36 | 36 | assert Token.exists?(t2.id) |
|
37 | 37 | end |
|
38 | ||
|
39 | def test_destroy_expired_should_not_destroy_feeds_and_api_tokens | |
|
40 | Token.delete_all | |
|
41 | ||
|
42 | Token.create!(:user_id => 1, :action => 'api', :created_on => 7.days.ago) | |
|
43 | Token.create!(:user_id => 1, :action => 'feeds', :created_on => 7.days.ago) | |
|
44 | ||
|
45 | assert_no_difference 'Token.count' do | |
|
46 | assert_equal 0, Token.destroy_expired | |
|
47 | end | |
|
48 | end | |
|
49 | ||
|
50 | def test_destroy_expired_should_destroy_expired_tokens | |
|
51 | Token.delete_all | |
|
52 | ||
|
53 | Token.create!(:user_id => 1, :action => 'autologin', :created_on => 7.days.ago) | |
|
54 | Token.create!(:user_id => 2, :action => 'autologin', :created_on => 3.days.ago) | |
|
55 | Token.create!(:user_id => 3, :action => 'autologin', :created_on => 1.hour.ago) | |
|
56 | ||
|
57 | assert_difference 'Token.count', -2 do | |
|
58 | assert_equal 2, Token.destroy_expired | |
|
59 | end | |
|
60 | end | |
|
38 | 61 | end |
General Comments 0
You need to be logged in to leave comments.
Login now