diff options
author | Matthew Eagar <meagar@gmail.com> | 2017-01-24 20:40:34 -0500 |
---|---|---|
committer | Matthew Eagar <meagar@gmail.com> | 2017-01-25 09:23:43 -0500 |
commit | e524327e510996ad741ba44c5403fe7353519e40 (patch) | |
tree | 64a0ef40a21c0bef7beff4da42f81c6bac941ab3 /actionview/test/template | |
parent | 6363fa1a6f9ef43b3e89e8cf5873617e851414d4 (diff) | |
download | rails-e524327e510996ad741ba44c5403fe7353519e40.tar.gz rails-e524327e510996ad741ba44c5403fe7353519e40.tar.bz2 rails-e524327e510996ad741ba44c5403fe7353519e40.zip |
Add partial iteration variable to template keys
When rendering heterogeneous collection using `render @collection` or
`render partial: @collection`, the expected `<partial_name>_iteration`
variable is missing due to `find_template` not having the name of the
iteration variable included in its cache keys.
Diffstat (limited to 'actionview/test/template')
-rw-r--r-- | actionview/test/template/render_test.rb | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/actionview/test/template/render_test.rb b/actionview/test/template/render_test.rb index d189b2aa87..7f76916b72 100644 --- a/actionview/test/template/render_test.rb +++ b/actionview/test/template/render_test.rb @@ -301,6 +301,15 @@ module RenderTestCases @view.render(partial: "test/local_inspector", collection: [ Customer.new("mary") ]) end + def test_render_partial_collection_with_different_partials_still_provides_partial_iteration + a = {} + b = {} + def a.to_partial_path; "test/partial_iteration_1"; end + def b.to_partial_path; "test/partial_iteration_2"; end + + assert_equal "local-variable\nlocal-variable", @controller_view.render([a, b]) + end + def test_render_partial_with_empty_collection_should_return_nil assert_nil @view.render(partial: "test/customer", collection: []) end |