module ActiveModelSerializers::Test::Serializer

def assert_serializer(expectation, message = nil)


assert_serializer nil
# assert that no serializer was rendered

assert_serializer %r{\APost.+\Z}
# assert that the rendered serializer starts with "Post"

assert_serializer :post_serializer
# assert that the "PostSerializer" serializer was rendered

assert_serializer PostSerializer
# assert that the instance of PostSerializer was rendered

assert_serializer "PostSerializer", "PostSerializer not rendered"
# return a custom error message

assert_serializer "PostSerializer"
# assert that the "PostSerializer" serializer was rendered

Asserts that the request was rendered with the appropriate serializers.
def assert_serializer(expectation, message = nil)
  @assert_serializer.expectation = expectation
  @assert_serializer.message = message
  @assert_serializer.response = response
  assert(@assert_serializer.matches?, @assert_serializer.message)
end

def setup_serialization_subscriptions

def setup_serialization_subscriptions
  @assert_serializer = AssertSerializer.new
  @assert_serializer.subscribe
end

def teardown_serialization_subscriptions

def teardown_serialization_subscriptions
  @assert_serializer.unsubscribe
end