diff options
Diffstat (limited to 'actionpack/test/controller/new_base/render_rjs_test.rb')
-rw-r--r-- | actionpack/test/controller/new_base/render_rjs_test.rb | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/actionpack/test/controller/new_base/render_rjs_test.rb b/actionpack/test/controller/new_base/render_rjs_test.rb new file mode 100644 index 0000000000..8c47b38ab6 --- /dev/null +++ b/actionpack/test/controller/new_base/render_rjs_test.rb @@ -0,0 +1,50 @@ +require 'abstract_unit' + +module RenderRjs + class BasicController < ActionController::Base + self.view_paths = [ActionView::FixtureResolver.new( + "render_rjs/basic/index.js.rjs" => "page[:customer].replace_html render(:partial => 'customer')", + "render_rjs/basic/index_html.js.rjs" => "page[:customer].replace_html :partial => 'customer'", + "render_rjs/basic/_customer.js.erb" => "JS Partial", + "render_rjs/basic/_customer.html.erb" => "HTML Partial", + "render_rjs/basic/index_locale.js.rjs" => "page[:customer].replace_html :partial => 'customer'", + "render_rjs/basic/_customer.da.html.erb" => "Danish HTML Partial", + "render_rjs/basic/_customer.da.js.erb" => "Danish JS Partial" + )] + + def index + render + end + + def index_locale + old_locale, I18n.locale = I18n.locale, :da + end + end + + class TestBasic < Rack::TestCase + testing BasicController + + def setup + @old_locale = I18n.locale + end + + def teardown + I18n.locale = @old_locale + end + + test "rendering a partial in an RJS template should pick the JS template over the HTML one" do + get :index, "format" => "js" + assert_response("$(\"customer\").update(\"JS Partial\");") + end + + test "replacing an element with a partial in an RJS template should pick the HTML template over the JS one" do + get :index_html, "format" => "js" + assert_response("$(\"customer\").update(\"HTML Partial\");") + end + + test "replacing an element with a partial in an RJS template with a locale should pick the localed HTML template" do + get :index_locale, "format" => "js" + assert_response("$(\"customer\").update(\"Danish HTML Partial\");") + end + end +end |