Sha256: 973d400550091a0abef7b76b0cbe725788a551395a4cf59465095f95a04faf2b

Contents?: true

Size: 1.7 KB

Versions: 50

Compression:

Stored size: 1.7 KB

Contents

require File.dirname(__FILE__) + '/../test_helper.rb'

module ActsAsAuthenticTest
  class PersistenceTokenTest < ActiveSupport::TestCase
    def test_after_password_set_reset_persistence_token
      ben = users(:ben)
      old_persistence_token = ben.persistence_token
      ben.password = "newpass"
      assert_not_equal old_persistence_token, ben.persistence_token
    end
    
    def test_after_password_verification_reset_persistence_token
      ben = users(:ben)
      old_persistence_token = ben.persistence_token
      assert ben.valid_password?(password_for(ben))
      assert_equal old_persistence_token, ben.persistence_token
      
      # only update it if it is nil
      assert ben.update_attribute(:persistence_token, nil)
      assert ben.valid_password?(password_for(ben))
      assert_not_equal old_persistence_token, ben.persistence_token
    end
    
    def test_before_validate_reset_persistence_token
      u = User.new
      assert !u.valid?
      assert_not_nil u.persistence_token
    end
    
    def test_forget_all
      http_basic_auth_for(users(:ben)) { UserSession.find }
      http_basic_auth_for(users(:zack)) { UserSession.find(:ziggity_zack) }
      assert UserSession.find
      assert UserSession.find(:ziggity_zack)
      User.forget_all
      assert !UserSession.find
      assert !UserSession.find(:ziggity_zack)
    end
    
    def test_forget
      ben = users(:ben)
      zack = users(:zack)
      http_basic_auth_for(ben) { UserSession.find }
      http_basic_auth_for(zack) { UserSession.find(:ziggity_zack) }

      assert ben.reload.logged_in?
      assert zack.reload.logged_in?

      ben.forget!

      assert !UserSession.find
      assert UserSession.find(:ziggity_zack)
    end
  end
end

Version data entries

50 entries across 50 versions & 15 rubygems

Version Path
authlogic-2.1.11 test/acts_as_authentic_test/persistence_token_test.rb
authlogic-2.1.10 test/acts_as_authentic_test/persistence_token_test.rb
binarylogic-authlogic-2.1.0 test/acts_as_authentic_test/persistence_token_test.rb
binarylogic-authlogic-2.1.1 test/acts_as_authentic_test/persistence_token_test.rb
crankharder-authlogic-2.1.1 test/acts_as_authentic_test/persistence_token_test.rb
jlecour-authlogic-2.1.2 test/acts_as_authentic_test/persistence_token_test.rb
kschrader-authlogic-2.1.2 test/acts_as_authentic_test/persistence_token_test.rb
kschrader-authlogic-2.1.3 test/acts_as_authentic_test/persistence_token_test.rb
authlogic-2.1.8 test/acts_as_authentic_test/persistence_token_test.rb
authlogic-2.1.7 test/acts_as_authentic_test/persistence_token_test.rb
expertiza-authlogic-2.1.6.1 test/acts_as_authentic_test/persistence_token_test.rb
wulffeld_authlogic-2.1.3 test/acts_as_authentic_test/persistence_token_test.rb
authlogic-2.1.6 test/acts_as_authentic_test/persistence_token_test.rb
lockbox_middleware-1.2.1 vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/persistence_token_test.rb
Empact-authlogic-2.1.5 test/acts_as_authentic_test/persistence_token_test.rb
authlogic-2.1.5 test/acts_as_authentic_test/persistence_token_test.rb
authlogic-2.1.4 test/acts_as_authentic_test/persistence_token_test.rb
Empact-authlogic-2.1.4 test/acts_as_authentic_test/persistence_token_test.rb
namxam-authlogic-2.1.3.1 test/acts_as_authentic_test/persistence_token_test.rb
drogus-authlogic-2.1.3 test/acts_as_authentic_test/persistence_token_test.rb