From 7b1a42c05707c0e1f793bada3a448fd6f8630f5a Mon Sep 17 00:00:00 2001 From: Aditya Kapoor Date: Thu, 3 Jul 2014 02:51:12 +0530 Subject: [PATCH] automatically include ActiveModel::Validations when include ActiveModel::SecurePassword --- activemodel/lib/active_model/secure_password.rb | 1 + activemodel/test/cases/secure_password_test.rb | 5 +++++ activemodel/test/models/user.rb | 1 - activemodel/test/models/visitor.rb | 1 - 4 files changed, 6 insertions(+), 2 deletions(-) diff --git a/activemodel/lib/active_model/secure_password.rb b/activemodel/lib/active_model/secure_password.rb index fdfd8cb147b76..88e578e626560 100644 --- a/activemodel/lib/active_model/secure_password.rb +++ b/activemodel/lib/active_model/secure_password.rb @@ -1,6 +1,7 @@ module ActiveModel module SecurePassword extend ActiveSupport::Concern + include ActiveModel::Validations # BCrypt hash function can handle maximum 72 characters, and if we pass # password of length more than 72 characters it ignores extra characters. diff --git a/activemodel/test/cases/secure_password_test.rb b/activemodel/test/cases/secure_password_test.rb index e59f00c8c51c3..9e68cceb5f66f 100644 --- a/activemodel/test/cases/secure_password_test.rb +++ b/activemodel/test/cases/secure_password_test.rb @@ -20,6 +20,11 @@ class SecurePasswordTest < ActiveModel::TestCase ActiveModel::SecurePassword.min_cost = @original_min_cost end + test "user object should respond to valid?" do + assert_respond_to @visitor, :valid? + assert_respond_to @user, :valid? + end + test "create/update without validations" do assert @visitor.valid?(:create), 'visitor should be valid' assert @visitor.valid?(:update), 'visitor should be valid' diff --git a/activemodel/test/models/user.rb b/activemodel/test/models/user.rb index cbe259b1ad897..1ec6001c485d4 100644 --- a/activemodel/test/models/user.rb +++ b/activemodel/test/models/user.rb @@ -1,6 +1,5 @@ class User extend ActiveModel::Callbacks - include ActiveModel::Validations include ActiveModel::SecurePassword define_model_callbacks :create diff --git a/activemodel/test/models/visitor.rb b/activemodel/test/models/visitor.rb index 4d7f4be097ff1..22ad1a3c3dc12 100644 --- a/activemodel/test/models/visitor.rb +++ b/activemodel/test/models/visitor.rb @@ -1,6 +1,5 @@ class Visitor extend ActiveModel::Callbacks - include ActiveModel::Validations include ActiveModel::SecurePassword define_model_callbacks :create