mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
35b3de8021
The current code base is not uniform. After some discussion, we have chosen to go with double quotes by default.
60 lines
1.1 KiB
Ruby
60 lines
1.1 KiB
Ruby
require "abstract_unit"
|
|
require "active_support/core_ext/hash/conversions"
|
|
|
|
class RenderersApiController < ActionController::API
|
|
class Model
|
|
def to_json(options = {})
|
|
{ a: "b" }.to_json(options)
|
|
end
|
|
|
|
def to_xml(options = {})
|
|
{ a: "b" }.to_xml(options)
|
|
end
|
|
end
|
|
|
|
def one
|
|
render json: Model.new
|
|
end
|
|
|
|
def two
|
|
render xml: Model.new
|
|
end
|
|
|
|
def plain
|
|
render plain: "Hi from plain", status: 500
|
|
end
|
|
|
|
def text
|
|
render text: "Hi from text", status: 500
|
|
end
|
|
end
|
|
|
|
class RenderersApiTest < ActionController::TestCase
|
|
tests RenderersApiController
|
|
|
|
def test_render_json
|
|
get :one
|
|
assert_response :success
|
|
assert_equal({ a: "b" }.to_json, @response.body)
|
|
end
|
|
|
|
def test_render_xml
|
|
get :two
|
|
assert_response :success
|
|
assert_equal({ a: "b" }.to_xml, @response.body)
|
|
end
|
|
|
|
def test_render_plain
|
|
get :plain
|
|
assert_response :internal_server_error
|
|
assert_equal("Hi from plain", @response.body)
|
|
end
|
|
|
|
def test_render_text
|
|
assert_deprecated do
|
|
get :text
|
|
end
|
|
assert_response :internal_server_error
|
|
assert_equal("Hi from text", @response.body)
|
|
end
|
|
end
|