Skip to content
Browse files

prefix TemplateAssertions ivars (#7459)

  • Loading branch information...
1 parent d0ad97b commit bb0f4a1234e88fc4d100ad850f1efc18dd89cfc5 @senny senny committed with senny Sep 30, 2012
Showing with 29 additions and 23 deletions.
  1. +6 −0 actionpack/CHANGELOG.md
  2. +20 −20 actionpack/lib/action_controller/test_case.rb
  3. +3 −3 actionpack/lib/action_view/test_case.rb
View
6 actionpack/CHANGELOG.md
@@ -1,5 +1,11 @@
## Rails 4.0.0 (unreleased) ##
+* Rename internal variables on ActionController::TemplateAssertions to prevent
+ naming collisions. @partials, @templates and @layouts are now prefixed with an underscore.
+ Fix #7459
+
+ *Yves Senn*
+
* `resource` and `resources` don't modify the passed options hash
Fix #7777
View
40 actionpack/lib/action_controller/test_case.rb
@@ -12,16 +12,16 @@ module TemplateAssertions
end
def setup_subscriptions
- @partials = Hash.new(0)
- @templates = Hash.new(0)
- @layouts = Hash.new(0)
+ @_partials = Hash.new(0)
+ @_templates = Hash.new(0)
+ @_layouts = Hash.new(0)
ActiveSupport::Notifications.subscribe("render_template.action_view") do |name, start, finish, id, payload|
path = payload[:layout]
if path
- @layouts[path] += 1
+ @_layouts[path] += 1
if path =~ /^layouts\/(.*)/
- @layouts[$1] += 1
+ @_layouts[$1] += 1
end
end
end
@@ -32,11 +32,11 @@ def setup_subscriptions
partial = path =~ /^.*\/_[^\/]*$/
if partial
- @partials[path] += 1
- @partials[path.split("/").last] += 1
+ @_partials[path] += 1
+ @_partials[path.split("/").last] += 1
end
- @templates[path] += 1
+ @_templates[path] += 1
end
end
@@ -46,9 +46,9 @@ def teardown_subscriptions
end
def process(*args)
- @partials = Hash.new(0)
- @templates = Hash.new(0)
- @layouts = Hash.new(0)
+ @_partials = Hash.new(0)
+ @_templates = Hash.new(0)
+ @_layouts = Hash.new(0)
super
end
@@ -88,7 +88,7 @@ def assert_template(options = {}, message = nil)
case options
when NilClass, Regexp, String, Symbol
options = options.to_s if Symbol === options
- rendered = @templates
+ rendered = @_templates
msg = message || sprintf("expecting <%s> but rendering with <%s>",
options.inspect, rendered.keys)
matches_template =
@@ -109,15 +109,15 @@ def assert_template(options = {}, message = nil)
if options.key?(:layout)
expected_layout = options[:layout]
msg = message || sprintf("expecting layout <%s> but action rendered <%s>",
- expected_layout, @layouts.keys)
+ expected_layout, @_layouts.keys)
case expected_layout
when String, Symbol
- assert_includes @layouts.keys, expected_layout.to_s, msg
+ assert_includes @_layouts.keys, expected_layout.to_s, msg
when Regexp
- assert(@layouts.keys.any? {|l| l =~ expected_layout }, msg)
+ assert(@_layouts.keys.any? {|l| l =~ expected_layout }, msg)
when nil, false
- assert(@layouts.empty?, msg)
+ assert(@_layouts.empty?, msg)
end
end
@@ -128,17 +128,17 @@ def assert_template(options = {}, message = nil)
assert_equal(v, actual_locals[k])
end
elsif expected_count = options[:count]
- actual_count = @partials[expected_partial]
+ actual_count = @_partials[expected_partial]
msg = message || sprintf("expecting %s to be rendered %s time(s) but rendered %s time(s)",
expected_partial, expected_count, actual_count)
assert(actual_count == expected_count.to_i, msg)
else
msg = message || sprintf("expecting partial <%s> but action rendered <%s>",
- options[:partial], @partials.keys)
- assert_includes @partials, expected_partial, msg
+ options[:partial], @_partials.keys)
+ assert_includes @_partials, expected_partial, msg
end
elsif options.key?(:partial)
- assert @partials.empty?,
+ assert @_partials.empty?,
"Expected no partials to be rendered"
end
else
View
6 actionpack/lib/action_view/test_case.rb
@@ -196,17 +196,17 @@ def view
:@_result,
:@_routes,
:@controller,
- :@layouts,
+ :@_layouts,
:@locals,
:@method_name,
:@output_buffer,
- :@partials,
+ :@_partials,
:@passed,
:@rendered,
:@request,
:@routes,
:@tagged_logger,
- :@templates,
+ :@_templates,
:@options,
:@test_passed,
:@view,

0 comments on commit bb0f4a1

Please sign in to comment.
Something went wrong with that request. Please try again.