diff --git a/test/action_controller/serialization_test.rb b/test/action_controller/serialization_test.rb index c89d61d81..240ba93c4 100644 --- a/test/action_controller/serialization_test.rb +++ b/test/action_controller/serialization_test.rb @@ -33,6 +33,14 @@ def render_using_custom_root_in_adapter_with_a_default render json: @profile, root: "profile", adapter: :json_api end + def render_array_using_custom_root_and_meta + array = [ + Profile.new({ name: 'Name 1', description: 'Description 1', comments: 'Comments 1' }), + Profile.new({ name: 'Name 2', description: 'Description 2', comments: 'Comments 2' }) + ] + render json: array, root: "custom_root", meta: { total: 10 } + end + def render_array_using_implicit_serializer array = [ Profile.new({ name: 'Name 1', description: 'Description 1', comments: 'Comments 1' }), @@ -209,6 +217,25 @@ def test_render_using_custom_root_in_adapter_with_a_default assert_equal expected.to_json, @response.body end + def test_render_array_using_custom_root_and_meta + get :render_array_using_custom_root_and_meta + assert_equal 'application/json', @response.content_type + + expected = { custom_root: [ + { + name: 'Name 1', + description: 'Description 1', + }, + { + name: 'Name 2', + description: 'Description 2', + }], + meta: { total: 10 } + } + + assert_equal expected.to_json, @response.body + end + def test_render_array_using_implicit_serializer get :render_array_using_implicit_serializer assert_equal 'application/json', @response.content_type