Fix #1759, Grape integration, adds serialization_context

- improves improves serialization_context to take options and not depend
on a `request` object.
- adds descriptive error on missing serialization_context.
- Document overriding `CollectionSerializer#paginated?`.
This commit is contained in:
Benjamin Fleischer
2016-05-29 16:21:45 -05:00
parent a52189c9c0
commit a7296e8a92
6 changed files with 63 additions and 14 deletions

View File

@@ -161,6 +161,17 @@ module ActiveModelSerializers
assert_equal expected_response_without_pagination_links, adapter.serializable_hash
end
def test_raises_descriptive_error_when_serialization_context_unset
render_options = { adapter: :json_api }
adapter = serializable(using_kaminari, render_options)
exception = assert_raises do
adapter.as_json
end
exception_class = ActiveModelSerializers::Adapter::JsonApi::PaginationLinks::MissingSerializationContextError
assert_equal exception_class, exception.class
assert_match(/CollectionSerializer#paginated\?/, exception.message)
end
end
end
end