diff --git a/spec/private/core_ext/hash_spec.rb b/spec/private/core_ext/hash_spec.rb index dbd65a9..768cdb9 100644 --- a/spec/private/core_ext/hash_spec.rb +++ b/spec/private/core_ext/hash_spec.rb @@ -234,6 +234,44 @@ describe Hash, "from_xml" do Hash.from_xml(xml).should == hash end + + it "should correctly transform arrays" do + xml = <<-XML + + Los Angeles Zoo + + + Lion + + + Tiger + + + + XML + + hash = { + "zoo" => { + "name" => 'Los Angeles Zoo', + "animals" => [ + { "name" => 'Lion' }, + { "name" => 'Tiger' } + ] + } + } + + Hash.from_xml(xml).should == hash + end + + it "should correctly transform nil hash values" do + xml = <<-XML + + XML + + hash = {"name" => nil} + + Hash.from_xml(xml).should == hash + end end describe Hash, 'to_params' do