diff options
author | Oscar Del Ben <info@oscardelben.com> | 2012-04-24 19:16:01 +0200 |
---|---|---|
committer | Oscar Del Ben <info@oscardelben.com> | 2012-04-24 19:16:01 +0200 |
commit | 692b3b6b6a565a27b968db8027daabcc766cfede (patch) | |
tree | 2009b739bf14875d5e369bd104a9ab2edfb21e02 /activemodel | |
parent | 71bd5096beb541866dec7599865b5ea7a693482d (diff) | |
download | rails-692b3b6b6a565a27b968db8027daabcc766cfede.tar.gz rails-692b3b6b6a565a27b968db8027daabcc766cfede.tar.bz2 rails-692b3b6b6a565a27b968db8027daabcc766cfede.zip |
Fix secure_password setter
Diffstat (limited to 'activemodel')
-rw-r--r-- | activemodel/lib/active_model/secure_password.rb | 2 | ||||
-rw-r--r-- | activemodel/test/cases/secure_password_test.rb | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/activemodel/lib/active_model/secure_password.rb b/activemodel/lib/active_model/secure_password.rb index e7a57cf691..111204d67d 100644 --- a/activemodel/lib/active_model/secure_password.rb +++ b/activemodel/lib/active_model/secure_password.rb @@ -64,8 +64,8 @@ module ActiveModel # Encrypts the password into the password_digest attribute. def password=(unencrypted_password) - @password = unencrypted_password unless unencrypted_password.blank? + @password = unencrypted_password self.password_digest = BCrypt::Password.create(unencrypted_password) end end diff --git a/activemodel/test/cases/secure_password_test.rb b/activemodel/test/cases/secure_password_test.rb index 4338a3fc53..c451cc1aca 100644 --- a/activemodel/test/cases/secure_password_test.rb +++ b/activemodel/test/cases/secure_password_test.rb @@ -19,6 +19,12 @@ class SecurePasswordTest < ActiveModel::TestCase assert !@user.valid?, 'user should be invalid' end + test "blank password doesn't override previous password" do + @user.password = 'test' + @user.password = '' + assert_equal @user.password, 'test' + end + test "password must be present" do assert !@user.valid? assert_equal 1, @user.errors.size |