Refactor a bit to avoid two model attributes lookup
Tidy up tests a bit.
This commit is contained in:
parent
e80e0c9a89
commit
2261005ed5
|
@ -172,11 +172,7 @@ module Devise
|
|||
end
|
||||
|
||||
def apply_to_attribute_or_variable(attr, method)
|
||||
if self[attr]
|
||||
self[attr].try(method)
|
||||
else
|
||||
send(attr).try(method)
|
||||
end
|
||||
(self[attr] || send(attr)).try(method)
|
||||
end
|
||||
|
||||
module ClassMethods
|
||||
|
|
|
@ -16,16 +16,16 @@ class DatabaseAuthenticatableTest < ActiveSupport::TestCase
|
|||
test 'should downcase case insensitive keys that refer to virtual attributes when saving' do
|
||||
email = 'Foo@Bar1.com'
|
||||
confirmation = 'Foo@Bar1.com'
|
||||
pw = '12345678'
|
||||
user = UserWithVirtualAttributes.new(
|
||||
:email => email,
|
||||
:email_confirmation => confirmation,
|
||||
:password => pw,
|
||||
:password_confirmation => pw)
|
||||
attributes = valid_attributes(:email => email, :email_confirmation => confirmation)
|
||||
|
||||
assert_nothing_raised "ActiveRecord::RecordInvalid" do
|
||||
user = UserWithVirtualAttributes.new(attributes)
|
||||
assert_equal confirmation, user.email_confirmation
|
||||
|
||||
assert_nothing_raised ActiveRecord::RecordInvalid do
|
||||
user.save!
|
||||
end
|
||||
|
||||
assert_equal confirmation.downcase, user.email_confirmation
|
||||
end
|
||||
|
||||
test 'should remove whitespace from strip whitespace keys when saving' do
|
||||
|
|
|
@ -29,10 +29,6 @@ class ActiveSupport::TestCase
|
|||
:password_confirmation => '12345678' }.update(attributes)
|
||||
end
|
||||
|
||||
def new_user_with_class(klass=User, attributes={})
|
||||
klass.new(valid_attributes(attributes))
|
||||
end
|
||||
|
||||
def new_user(attributes={})
|
||||
User.new(valid_attributes(attributes))
|
||||
end
|
||||
|
|
|
@ -25,4 +25,3 @@ end
|
|||
|
||||
class Inheritable < Admin
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue