1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

implicitly rendering a js response should not use the default layout [#1844 state:resolved]

Signed-off-by: Joshua Peek <josh@joshpeek.com>
This commit is contained in:
Adam McCrea 2009-02-05 15:23:05 -06:00 committed by Joshua Peek
parent b6e7a76cc5
commit 06182ea02e
3 changed files with 12 additions and 2 deletions

View file

@ -173,7 +173,7 @@ module ActionController #:nodoc:
end
def default_layout(format) #:nodoc:
layout = read_inheritable_attribute(:layout)
layout = read_inheritable_attribute(:layout) unless format == :js
return layout unless read_inheritable_attribute(:auto_layout)
find_layout(layout, format)
end

View file

@ -277,6 +277,9 @@ class TestController < ActionController::Base
def render_implicit_html_template_from_xhr_request
end
def render_implicit_js_template_without_layout
end
def formatted_html_erb
end
@ -681,7 +684,8 @@ class TestController < ActionController::Base
"render_with_explicit_string_template",
"render_js_with_explicit_template",
"render_js_with_explicit_action_template",
"delete_with_js", "update_page", "update_page_with_instance_variables"
"delete_with_js", "update_page", "update_page_with_instance_variables",
"render_implicit_js_template_without_layout"
"layouts/standard"
when "action_talk_to_layout", "layout_overriding_layout"
@ -1018,6 +1022,11 @@ class RenderTest < ActionController::TestCase
assert_equal "Hello HTML!", @response.body
end
def test_should_implicitly_render_js_template_without_layout
get :render_implicit_js_template_without_layout, :format => :js
assert_no_match /<html>/, @response.body
end
def test_should_render_formatted_template
get :formatted_html_erb
assert_equal 'formatted html erb', @response.body

View file

@ -0,0 +1 @@
alert('hello');