Permalink
Browse files

Fix rendering html partials from an rjs template

Signed-off-by: Joshua Peek <josh@joshpeek.com>
  • Loading branch information...
sstephenson authored and josh committed Dec 4, 2008
1 parent 566a3dc commit ab211bf592f52fbde7853961030046ea1d387851
@@ -275,7 +275,7 @@ def template_format
if defined? @template_format
@template_format
elsif controller && controller.respond_to?(:request)
- @template_format = controller.request.template_format
+ @template_format = controller.request.template_format.to_sym
else
@template_format = :html
end
@@ -255,6 +255,12 @@ def render_html_only_partial_within_inline
render :inline => "Hello world <%= helper_method_to_render_to_string :partial => 'test/partial_with_only_html_version' %>"
end
+ def render_implicit_html_template
+ end
+
+ def render_explicit_html_template
+ end
+
def formatted_html_erb
end
@@ -947,6 +953,24 @@ def test_rendering_html_only_partial_within_inline_with_js
assert_equal "Hello world partial with only html version", @response.body
end
+ def test_render_in_an_rjs_template_should_pick_html_templates_when_available
+ [:js, "js"].each do |format|
+ assert_nothing_raised do
+ get :render_implicit_html_template, :format => format
+ assert_equal %(document.write("Hello world\\n");), @response.body
+ end
+ end
+ end
+
+ def test_explicitly_rendering_an_html_template_with_implicit_html_template_renders_should_be_possible_from_an_rjs_template
+ [:js, "js"].each do |format|
+ assert_nothing_raised do
+ get :render_explicit_html_template, :format => format
+ assert_equal %(document.write("Hello world\\n");), @response.body
+ end
+ end
+ end
+
def test_should_render_formatted_template
get :formatted_html_erb
assert_equal 'formatted html erb', @response.body
@@ -0,0 +1 @@
+<%= render :partial => "two" %> world
@@ -0,0 +1 @@
+Hello
@@ -0,0 +1 @@
+page.call "document.write", render(:partial => "one.html.erb")
@@ -0,0 +1 @@
+page.call "document.write", render(:partial => "one")

0 comments on commit ab211bf

Please sign in to comment.