mirror of
https://github.com/ditkrg/active_model_serializers.git
synced 2026-01-22 22:06:50 +00:00
Tests for ActiveModel::Serializer.serializer_for for not array serializer
This commit is contained in:
parent
d39a3e0aec
commit
a54813806d
@ -3,25 +3,44 @@ require 'test_helper'
|
||||
module ActiveModel
|
||||
class Serializer
|
||||
class SerializerForTest < Minitest::Test
|
||||
def setup
|
||||
@array = [1, 2, 3]
|
||||
@previous_array_serializer = ActiveModel::Serializer.config.array_serializer
|
||||
class ArraySerializerTest < Minitest::Test
|
||||
def setup
|
||||
@array = [1, 2, 3]
|
||||
@previous_array_serializer = ActiveModel::Serializer.config.array_serializer
|
||||
end
|
||||
|
||||
def teardown
|
||||
ActiveModel::Serializer.config.array_serializer = @previous_array_serializer
|
||||
end
|
||||
|
||||
def test_serializer_for_array
|
||||
serializer = ActiveModel::Serializer.serializer_for(@array)
|
||||
assert_equal ActiveModel::Serializer.config.array_serializer, serializer
|
||||
end
|
||||
|
||||
def test_overwritten_serializer_for_array
|
||||
new_array_serializer = Class.new
|
||||
ActiveModel::Serializer.config.array_serializer = new_array_serializer
|
||||
serializer = ActiveModel::Serializer.serializer_for(@array)
|
||||
assert_equal new_array_serializer, serializer
|
||||
end
|
||||
end
|
||||
|
||||
def teardown
|
||||
ActiveModel::Serializer.config.array_serializer = @previous_array_serializer
|
||||
end
|
||||
class SerializerTest < Minitest::Test
|
||||
def setup
|
||||
@profile = Profile.new
|
||||
@model = ::Model.new
|
||||
end
|
||||
|
||||
def test_serializer_for_array
|
||||
serializer = ActiveModel::Serializer.serializer_for(@array)
|
||||
assert_equal ActiveModel::Serializer.config.array_serializer, serializer
|
||||
end
|
||||
def test_serializer_for_existing_serializer
|
||||
serializer = ActiveModel::Serializer.serializer_for(@profile)
|
||||
assert_equal ProfileSerializer, serializer
|
||||
end
|
||||
|
||||
def test_overwritten_serializer_for_array
|
||||
new_array_serializer = Class.new
|
||||
ActiveModel::Serializer.config.array_serializer = new_array_serializer
|
||||
serializer = ActiveModel::Serializer.serializer_for(@array)
|
||||
assert_equal new_array_serializer, serializer
|
||||
def test_serializer_for_not_existing_serializer
|
||||
serializer = ActiveModel::Serializer.serializer_for(@model)
|
||||
assert_equal nil, serializer
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Loading…
Reference in New Issue
Block a user