@@ -28,6 +28,11 @@ def mock_request(query_parameters={}, original_url=URI)
2828 @options [ :context ] = context
2929 end
3030
31+ def load_adapter ( paginated_collection , options = { } )
32+ options = options . merge ( adapter : :json_api )
33+ ActiveModel ::SerializableResource . new ( paginated_collection , options )
34+ end
35+
3136 def using_kaminari
3237 Kaminari . paginate_array ( @array ) . page ( 2 ) . per ( 1 )
3338 end
@@ -77,33 +82,29 @@ def expected_response_with_pagination_links_and_additional_params
7782 end
7883
7984 def test_pagination_links_using_kaminari
80- serializer = ArraySerializer . new ( using_kaminari )
81- adapter = ActiveModel ::Serializer ::Adapter ::JsonApi . new ( serializer )
85+ adapter = load_adapter ( using_kaminari )
8286
8387 mock_request
8488 assert_equal expected_response_with_pagination_links , adapter . serializable_hash ( @options )
8589 end
8690
8791 def test_pagination_links_using_will_paginate
88- serializer = ArraySerializer . new ( using_will_paginate )
89- adapter = ActiveModel ::Serializer ::Adapter ::JsonApi . new ( serializer )
92+ adapter = load_adapter ( using_will_paginate )
9093
9194 mock_request
9295 assert_equal expected_response_with_pagination_links , adapter . serializable_hash ( @options )
9396 end
9497
9598 def test_pagination_links_with_additional_params
96- serializer = ArraySerializer . new ( using_will_paginate )
97- adapter = ActiveModel ::Serializer ::Adapter ::JsonApi . new ( serializer )
99+ adapter = load_adapter ( using_will_paginate )
98100
99101 mock_request ( { test : 'test' } )
100102 assert_equal expected_response_with_pagination_links_and_additional_params ,
101103 adapter . serializable_hash ( @options )
102104 end
103105
104106 def test_not_showing_pagination_links
105- serializer = ArraySerializer . new ( @array )
106- adapter = ActiveModel ::Serializer ::Adapter ::JsonApi . new ( serializer )
107+ adapter = load_adapter ( @array )
107108
108109 assert_equal expected_response_without_pagination_links , adapter . serializable_hash
109110 end
0 commit comments