mirror of
https://github.com/ditkrg/active_model_serializers.git
synced 2026-01-25 15:23:06 +00:00
Rename ArraySerializer to CollectionSerializer for clarity
This commit is contained in:
@@ -33,13 +33,13 @@ module ActiveModel
|
||||
case key
|
||||
when :posts
|
||||
assert_equal({}, options)
|
||||
assert_kind_of(ActiveModel::Serializer.config.array_serializer, serializer)
|
||||
assert_kind_of(ActiveModel::Serializer.config.collection_serializer, serializer)
|
||||
when :bio
|
||||
assert_equal({}, options)
|
||||
assert_nil serializer
|
||||
when :roles
|
||||
assert_equal({}, options)
|
||||
assert_kind_of(ActiveModel::Serializer.config.array_serializer, serializer)
|
||||
assert_kind_of(ActiveModel::Serializer.config.collection_serializer, serializer)
|
||||
else
|
||||
flunk "Unknown association: #{key}"
|
||||
end
|
||||
|
||||
@@ -3,8 +3,25 @@ require 'test_helper'
|
||||
module ActiveModel
|
||||
class Serializer
|
||||
class ConfigurationTest < Minitest::Test
|
||||
def test_collection_serializer
|
||||
assert_equal ActiveModel::Serializer::CollectionSerializer, ActiveModel::Serializer.config.collection_serializer
|
||||
end
|
||||
|
||||
def test_array_serializer
|
||||
assert_equal ActiveModel::Serializer::ArraySerializer, ActiveModel::Serializer.config.array_serializer
|
||||
assert_equal ActiveModel::Serializer::CollectionSerializer, ActiveModel::Serializer.config.array_serializer
|
||||
end
|
||||
|
||||
def test_setting_array_serializer_sets_collection_serializer
|
||||
config = ActiveModel::Serializer.config
|
||||
old_config = config.dup
|
||||
begin
|
||||
assert_equal ActiveModel::Serializer::CollectionSerializer, config.collection_serializer
|
||||
config.array_serializer = :foo
|
||||
assert_equal config.array_serializer, :foo
|
||||
assert_equal config.collection_serializer, :foo
|
||||
ensure
|
||||
ActiveModel::Serializer.config.replace(old_config)
|
||||
end
|
||||
end
|
||||
|
||||
def test_default_adapter
|
||||
|
||||
@@ -3,26 +3,26 @@ require 'test_helper'
|
||||
module ActiveModel
|
||||
class Serializer
|
||||
class SerializerForTest < Minitest::Test
|
||||
class ArraySerializerTest < Minitest::Test
|
||||
class CollectionSerializerTest < Minitest::Test
|
||||
def setup
|
||||
@array = [1, 2, 3]
|
||||
@previous_array_serializer = ActiveModel::Serializer.config.array_serializer
|
||||
@previous_collection_serializer = ActiveModel::Serializer.config.collection_serializer
|
||||
end
|
||||
|
||||
def teardown
|
||||
ActiveModel::Serializer.config.array_serializer = @previous_array_serializer
|
||||
ActiveModel::Serializer.config.collection_serializer = @previous_collection_serializer
|
||||
end
|
||||
|
||||
def test_serializer_for_array
|
||||
serializer = ActiveModel::Serializer.serializer_for(@array)
|
||||
assert_equal ActiveModel::Serializer.config.array_serializer, serializer
|
||||
assert_equal ActiveModel::Serializer.config.collection_serializer, serializer
|
||||
end
|
||||
|
||||
def test_overwritten_serializer_for_array
|
||||
new_array_serializer = Class.new
|
||||
ActiveModel::Serializer.config.array_serializer = new_array_serializer
|
||||
new_collection_serializer = Class.new
|
||||
ActiveModel::Serializer.config.collection_serializer = new_collection_serializer
|
||||
serializer = ActiveModel::Serializer.serializer_for(@array)
|
||||
assert_equal new_array_serializer, serializer
|
||||
assert_equal new_collection_serializer, serializer
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user