diff options
Diffstat (limited to 'activemodel/test')
-rw-r--r-- | activemodel/test/cases/secure_password_test.rb | 13 | ||||
-rw-r--r-- | activemodel/test/models/user.rb | 3 |
2 files changed, 15 insertions, 1 deletions
diff --git a/activemodel/test/cases/secure_password_test.rb b/activemodel/test/cases/secure_password_test.rb index 9423df2c09..abbd182f66 100644 --- a/activemodel/test/cases/secure_password_test.rb +++ b/activemodel/test/cases/secure_password_test.rb @@ -184,9 +184,13 @@ class SecurePasswordTest < ActiveModel::TestCase test "authenticate" do @user.password = "secret" + @user.activation_token = "new_token" assert !@user.authenticate("wrong") assert @user.authenticate("secret") + + assert !@user.authenticate("wrong", :activation_token) + assert @user.authenticate("new_token", :activation_token) end test "Password digest cost defaults to bcrypt default cost when min_cost is false" do @@ -215,4 +219,13 @@ class SecurePasswordTest < ActiveModel::TestCase @user.password = "secret" assert_equal BCrypt::Engine::MIN_COST, @user.password_digest.cost end + + test "regenerate attribute method" do + old_digest = @user.activation_token_digest + @user.regenerate_activation_token + + assert_not_nil @user.activation_token + assert_not_nil @user.activation_token_digest + assert_not_equal old_digest, @user.activation_token_digest + end end diff --git a/activemodel/test/models/user.rb b/activemodel/test/models/user.rb index 6556b1a7d9..ab424efb9b 100644 --- a/activemodel/test/models/user.rb +++ b/activemodel/test/models/user.rb @@ -5,6 +5,7 @@ class User define_model_callbacks :create has_secure_password + has_secure_password :activation_token, validations: false - attr_accessor :password_digest + attr_accessor :password_digest, :activation_token_digest end |