Namespace separator setting for json-api and tests (#1874)

Adds jsonapi_namespace_separator configuration

Also:

* Enable getting type from record class without serializer

Needs Followup:

- https://github.com/rails-api/active_model_serializers/pull/1874#discussion_r74607042 
- https://github.com/rails-api/active_model_serializers/pull/1874#discussion_r74607734
This commit is contained in:
L. Preston Sego III
2016-08-12 13:54:42 -04:00
committed by Benjamin Fleischer
parent 9217bc2ec4
commit 6de3f31b6e
7 changed files with 88 additions and 10 deletions

View File

@@ -39,6 +39,26 @@ module ActiveModelSerializers
test_type_inflection(AuthorSerializer, 'authors', :plural)
end
def test_type_with_namespace
Object.const_set(:Admin, Module.new)
model = Class.new(::Model)
Admin.const_set(:PowerUser, model)
serializer = Class.new(ActiveModel::Serializer)
Admin.const_set(:PowerUserSerializer, serializer)
with_namespace_separator '--' do
admin_user = Admin::PowerUser.new
serializer = Admin::PowerUserSerializer.new(admin_user)
expected = {
id: admin_user.id,
type: 'admin--power-users'
}
identifier = ResourceIdentifier.new(serializer, {})
actual = identifier.as_json
assert_equal(expected, actual)
end
end
def test_id_defined_on_object
test_id(AuthorSerializer, @model.id.to_s)
end