rails--rails/actionpack/test/controller/render_js_test.rb

44 lines
961 B
Ruby

require 'abstract_unit'
require 'controller/fake_models'
require 'pathname'
class RenderJSTest < ActionController::TestCase
class TestController < ActionController::Base
protect_from_forgery
def self.controller_path
'test'
end
def render_vanilla_js_hello
render :js => "alert('hello')"
end
def greeting
# let's just rely on the template
end
def show_partial
render :partial => 'partial'
end
end
tests TestController
def test_render_vanilla_js
get :render_vanilla_js_hello
assert_equal "alert('hello')", @response.body
assert_equal "text/javascript", @response.content_type
end
def test_render_with_default_from_accept_header
xhr :get, :greeting
assert_equal "$(\"body\").visualEffect(\"highlight\");", @response.body
end
def test_should_render_js_partial
xhr :get, :show_partial, :format => 'js'
assert_equal 'partial js', @response.body
end
end