Revert "Merge pull request #7797 from senny/7459_prefix_tempalte_assertion_variables"

This reverts commit 2bad605873.

Conflicts:
	actionpack/CHANGELOG.md

Reason: This added a regression related with shoulda-matchers, since it
is expecting the instance variable @layouts

See 9e1188eea6/lib/shoulda/matchers/action_controller/render_with_layout_matcher.rb (L74)

This will introduce back #7459 but this stable release will be backward compatible.
Related with #8068.
This commit is contained in:
Rafael Mendonça França
2012-10-30 23:51:10 -02:00
parent 37c60c91f3
commit 6b7cd20ab3
3 changed files with 31 additions and 23 deletions

View File

@@ -1,5 +1,13 @@
## Rails 3.2.9 (unreleased) ##
* Revert the rename of internal variable on ActionController::TemplateAssertions to prevent
naming collisions. This added a regression related with shoulda-matchers, since it is
expecting the [instance variable @layouts](https://github.com/thoughtbot/shoulda-matchers/blob/9e1188eea68c47d9a56ce6280e45027da6187ab1/lib/shoulda/matchers/action_controller/render_with_layout_matcher.rb#L74).
This will introduce back #7459 but this stable release will be backward compatible.
Fixes #8068
*Rafael Mendonça França*
* Accept :remote as symbolic option for `link_to` helper. *Riley Lynch*
* Warn when the `:locals` option is passed to `assert_template` outside of a view test case

View File

@@ -14,13 +14,13 @@ module ActionController
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]
@_layouts[path] += 1
@layouts[path] += 1
end
ActiveSupport::Notifications.subscribe("!render_template.action_view") do |name, start, finish, id, payload|
@@ -28,11 +28,11 @@ module ActionController
next unless path
partial = path =~ /^.*\/_[^\/]*$/
if partial
@_partials[path] += 1
@_partials[path.split("/").last] += 1
@_templates[path] += 1
@partials[path] += 1
@partials[path.split("/").last] += 1
@templates[path] += 1
else
@_templates[path] += 1
@templates[path] += 1
end
end
end
@@ -43,9 +43,9 @@ module ActionController
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
@@ -74,7 +74,7 @@ module ActionController
case options
when NilClass, Regexp, String, Symbol
options = options.to_s if Symbol === options
rendered = @_templates
rendered = @templates
msg = build_message(message,
"expecting <?> but rendering with <?>",
options, rendered.keys.join(', '))
@@ -96,15 +96,15 @@ module ActionController
if expected_layout = options[:layout]
msg = build_message(message,
"expecting layout <?> but action rendered <?>",
expected_layout, @_layouts.keys)
expected_layout, @layouts.keys)
case expected_layout
when String
assert(@_layouts.keys.include?(expected_layout), msg)
assert(@layouts.keys.include?(expected_layout), msg)
when Regexp
assert(@_layouts.keys.any? {|l| l =~ expected_layout }, msg)
assert(@layouts.keys.any? {|l| l =~ expected_layout }, msg)
when nil
assert(@_layouts.empty?, msg)
assert(@layouts.empty?, msg)
end
end
@@ -119,7 +119,7 @@ module ActionController
warn "the :locals option to #assert_template is only supported in a ActionView::TestCase"
end
elsif expected_count = options[:count]
actual_count = @_partials[expected_partial]
actual_count = @partials[expected_partial]
msg = build_message(message,
"expecting ? to be rendered ? time(s) but rendered ? time(s)",
expected_partial, expected_count, actual_count)
@@ -127,11 +127,11 @@ module ActionController
else
msg = build_message(message,
"expecting partial <?> but action rendered <?>",
options[:partial], @_partials.keys)
assert(@_partials.include?(expected_partial), msg)
options[:partial], @partials.keys)
assert(@partials.include?(expected_partial), msg)
end
else
assert @_partials.empty?,
assert @partials.empty?,
"Expected no partials to be rendered"
end
end

View File

@@ -193,16 +193,16 @@ module ActionView
@_result
@_routes
@controller
@_layouts
@layouts
@locals
@method_name
@output_buffer
@_partials
@partials
@passed
@rendered
@request
@routes
@_templates
@templates
@options
@test_passed
@view