assigns(:foo) should not convert @foo's keys to strings if it happens to be a hash

This commit is contained in:
Will Bryant 2011-10-15 22:38:28 +13:00
parent 2f689d462d
commit 185c3dbc6a
2 changed files with 7 additions and 1 deletions

@ -5,7 +5,8 @@
module ActionDispatch
module TestProcess
def assigns(key = nil)
assigns = @controller.view_assigns.with_indifferent_access
assigns = {}.with_indifferent_access
@controller.view_assigns.each {|k, v| assigns.regular_writer(k, v)}
key.nil? ? assigns : assigns[key]
end

@ -119,6 +119,7 @@ def delete_cookie
def test_assigns
@foo = "foo"
@foo_hash = {:foo => :bar}
render :nothing => true
end
@ -292,6 +293,10 @@ def test_assigns
assert_equal "foo", assigns("foo")
assert_equal "foo", assigns[:foo]
assert_equal "foo", assigns["foo"]
# but the assigned variable should not have its own keys stringified
expected_hash = { :foo => :bar }
assert_equal expected_hash, assigns(:foo_hash)
end
def test_view_assigns