aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSantiago Pastorino <santiago@wyeworks.com>2010-04-22 12:33:54 -0300
committerJeremy Kemper <jeremy@bitsweat.net>2010-04-22 09:06:55 -0700
commit920df0a4758d003dc284c13e439e0b9f60a6e6f0 (patch)
treef273a8e72873dce59e717d948e410df47be18940
parent2472f1026a7d3b3309937568204a5b46b60c2c3c (diff)
downloadrails-920df0a4758d003dc284c13e439e0b9f60a6e6f0.tar.gz
rails-920df0a4758d003dc284c13e439e0b9f60a6e6f0.tar.bz2
rails-920df0a4758d003dc284c13e439e0b9f60a6e6f0.zip
Make ActionDispatch url_for use HWIA symbolize_keys
Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
-rw-r--r--actionpack/lib/action_dispatch/routing/url_for.rb2
-rw-r--r--actionpack/test/controller/url_for_test.rb10
2 files changed, 8 insertions, 4 deletions
diff --git a/actionpack/lib/action_dispatch/routing/url_for.rb b/actionpack/lib/action_dispatch/routing/url_for.rb
index 394d5a6248..db17615d92 100644
--- a/actionpack/lib/action_dispatch/routing/url_for.rb
+++ b/actionpack/lib/action_dispatch/routing/url_for.rb
@@ -128,7 +128,7 @@ module ActionDispatch
when String
options
when nil, Hash
- _router.url_for(url_options.merge(options || {}).symbolize_keys)
+ _router.url_for(url_options.merge((options || {}).symbolize_keys))
else
polymorphic_url(options)
end
diff --git a/actionpack/test/controller/url_for_test.rb b/actionpack/test/controller/url_for_test.rb
index 501f928e05..907acf9573 100644
--- a/actionpack/test/controller/url_for_test.rb
+++ b/actionpack/test/controller/url_for_test.rb
@@ -258,13 +258,17 @@ module AbstractController
end
def test_with_stringified_keys
- assert_equal("/c/a", W.new.url_for('controller' => 'c', 'action' => 'a', 'only_path' => true))
assert_equal("/c", W.new.url_for('controller' => 'c', 'only_path' => true))
+ assert_equal("/c/a", W.new.url_for('controller' => 'c', 'action' => 'a', 'only_path' => true))
end
def test_with_hash_with_indifferent_access
- assert_equal("/c/a", W.new.url_for(HashWithIndifferentAccess.new('controller' => 'c', 'action' => 'a', 'only_path' => true)))
+ W.default_url_options[:controller] = 'd'
+ W.default_url_options[:only_path] = false
assert_equal("/c", W.new.url_for(HashWithIndifferentAccess.new('controller' => 'c', 'only_path' => true)))
+
+ W.default_url_options[:action] = 'b'
+ assert_equal("/c/a", W.new.url_for(HashWithIndifferentAccess.new('controller' => 'c', 'action' => 'a', 'only_path' => true)))
end
private
@@ -273,4 +277,4 @@ module AbstractController
end
end
end
-end \ No newline at end of file
+end