Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

62 lines (52 sloc) 2.196 kb
require 'test_helper'
module SessionTest
module MagicColumnsTest
class ConfigTest < ActiveSupport::TestCase
def test_last_request_at_threshold_config
UserSession.last_request_at_threshold = 2.minutes
assert_equal 2.minutes, UserSession.last_request_at_threshold
UserSession.last_request_at_threshold 0
assert_equal 0, UserSession.last_request_at_threshold
end
end
class InstanceMethodsTest < ActiveSupport::TestCase
def test_after_persisting_set_last_request_at
ben = users(:ben)
assert !UserSession.create(ben).new_session?
set_cookie_for(ben)
old_last_request_at = ben.last_request_at
assert UserSession.find
ben.reload
assert ben.last_request_at != old_last_request_at
end
def test_valid_increase_failed_login_count
ben = users(:ben)
old_failed_login_count = ben.failed_login_count
assert UserSession.create(:login => ben.login, :password => "wrong").new_session?
ben.reload
assert_equal old_failed_login_count + 1, ben.failed_login_count
end
def test_before_save_update_info
ben = users(:ben)
# increase failed login count
assert UserSession.create(:login => ben.login, :password => "wrong").new_session?
ben.reload
# grab old values
old_login_count = ben.login_count
old_failed_login_count = ben.failed_login_count
old_last_login_at = ben.last_login_at
old_current_login_at = ben.current_login_at
old_last_login_ip = ben.last_login_ip
old_current_login_ip = ben.current_login_ip
assert !UserSession.create(:login => ben.login, :password => "benrocks").new_session?
ben.reload
assert_equal old_login_count + 1, ben.login_count
assert_equal 0, ben.failed_login_count
assert_equal old_current_login_at, ben.last_login_at
assert ben.current_login_at != old_current_login_at
assert_equal old_current_login_ip, ben.last_login_ip
assert_equal "1.1.1.1", ben.current_login_ip
end
end
end
end
Jump to Line
Something went wrong with that request. Please try again.