diff options
author | Guo Xiang Tan <tgx_world@hotmail.com> | 2014-07-24 10:59:29 +0800 |
---|---|---|
committer | Guo Xiang Tan <tgx_world@hotmail.com> | 2014-07-25 00:38:50 +0800 |
commit | cc10288e5fdded5d4410d16c4bf6c6da0b55a23b (patch) | |
tree | 14c531bf3b0f609375220899d4c5bbe6e0399a60 /actionpack/lib | |
parent | b17330cf391327f63fece617acdb57b35e341092 (diff) | |
download | rails-cc10288e5fdded5d4410d16c4bf6c6da0b55a23b.tar.gz rails-cc10288e5fdded5d4410d16c4bf6c6da0b55a23b.tar.bz2 rails-cc10288e5fdded5d4410d16c4bf6c6da0b55a23b.zip |
Bug fix for assert_template when opening a new session.
See https://github.com/rails/rails/pull/16234#commitcomment-7115670.
Diffstat (limited to 'actionpack/lib')
-rw-r--r-- | actionpack/lib/action_controller/test_case.rb | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/actionpack/lib/action_controller/test_case.rb b/actionpack/lib/action_controller/test_case.rb index 657924a16c..71cb224f22 100644 --- a/actionpack/lib/action_controller/test_case.rb +++ b/actionpack/lib/action_controller/test_case.rb @@ -12,8 +12,13 @@ module ActionController teardown :teardown_subscriptions end + RENDER_TEMPLATE_INSTANCE_VARIABLES = %w{partials templates layouts files}.freeze + def setup_subscriptions - reset_template_assertion + RENDER_TEMPLATE_INSTANCE_VARIABLES.each do |instance_variable| + instance_variable_set("@_#{instance_variable}", Hash.new(0)) + end + @_subscribers = [] @_subscribers << ActiveSupport::Notifications.subscribe("render_template.action_view") do |_name, _start, _finish, _id, payload| @@ -58,10 +63,9 @@ module ActionController end def reset_template_assertion - @_partials = Hash.new(0) - @_templates = Hash.new(0) - @_layouts = Hash.new(0) - @_files = Hash.new(0) + RENDER_TEMPLATE_INSTANCE_VARIABLES.each do |instance_variable| + instance_variable_get("@_#{instance_variable}").clear + end end # Asserts that the request was rendered with the appropriate template file or partials. |