Correct typo in before_type_cast code. Closes #11165 [amishyn]

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8898 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
Michael Koziarski 2008-02-19 21:01:10 +00:00
parent ec98a720ec
commit e32149ad60
2 changed files with 18 additions and 2 deletions

@ -2223,7 +2223,7 @@ def attributes(options = nil)
# Returns a hash of attributes before typecasting and deserialization.
def attributes_before_type_cast
self.attribute_names.inject({}) do |attrs, name|
attrs[name] = read_attribute_before_typecast(name)
attrs[name] = read_attribute_before_type_cast(name)
attrs
end
end

@ -125,6 +125,22 @@ def test_array_content
assert_equal(%w( one two three ), Topic.find(topic.id).content)
end
def test_read_attributes_before_type_cast
category = Category.new({:name=>"Test categoty", :type => nil})
category_attrs = {"name"=>"Test categoty", "type" => nil}
assert_equal category_attrs , category.attributes_before_type_cast
end
def test_read_attributes_before_type_cast_on_boolean
bool = Booleantest.create({ "value" => false })
assert_equal 0 , bool.attributes_before_type_cast["value"]
end
def test_read_attributes_before_type_cast_on_datetime
developer = Developer.find(:first)
assert_equal developer.created_at.to_s(:db) , developer.attributes_before_type_cast["created_at"]
end
def test_hash_content
topic = Topic.new
topic.content = { "one" => 1, "two" => 2 }
@ -877,7 +893,7 @@ def test_mass_assignment_protection_inheritance
end
def test_readonly_attributes
assert_equal Set.new([ 'title', 'comments_count' ]), ReadonlyTitlePost.readonly_attributes
assert_equal Set.new([ 'title' , 'comments_count' ]), ReadonlyTitlePost.readonly_attributes
post = ReadonlyTitlePost.create(:title => "cannot change this", :body => "changeable")
post.reload