active_model_serializers/test/serializers/association_macros_test.rb
L. Preston Sego III aa4d89ab47 remove dynamic class creation where not needed (#1850)
* remove dynamic class creation where not needed
2016-07-18 14:11:09 -05:00

38 lines
1.0 KiB
Ruby

require 'test_helper'
module ActiveModel
class Serializer
class AssociationMacrosTest < ActiveSupport::TestCase
class AuthorSummarySerializer < ActiveModel::Serializer; end
class AssociationsTestSerializer < Serializer
belongs_to :author, serializer: AuthorSummarySerializer
has_many :comments
has_one :category
end
def before_setup
@reflections = AssociationsTestSerializer._reflections.values
end
def test_has_one_defines_reflection
has_one_reflection = HasOneReflection.new(:category, {})
assert_includes(@reflections, has_one_reflection)
end
def test_has_many_defines_reflection
has_many_reflection = HasManyReflection.new(:comments, {})
assert_includes(@reflections, has_many_reflection)
end
def test_belongs_to_defines_reflection
belongs_to_reflection = BelongsToReflection.new(:author, serializer: AuthorSummarySerializer)
assert_includes(@reflections, belongs_to_reflection)
end
end
end
end