diff options
author | robertomiranda <rjmaltamar@gmail.com> | 2014-12-28 17:24:10 -0500 |
---|---|---|
committer | robertomiranda <rjmaltamar@gmail.com> | 2015-01-04 11:31:37 -0500 |
commit | 5a58ba3366ec6092fcd0e69340acd93f347d2576 (patch) | |
tree | 15aadec84d8cd0749aeac947cdeafcdb52bbdf9a /activerecord/test/cases | |
parent | 6489a84eb69162ccefac106d08bae1c31a2b4fa5 (diff) | |
download | rails-5a58ba3366ec6092fcd0e69340acd93f347d2576.tar.gz rails-5a58ba3366ec6092fcd0e69340acd93f347d2576.tar.bz2 rails-5a58ba3366ec6092fcd0e69340acd93f347d2576.zip |
Add has_secure_token to Active Record
Update SecureToken Docs
Add Changelog entry for has_secure_token [ci skip]
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r-- | activerecord/test/cases/secure_token_test.rb | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/activerecord/test/cases/secure_token_test.rb b/activerecord/test/cases/secure_token_test.rb new file mode 100644 index 0000000000..400fce8c6e --- /dev/null +++ b/activerecord/test/cases/secure_token_test.rb @@ -0,0 +1,39 @@ +require 'cases/helper' +require 'models/user' + +class SecureTokenTest < ActiveRecord::TestCase + setup do + @user = User.new + end + + test "assing unique token values" do + @user.save + assert_not_nil @user.token + assert_not_nil @user.auth_token + end + + test "regenerate the secure key for the attribute" do + @user.save + old_token = @user.token + old_auth_token = @user.auth_token + @user.regenerate_token + @user.regenerate_auth_token + + assert_not_equal @user.token, old_token + assert_not_equal @user.auth_token, old_auth_token + end + + test "raise and exception when with 10 attemps is reached" do + User.stubs(:exists?).returns(*Array.new(10, true)) + assert_raises(RuntimeError) do + @user.save + end + end + + test "assing unique token after 9 attemps reached" do + User.stubs(:exists?).returns(*Array.new(10){ |i| i == 9 ? false : true}) + @user.save + assert_not_nil @user.token + assert_not_nil @user.auth_token + end +end |