Fixed usage of #attribute_present? in UserPreference (#13008).

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@12126 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang 2013-09-10 17:39:49 +00:00
parent 15ab64488a
commit 06efcaddfa
2 changed files with 7 additions and 2 deletions

View File

@ -33,7 +33,7 @@ class UserPreference < ActiveRecord::Base
end
def [](attr_name)
if attribute_present? attr_name
if has_attribute? attr_name
super
else
others ? others[attr_name] : nil
@ -41,7 +41,7 @@ class UserPreference < ActiveRecord::Base
end
def []=(attr_name, value)
if attribute_present? attr_name
if has_attribute? attr_name
super
else
h = (read_attribute(:others) || {}).dup

View File

@ -55,6 +55,11 @@ class UserPreferenceTest < ActiveSupport::TestCase
assert_kind_of Hash, up.others
end
def test_others_should_be_blank_after_initialization
pref = User.new.pref
assert_equal({}, pref.others)
end
def test_reading_value_from_nil_others_hash
up = UserPreference.new(:user => User.new)
up.others = nil