From 63625388154043dd6cde755f62c095dad87ad173 Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Wed, 3 Nov 2010 11:02:42 -0700 Subject: add more tests surrounding camlize in xmlmini, refactor rename_key() --- activesupport/lib/active_support/xml_mini.rb | 8 ++------ activesupport/test/test_xml_mini.rb | 12 ++++++++++++ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/activesupport/lib/active_support/xml_mini.rb b/activesupport/lib/active_support/xml_mini.rb index a1728ab955..cddfcddb57 100644 --- a/activesupport/lib/active_support/xml_mini.rb +++ b/activesupport/lib/active_support/xml_mini.rb @@ -126,14 +126,10 @@ module ActiveSupport end def rename_key(key, options = {}) - camelize = options.has_key?(:camelize) && options[:camelize] + camelize = options[:camelize] dasherize = !options.has_key?(:dasherize) || options[:dasherize] if camelize - if options[:camelize] == :lower - key = key.camelize(:lower) - else - key = key.camelize - end + key = true == camelize ? key.camelize : key.camelize(camelize) end key = _dasherize(key) if dasherize key diff --git a/activesupport/test/test_xml_mini.rb b/activesupport/test/test_xml_mini.rb index b14a3e1546..309fa234bf 100644 --- a/activesupport/test/test_xml_mini.rb +++ b/activesupport/test/test_xml_mini.rb @@ -14,6 +14,14 @@ class XmlMiniTest < Test::Unit::TestCase assert_equal "my_key", ActiveSupport::XmlMini.rename_key("my_key", :dasherize => false) end + def test_rename_key_camelizes_with_camelize_false + assert_equal "my_key", ActiveSupport::XmlMini.rename_key("my_key", :camelize => false) + end + + def test_rename_key_camelizes_with_camelize_nil + assert_equal "my_key", ActiveSupport::XmlMini.rename_key("my_key", :camelize => nil) + end + def test_rename_key_camelizes_with_camelize_true assert_equal "MyKey", ActiveSupport::XmlMini.rename_key("my_key", :camelize => true) end @@ -22,6 +30,10 @@ class XmlMiniTest < Test::Unit::TestCase assert_equal "myKey", ActiveSupport::XmlMini.rename_key("my_key", :camelize => :lower) end + def test_rename_key_lower_camelizes_with_camelize_upper + assert_equal "MyKey", ActiveSupport::XmlMini.rename_key("my_key", :camelize => :upper) + end + def test_rename_key_does_not_dasherize_leading_underscores assert_equal "_id", ActiveSupport::XmlMini.rename_key("_id") end -- cgit v1.2.3