mirror of
https://github.com/ditkrg/active_model_serializers.git
synced 2026-01-23 06:16:50 +00:00
Concrete adapter should provide serializable hash for Adapter#to_json method
This commit is contained in:
parent
2c7906e9ff
commit
a6f9dae560
@ -15,8 +15,8 @@ module ActiveModel
|
|||||||
raise NotImplementedError, 'This is abstract method. Should be implemented at concrete adapter.'
|
raise NotImplementedError, 'This is abstract method. Should be implemented at concrete adapter.'
|
||||||
end
|
end
|
||||||
|
|
||||||
def to_json(options = {})
|
def to_json(options={})
|
||||||
raise NotImplementedError, 'This is abstract method. Should be implemented at concrete adapter.'
|
serializable_hash(options).to_json
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.adapter_for(serializer)
|
def self.adapter_for(serializer)
|
||||||
|
|||||||
@ -5,10 +5,6 @@ module ActiveModel
|
|||||||
def serializable_hash(options = {})
|
def serializable_hash(options = {})
|
||||||
{}
|
{}
|
||||||
end
|
end
|
||||||
|
|
||||||
def to_json(options = {})
|
|
||||||
serializable_hash.to_json
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -7,10 +7,6 @@ module ActiveModel
|
|||||||
h[attr] = value
|
h[attr] = value
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def to_json(options={})
|
|
||||||
serializable_hash(options).to_json
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -15,12 +15,6 @@ module ActiveModel
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_to_json_is_abstract_method
|
|
||||||
assert_raises(NotImplementedError) do
|
|
||||||
@adapter.to_json(only: [:name])
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_serializer
|
def test_serializer
|
||||||
assert_equal @serializer, @adapter.serializer
|
assert_equal @serializer, @adapter.serializer
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user