Rename ArraySerializer to CollectionSerializer for clarity

This commit is contained in:
Benjamin Fleischer
2015-10-07 05:07:00 -05:00
parent 737784c9b7
commit 2c8b9b796d
19 changed files with 213 additions and 148 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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