提交 7591e8c1 编写于 作者: Y Yves Senn

Merge pull request #15182 from zuhao/refactor_actionpack_respond_with_test_2

Un-define :to_json for Customer class after stubbing.
......@@ -2,6 +2,10 @@
require 'controller/fake_models'
class RespondWithController < ActionController::Base
class CustomerWithJson < Customer
def to_json; super; end
end
respond_to :html, :json, :touch
respond_to :xml, :except => :using_resource_with_block
respond_to :js, :only => [ :using_resource_with_block, :using_resource, 'using_hash_resource' ]
......@@ -38,6 +42,10 @@ def using_resource_with_status_and_location
respond_with(resource, :location => "http://test.host/", :status => :created)
end
def using_resource_with_json
respond_with(CustomerWithJson.new("david", request.delete? ? nil : 13))
end
def using_invalid_resource_with_template
respond_with(resource)
end
......@@ -380,9 +388,8 @@ def test_using_resource_for_put_with_xml_yields_no_content_on_success
end
def test_using_resource_for_put_with_json_yields_no_content_on_success
Customer.any_instance.stubs(:to_json).returns('{"name": "David"}')
@request.accept = "application/json"
put :using_resource
put :using_resource_with_json
assert_equal "application/json", @response.content_type
assert_equal 204, @response.status
assert_equal "", @response.body
......@@ -431,10 +438,9 @@ def test_using_resource_for_delete_with_xml_yields_no_content_on_success
end
def test_using_resource_for_delete_with_json_yields_no_content_on_success
Customer.any_instance.stubs(:to_json).returns('{"name": "David"}')
Customer.any_instance.stubs(:destroyed?).returns(true)
@request.accept = "application/json"
delete :using_resource
delete :using_resource_with_json
assert_equal "application/json", @response.content_type
assert_equal 204, @response.status
assert_equal "", @response.body
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册