Sha256: 920a581369249fb0d4520f6fb0f10987baeb6aca8016ebe27e2f232ad2933a8f
Contents?: true
Size: 865 Bytes
Versions: 1
Compression:
Stored size: 865 Bytes
Contents
# frozen_string_literal: true require_relative 'base_matcher' module RSpec module GraphqlMatchers class BeOfType < BaseMatcher attr_reader :sample, :expected def initialize(expected) @expected = expected end def matches?(actual_sample) @sample = to_graphql(actual_sample) sample.respond_to?(:type) && types_match?(sample.type, @expected) end def failure_message "expected field '#{member_name(sample)}' to " \ "be of type '#{type_name(expected)}', " \ "but it was '#{type_name(sample.type)}'" end def description "be of type '#{expected}'" end private def to_graphql(field_sample) return field_sample unless field_sample.respond_to?(:to_type_signature) field_sample.to_type_signature end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rspec-graphql_matchers-2.0.0.pre.rc.0 | lib/rspec/graphql_matchers/be_of_type.rb |