diff options
author | Rick Olson <technoweenie@gmail.com> | 2006-09-01 16:09:18 +0000 |
---|---|---|
committer | Rick Olson <technoweenie@gmail.com> | 2006-09-01 16:09:18 +0000 |
commit | e4a4287c971f6e61f59815988f5fc69176cb14de (patch) | |
tree | bf1237a7899e023ff9bf54d449af4ad517265cc6 /activesupport/test | |
parent | 5f175edde59e65b991d84fe30cad2b102fc7347b (diff) | |
download | rails-e4a4287c971f6e61f59815988f5fc69176cb14de.tar.gz rails-e4a4287c971f6e61f59815988f5fc69176cb14de.tar.bz2 rails-e4a4287c971f6e61f59815988f5fc69176cb14de.zip |
Fix cases where empty xml nodes weren't being translated to nil in Hash.create_from_xml [Rick Olson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4895 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activesupport/test')
-rw-r--r-- | activesupport/test/core_ext/hash_ext_test.rb | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/activesupport/test/core_ext/hash_ext_test.rb b/activesupport/test/core_ext/hash_ext_test.rb index f0a50ec5fe..d2372dcc32 100644 --- a/activesupport/test/core_ext/hash_ext_test.rb +++ b/activesupport/test/core_ext/hash_ext_test.rb @@ -339,6 +339,30 @@ class HashToXmlTest < Test::Unit::TestCase assert_equal expected_topic_hash, Hash.create_from_xml(topic_xml)["topic"] end + def test_single_record_from_xml_with_nil_values + topic_xml = <<-EOT + <topic> + <title></title> + <id type="integer"></id> + <approved type="boolean"></approved> + <written-on type="date"></written-on> + <viewed-at type="datetime"></viewed-at> + <parent-id></parent-id> + </topic> + EOT + + expected_topic_hash = { + :title => nil, + :id => nil, + :approved => nil, + :written_on => nil, + :viewed_at => nil, + :parent_id => nil + }.stringify_keys + + assert_equal expected_topic_hash, Hash.create_from_xml(topic_xml)["topic"] + end + def test_multiple_records_from_xml topics_xml = <<-EOT <topics> |