aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport
diff options
context:
space:
mode:
Diffstat (limited to 'activesupport')
-rw-r--r--activesupport/CHANGELOG4
-rw-r--r--activesupport/lib/active_support/core_ext/hash/conversions.rb9
-rw-r--r--activesupport/test/core_ext/hash_ext_test.rb8
3 files changed, 14 insertions, 7 deletions
diff --git a/activesupport/CHANGELOG b/activesupport/CHANGELOG
index b2a5cd1cd8..570b9b0988 100644
--- a/activesupport/CHANGELOG
+++ b/activesupport/CHANGELOG
@@ -1,5 +1,7 @@
*SVN*
+* Hash.create_from_xml has been renamed to Hash.from_xml, alias will exist until Rails 2.0 [DHH]
+
* alias_method_chain works with accessor= methods also. #6153 [Caio Chassot]
* Fix loadable_constants_for_path to handle load paths that do not end with a slash. [Nicholas Seckar]
@@ -12,7 +14,7 @@
* Don't pad remaining places with in_groups_of if specified padding value is false. [Marcel Molina Jr.]
-* Fix cases where empty xml nodes weren't being translated to nil in Hash.create_from_xml [Rick Olson]
+* Fix cases where empty xml nodes weren't being translated to nil in Hash.create_from_xml [Rick Olso n]
<written-on type="date"></written-on> # => { :type => 'date' } # WRONG
<written-on type="date"></written-on> # => nil # RIGHT
diff --git a/activesupport/lib/active_support/core_ext/hash/conversions.rb b/activesupport/lib/active_support/core_ext/hash/conversions.rb
index fdc5a165b0..de67b0b00d 100644
--- a/activesupport/lib/active_support/core_ext/hash/conversions.rb
+++ b/activesupport/lib/active_support/core_ext/hash/conversions.rb
@@ -77,14 +77,19 @@ module ActiveSupport #:nodoc:
end
module ClassMethods
- def create_from_xml(xml)
+ def from_xml(xml)
# TODO: Refactor this into something much cleaner that doesn't rely on XmlSimple
undasherize_keys(typecast_xml_value(XmlSimple.xml_in(xml,
'forcearray' => false,
'forcecontent' => true,
'keeproot' => true,
'contentkey' => '__content__')
- ))
+ ))
+ end
+
+ def create_from_xml(xml)
+ ActiveSupport::Deprecation.warn("Hash.create_from_xml has been renamed to Hash.from_xml", caller)
+ from_xml(xml)
end
private
diff --git a/activesupport/test/core_ext/hash_ext_test.rb b/activesupport/test/core_ext/hash_ext_test.rb
index d2372dcc32..df4aadfbcc 100644
--- a/activesupport/test/core_ext/hash_ext_test.rb
+++ b/activesupport/test/core_ext/hash_ext_test.rb
@@ -336,7 +336,7 @@ class HashToXmlTest < Test::Unit::TestCase
:parent_id => nil
}.stringify_keys
- assert_equal expected_topic_hash, Hash.create_from_xml(topic_xml)["topic"]
+ assert_equal expected_topic_hash, Hash.from_xml(topic_xml)["topic"]
end
def test_single_record_from_xml_with_nil_values
@@ -360,7 +360,7 @@ class HashToXmlTest < Test::Unit::TestCase
:parent_id => nil
}.stringify_keys
- assert_equal expected_topic_hash, Hash.create_from_xml(topic_xml)["topic"]
+ assert_equal expected_topic_hash, Hash.from_xml(topic_xml)["topic"]
end
def test_multiple_records_from_xml
@@ -406,7 +406,7 @@ class HashToXmlTest < Test::Unit::TestCase
:parent_id => nil
}.stringify_keys
- assert_equal expected_topic_hash, Hash.create_from_xml(topics_xml)["topics"]["topic"].first
+ assert_equal expected_topic_hash, Hash.from_xml(topics_xml)["topics"]["topic"].first
end
def test_single_record_from_xml_with_attributes_other_than_type
@@ -429,7 +429,7 @@ class HashToXmlTest < Test::Unit::TestCase
:isfamily => "0",
}.stringify_keys
- assert_equal expected_topic_hash, Hash.create_from_xml(topic_xml)["rsp"]["photos"]["photo"]
+ assert_equal expected_topic_hash, Hash.from_xml(topic_xml)["rsp"]["photos"]["photo"]
end
def test_should_use_default_value_for_unknown_key