diff options
-rw-r--r-- | activesupport/lib/active_support/dependencies.rb | 2 | ||||
-rw-r--r-- | activesupport/test/core_ext/hash_ext_test.rb | 15 |
2 files changed, 9 insertions, 8 deletions
diff --git a/activesupport/lib/active_support/dependencies.rb b/activesupport/lib/active_support/dependencies.rb index 16c3bc1142..2cc812643f 100644 --- a/activesupport/lib/active_support/dependencies.rb +++ b/activesupport/lib/active_support/dependencies.rb @@ -153,7 +153,7 @@ module ActiveSupport #:nodoc: nesting.each do |namespace| begin - return Dependencies.load_missing_constant namespace.constantize, const_name + return Dependencies.load_missing_constant Inflector.constantize(namespace), const_name rescue NoMethodError then raise rescue NameError => e error ||= e diff --git a/activesupport/test/core_ext/hash_ext_test.rb b/activesupport/test/core_ext/hash_ext_test.rb index b2a9731578..7b2c10908f 100644 --- a/activesupport/test/core_ext/hash_ext_test.rb +++ b/activesupport/test/core_ext/hash_ext_test.rb @@ -940,13 +940,14 @@ class HashToXmlTest < Test::Unit::TestCase end def test_expansion_count_is_limited - expected = { - 'ActiveSupport::XmlMini_REXML' => 'RuntimeError', - 'ActiveSupport::XmlMini_Nokogiri' => 'Nokogiri::XML::SyntaxError', - 'ActiveSupport::XmlMini_NokogiriSAX' => 'RuntimeError', - 'ActiveSupport::XmlMini_LibXML' => 'LibXML::XML::Error', - 'ActiveSupport::XmlMini_LibXMLSAX' => 'LibXML::XML::Error', - }[ActiveSupport::XmlMini.backend.name].constantize + expected = + case ActiveSupport::XmlMini.backend.name + when 'ActiveSupport::XmlMini_REXML'; RuntimeError + when 'ActiveSupport::XmlMini_Nokogiri'; Nokogiri::XML::SyntaxError + when 'ActiveSupport::XmlMini_NokogiriSAX'; RuntimeError + when 'ActiveSupport::XmlMini_LibXML'; LibXML::XML::Error + when 'ActiveSupport::XmlMini_LibXMLSAX'; LibXML::XML::Error + end assert_raise expected do attack_xml = <<-EOT |