rspec-graphql_matchers 1.1 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 95bbde7e6185bd3338294aa487a1f3cfaa794e2f94203f610d3c23f43577a858
4
- data.tar.gz: de25f9532825e473237eab0d711d2991b5553a01749e355d5479d98b5c9b0ce8
3
+ metadata.gz: cfc59ebc6b348aeab1defdb0057751774ea69653260195b26e9a95363f86430a
4
+ data.tar.gz: a23a3d725d3e0f2fa8136f7ab9b74efeb411a6e3d0e36e683ae5e99268bb08c6
5
5
  SHA512:
6
- metadata.gz: 98947628be39f759fadce2d0febff1761bf7027367bd82d402e9516e4f445d1eff3400bf1de485379949d1bb04a663d6c49e21cc40c293df1b5e8d3249cdaa22
7
- data.tar.gz: 2bac7a4a9d4e1355da652cdd07b643c5741a7cfcc57bc7b4dfb1bce85bb0586b2f9c8072b9030bfecb8a84fbf91eef6c81f37b1d12fd14f821c088a55d54f04b
6
+ metadata.gz: dcd1bd614c785d6f2d5aee1a444c28af584ebf518ecce0706bb7949bc8eb3a0994ddfae953b9b3a3ceecf8a3110df2d91ff0e3dd11756aa3065a9fd9520d9ed3
7
+ data.tar.gz: e3783cc55413014249911495625eb5f01efef58a5fe3acd9991d0d1a10bad45448a03d63d74ef778819003ee703ddabc936910b71c43ced6d6596bf92db17cbf
@@ -0,0 +1,41 @@
1
+ name: RSpec
2
+
3
+ # Controls when the action will run. Triggers the workflow on push or pull request
4
+ # events but only for the master branch
5
+ on: [ push, pull_request ]
6
+
7
+ jobs:
8
+ # This workflow contains a single job "rspec"
9
+ rspec:
10
+ # The type of runner that the job will run on
11
+ runs-on: ubuntu-latest
12
+
13
+ strategy:
14
+ matrix:
15
+ ruby_version: [ 2.6, 2.7, 3.0 ]
16
+
17
+ # Steps represent a sequence of tasks that will be executed as part of the job
18
+ steps:
19
+ # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
20
+ - uses: actions/checkout@v2
21
+
22
+ - name: Set up Ruby ${{ matrix.ruby_version }}
23
+ uses: ruby/setup-ruby@v1
24
+ with:
25
+ ruby-version: ${{ matrix.ruby_version }}
26
+
27
+ - name: Install gems
28
+ run: |
29
+ bundle config path vendor/bundle
30
+ bundle install --jobs 4 --retry 3
31
+
32
+ - name: Cache gems
33
+ uses: actions/cache@v1
34
+ with:
35
+ path: vendor/bundle
36
+ key: ${{ runner.os }}-${{ matrix.ruby_version }}-gems-${{ hashFiles('**/Gemfile.lock') }}
37
+ restore-keys: |
38
+ ${{ runner.os }}-${{ matrix.ruby_version }}-gems-
39
+
40
+ - name: Run RSpec
41
+ run: bundle exec rspec
data/.rubocop.yml CHANGED
@@ -2,31 +2,28 @@ AllCops:
2
2
  DisplayCopNames: true
3
3
  DisplayStyleGuide: true
4
4
 
5
- Style/Documentation:
6
- Enabled: false
5
+ Layout/AlignParameters:
6
+ EnforcedStyle: with_fixed_indentation
7
7
 
8
- Style/ClassAndModuleChildren:
9
- EnforcedStyle: compact
8
+ Metrics/LineLength:
9
+ Max: 90
10
10
 
11
- Style/MultilineMethodCallIndentation:
11
+ Layout/MultilineMethodCallIndentation:
12
12
  EnforcedStyle: indented
13
13
 
14
- Style/AlignParameters:
15
- EnforcedStyle: with_fixed_indentation
16
-
17
- Style/ClassAndModuleChildren:
18
- Enabled: false
19
-
20
- Style/SpaceBeforeFirstArg:
14
+ Layout/SpaceBeforeFirstArg:
21
15
  Include:
22
16
  - db/migrate/*.rb
23
17
  Enabled: false
24
18
 
25
- Style/Lambda:
19
+ Style/Documentation:
26
20
  Enabled: false
27
21
 
28
- Metrics/LineLength:
29
- Max: 90
22
+ Style/ClassAndModuleChildren:
23
+ Enabled: true
24
+
25
+ Style/Lambda:
26
+ Enabled: false
30
27
 
31
28
  Metrics/MethodLength:
32
29
  Max: 15
data/CHANGELOG.md CHANGED
@@ -1,12 +1,20 @@
1
1
  # Changelog
2
2
 
3
- ### Breaking changes
3
+ ## 1.3.1 (Aug 2nd, 2021)
4
+ - Corrected gem dependencies so it properly requires RSpec when loaded (thanks to @itay-grudev)
4
5
 
5
- ### Deprecations
6
+ ## 1.3.0 (May 7th, 2020)
6
7
 
7
- ### New features
8
+ - `accept_argument` matcher accepts underscored argument names and passes even if the actual argument is camel-cased (https://github.com/khamusa/rspec-graphql_matchers/pull/32 thanks to @TonyArra);
9
+ - `have_a_field` matcher accepts `.with_deprecation_reason` (https://github.com/khamusa/rspec-graphql_matchers/pull/34 thanks to @TonyArra).
8
10
 
9
- ### Bug fixes
11
+ ## 1.2.1 (March 31st, 2020)
12
+
13
+ - Fixed issue causing the last release to break expectations against snake_cased fields (fixes https://github.com/khamusa/rspec-graphql_matchers/issues/30).
14
+
15
+ ## 1.2 (Feb 6th, 2020)
16
+
17
+ - Added support to underscored arguments in have_field (https://github.com/khamusa/rspec-graphql_matchers/pull/29 thanks to @makketagg)
10
18
 
11
19
  ## 1.1 (Sep 19th, 2019)
12
20
 
data/Gemfile CHANGED
@@ -1,10 +1,14 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  # Specify your gem's dependencies in rspec-graphql_matchers.gemspec
4
6
  gemspec
5
7
 
8
+ # rubocop:disable Bundle/DuplicatedGem
6
9
  if ENV['GRAPHQL_GEM_VERSION'] == '1.8'
7
10
  gem 'graphql', '~> 1.8.0'
8
11
  elsif ENV['GRAPHQL_GEM_VERSION'] == '1.9'
9
12
  gem 'graphql', '~> 1.9.0'
10
13
  end
14
+ # rubocop:enable Bundle/DuplicatedGem
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- ![Build Status](https://travis-ci.org/khamusa/rspec-graphql_matchers.svg?branch=master)
1
+ ![RSpec Status](https://github.com/khamusa/rspec-graphql_matchers/actions/workflows/rspec.yml/badge.svg)
2
2
 
3
3
  # Rspec::GraphqlMatchers
4
4
 
@@ -46,10 +46,12 @@ class PostType < GraphQL::Schema::Object
46
46
  field :id, ID, null: false
47
47
  field :comments, [String], null: false
48
48
  field :isPublished, Boolean, null: true
49
+ field :published, Boolean, null: false, deprecation_reason: 'Use isPublished instead'
49
50
 
50
51
  field :subposts, PostType, null: true do
51
52
  argument :filter, types.String, required: false
52
53
  argument :id, types.ID, required: false
54
+ argument :isPublished, types.Boolean, required: false
53
55
  end
54
56
  end
55
57
  ```
@@ -63,6 +65,16 @@ describe PostType do
63
65
  it { is_expected.to have_field(:id).of_type(!types.ID) }
64
66
  it { is_expected.to have_field(:comments).of_type("[String!]!") }
65
67
  it { is_expected.to have_field(:isPublished).of_type("Boolean") }
68
+
69
+ # Check a field is deprecated
70
+ it { is_expected.to have_field(:published).with_deprecation_reason }
71
+ it { is_expected.to have_field(:published).with_deprecation_reason('Use isPublished instead') }
72
+ it { is_expected.not_to have_field(:published).with_deprecation_reason('Wrong reason') }
73
+ it { is_expected.not_to have_field(:isPublished).with_deprecation_reason }
74
+
75
+ # The gem automatically converts field names to CamelCase, so this will
76
+ # pass even though the field was defined as field :isPublished
77
+ it { is_expected.to have_field(:is_published).of_type("Boolean") }
66
78
  end
67
79
  ```
68
80
 
@@ -118,6 +130,10 @@ describe PostType do
118
130
  end
119
131
 
120
132
  it { is_expected.not_to accept_argument(:weirdo) }
133
+
134
+ # The gem automatically converts argument names to CamelCase, so this will
135
+ # pass even though the argument was defined as :isPublished
136
+ it { is_expected.to accept_argument(:is_published).of_type("Boolean") }
121
137
  end
122
138
  end
123
139
  ```
@@ -138,10 +154,45 @@ describe PostType do
138
154
  end
139
155
  ```
140
156
 
157
+ ### 6) Using camelize: false on field names
158
+
159
+ By default the graphql gem camelizes field names. This gem deals with it transparently:
160
+
161
+ ```ruby
162
+ class ObjectMessingWithCamelsAndSnakesType < GraphQL::Schema::Object
163
+ graphql_name 'ObjectMessingWithCamelsAndSnakes'
164
+
165
+ implements GraphQL::Relay::Node.interface
166
+
167
+ field :me_gusta_los_camellos, ID, null: false
168
+
169
+ # note the camelize: false
170
+ field :prefiero_serpientes, ID, null: false, camelize: false
171
+ end
172
+ ```
173
+
174
+ The following specs demonstrate the current behavior of the gem regarding fields:
175
+
176
+ ```ruby
177
+ describe ObjectMessingWithCamelsAndSnakesType do
178
+ subject { described_class }
179
+
180
+ # For a field name that was automatically camelized, you can add expectations
181
+ # against both versions and we handle it transparently:
182
+ it { is_expected.to have_a_field(:meGustaLosCamellos) }
183
+ it { is_expected.to have_a_field(:me_gusta_los_camellos) }
184
+
185
+ # However, when using camelize: false, you have to use the exact case of the field definition:
186
+ it { is_expected.to have_a_field(:prefiero_serpientes) }
187
+ it { is_expected.not_to have_a_field(:prefieroSerpientes) } # Note we're using `not_to`
188
+ end
189
+ ```
190
+
191
+ This behaviour is currently active only on field name matching. PRs are welcome to
192
+ reproduce it to arguments as well.
193
+
141
194
  ## TODO
142
195
 
143
- - Support GraphQL 1.9.x;
144
- - Check the method used for resolving a field;
145
196
  - New matchers!
146
197
 
147
198
  ## Contributing
data/Rakefile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'bundler/gem_tasks'
2
4
  require 'rspec/core/rake_task'
3
5
  require 'rubocop/rake_task'
data/bin/console CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'bundler/setup'
4
5
  require 'rspec/graphql_matchers'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'base_matcher'
2
4
  require_relative './have_a_field_matchers/of_type'
3
5
 
@@ -17,16 +19,20 @@ module RSpec
17
19
  end
18
20
 
19
21
  @expected_arg_name = expected_arg_name.to_s
22
+ @expected_camel_arg_name = GraphQL::Schema::Member::BuildType.camelize(
23
+ @expected_arg_name
24
+ )
20
25
  end
21
26
 
22
27
  def matches?(graph_object)
23
28
  @graph_object = graph_object
24
29
 
25
30
  @actual_argument = field_arguments[@expected_arg_name]
31
+ @actual_argument ||= field_arguments[@expected_camel_arg_name]
26
32
  return false if @actual_argument.nil?
27
33
 
28
- @results = @expectations.select do |matcher|
29
- !matcher.matches?(@actual_argument)
34
+ @results = @expectations.reject do |matcher|
35
+ matcher.matches?(@actual_argument)
30
36
  end
31
37
 
32
38
  @results.empty?
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'base_matcher'
2
4
 
3
5
  module RSpec
@@ -29,7 +31,9 @@ module RSpec
29
31
  private
30
32
 
31
33
  def matches_argument?(arg_name, arg_type)
34
+ camel_arg_name = GraphQL::Schema::Member::BuildType.camelize(arg_name.to_s)
32
35
  actual_arg = actual_field.arguments[arg_name.to_s]
36
+ actual_arg ||= actual_field.arguments[camel_arg_name]
33
37
 
34
38
  actual_arg && types_match?(actual_arg.type, arg_type)
35
39
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RSpec
2
4
  module GraphqlMatchers
3
5
  class BaseMatcher
@@ -5,12 +5,16 @@ require_relative './have_a_field_matchers/of_type'
5
5
  require_relative './have_a_field_matchers/with_property'
6
6
  require_relative './have_a_field_matchers/with_metadata'
7
7
  require_relative './have_a_field_matchers/with_hash_key'
8
+ require_relative './have_a_field_matchers/with_deprecation_reason'
8
9
 
9
10
  module RSpec
10
11
  module GraphqlMatchers
11
12
  class HaveAField < BaseMatcher
12
13
  def initialize(expected_field_name, fields = :fields)
13
14
  @expected_field_name = expected_field_name.to_s
15
+ @expected_camel_field_name = GraphQL::Schema::Member::BuildType.camelize(
16
+ @expected_field_name
17
+ )
14
18
  @fields = fields.to_sym
15
19
  @expectations = []
16
20
  end
@@ -18,12 +22,10 @@ module RSpec
18
22
  def matches?(graph_object)
19
23
  @graph_object = graph_object
20
24
 
21
- @actual_field = field_collection[@expected_field_name]
22
- @actual_field = @actual_field.to_graphql if @actual_field.respond_to?(:to_graphql)
23
- return false if @actual_field.nil?
25
+ return false if actual_field.nil?
24
26
 
25
27
  @results = @expectations.reject do |matcher|
26
- matcher.matches?(@actual_field)
28
+ matcher.matches?(actual_field)
27
29
  end
28
30
 
29
31
  @results.empty?
@@ -53,11 +55,16 @@ module RSpec
53
55
  self
54
56
  end
55
57
 
58
+ def with_deprecation_reason(expected_reason = nil)
59
+ @expectations << HaveAFieldMatchers::WithDeprecationReason.new(expected_reason)
60
+ self
61
+ end
62
+
56
63
  def failure_message
57
64
  base_msg = "expected #{member_name(@graph_object)} " \
58
65
  "to define field `#{@expected_field_name}`" \
59
66
 
60
- return "#{base_msg} #{failure_messages.join(', ')}" if @actual_field
67
+ return "#{base_msg} #{failure_messages.join(', ')}" if actual_field
61
68
 
62
69
  "#{base_msg} but no field was found with that name"
63
70
  end
@@ -68,6 +75,15 @@ module RSpec
68
75
 
69
76
  private
70
77
 
78
+ def actual_field
79
+ @actual_field ||= begin
80
+ field = field_collection[@expected_field_name]
81
+ field ||= field_collection[@expected_camel_field_name]
82
+
83
+ field.respond_to?(:to_graphql) ? field.to_graphql : field
84
+ end
85
+ end
86
+
71
87
  def descriptions
72
88
  @results.map(&:description)
73
89
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RSpec
2
4
  module GraphqlMatchers
3
5
  module HaveAFieldMatchers
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RSpec
4
+ module GraphqlMatchers
5
+ module HaveAFieldMatchers
6
+ class WithDeprecationReason
7
+ def initialize(expected_reason)
8
+ @expected_reason = expected_reason
9
+ end
10
+
11
+ def matches?(actual_field)
12
+ @actual_reason = actual_field.deprecation_reason
13
+
14
+ if @expected_reason.nil?
15
+ !actual_field.deprecation_reason.nil?
16
+ else
17
+ actual_field.deprecation_reason == @expected_reason
18
+ end
19
+ end
20
+
21
+ def failure_message
22
+ message = "#{description}, but it was "
23
+ message + (@actual_reason.nil? ? 'not deprecated' : "`#{@actual_reason}`")
24
+ end
25
+
26
+ def description
27
+ if @expected_reason.nil?
28
+ 'with a deprecation reason'
29
+ else
30
+ "with deprecation reason `#{@expected_reason}`"
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RSpec
2
4
  module GraphqlMatchers
3
5
  module HaveAFieldMatchers
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RSpec
2
4
  module GraphqlMatchers
3
5
  module HaveAFieldMatchers
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RSpec
2
4
  module GraphqlMatchers
3
5
  module HaveAFieldMatchers
@@ -1,10 +1,12 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'base_matcher'
2
4
 
3
5
  module RSpec
4
6
  module GraphqlMatchers
5
7
  class Implement < BaseMatcher
6
8
  def initialize(interfaces)
7
- @expected = interfaces.map {|interface| interface_name(interface) }
9
+ @expected = interfaces.map { |interface| interface_name(interface) }
8
10
  end
9
11
 
10
12
  def matches?(graph_object)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rspec/matchers'
2
4
  require 'rspec/graphql_matchers/be_of_type'
3
5
  require 'rspec/graphql_matchers/accept_arguments'
@@ -13,13 +15,13 @@ module RSpec
13
15
 
14
16
  def accept_argument(expected_argument)
15
17
  RSpec::GraphqlMatchers::AcceptArgument.new(expected_argument)
16
- end
18
+ end
17
19
 
18
20
  def accept_arguments(expected_args)
19
21
  RSpec::GraphqlMatchers::AcceptArguments.new(expected_args)
20
22
  end
21
23
 
22
- # rubocop:disable Style/PredicateName
24
+ # rubocop:disable Naming/PredicateName
23
25
  def have_a_field(field_name)
24
26
  RSpec::GraphqlMatchers::HaveAField.new(field_name)
25
27
  end
@@ -34,6 +36,7 @@ module RSpec
34
36
  RSpec::GraphqlMatchers::HaveAField.new(field_name, :return_fields)
35
37
  end
36
38
  alias have_return_field have_a_return_field
39
+ # rubocop:enable Naming/PredicateName
37
40
 
38
41
  def implement(*interface_names)
39
42
  RSpec::GraphqlMatchers::Implement.new(interface_names.flatten)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'graphql'
2
4
 
3
5
  module RSpec
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Rspec
4
4
  module GraphqlMatchers
5
- VERSION = '1.1'
5
+ VERSION = '1.3.1'.freeze
6
6
  end
7
7
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rspec/graphql_matchers/version'
2
4
  require 'rspec/graphql_matchers/matchers'
3
5
  require 'rspec/graphql_matchers/types_helper'
@@ -25,9 +25,11 @@ Gem::Specification.new do |spec|
25
25
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
26
26
  spec.require_paths = ['lib']
27
27
 
28
- spec.add_runtime_dependency 'graphql', '>= 1.8', '< 2.0'
29
- spec.add_development_dependency 'bundler', '~> 1.12'
30
- spec.add_development_dependency 'rubocop', '0.71'
31
- spec.add_development_dependency 'rspec', '~> 3.0'
28
+ spec.add_dependency 'graphql', '>= 1.8', '< 2.0'
29
+ spec.add_dependency 'rspec', '~> 3.0'
30
+ spec.add_development_dependency 'bundler', '~> 2.0'
31
+ # CodeClimate does not yet support SimpleCov 0.18
32
+ spec.add_development_dependency 'simplecov', '~>0.17.0'
32
33
  spec.add_development_dependency 'pry', '~> 0'
34
+ spec.add_development_dependency 'rubocop', '0.71'
33
35
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-graphql_matchers
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.1'
4
+ version: 1.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Brandão
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-09-19 00:00:00.000000000 Z
11
+ date: 2021-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: graphql
@@ -31,47 +31,47 @@ dependencies:
31
31
  - !ruby/object:Gem::Version
32
32
  version: '2.0'
33
33
  - !ruby/object:Gem::Dependency
34
- name: bundler
34
+ name: rspec
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '1.12'
40
- type: :development
39
+ version: '3.0'
40
+ type: :runtime
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: '1.12'
46
+ version: '3.0'
47
47
  - !ruby/object:Gem::Dependency
48
- name: rubocop
48
+ name: bundler
49
49
  requirement: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - '='
51
+ - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '0.71'
53
+ version: '2.0'
54
54
  type: :development
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - '='
58
+ - - "~>"
59
59
  - !ruby/object:Gem::Version
60
- version: '0.71'
60
+ version: '2.0'
61
61
  - !ruby/object:Gem::Dependency
62
- name: rspec
62
+ name: simplecov
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: '3.0'
67
+ version: 0.17.0
68
68
  type: :development
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: '3.0'
74
+ version: 0.17.0
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: pry
77
77
  requirement: !ruby/object:Gem::Requirement
@@ -86,6 +86,20 @@ dependencies:
86
86
  - - "~>"
87
87
  - !ruby/object:Gem::Version
88
88
  version: '0'
89
+ - !ruby/object:Gem::Dependency
90
+ name: rubocop
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - '='
94
+ - !ruby/object:Gem::Version
95
+ version: '0.71'
96
+ type: :development
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - '='
101
+ - !ruby/object:Gem::Version
102
+ version: '0.71'
89
103
  description:
90
104
  email:
91
105
  - gb.samuel@gmail.com
@@ -95,10 +109,10 @@ extra_rdoc_files: []
95
109
  files:
96
110
  - ".codeclimate.yml"
97
111
  - ".editorconfig"
112
+ - ".github/workflows/rspec.yml"
98
113
  - ".gitignore"
99
114
  - ".rspec"
100
115
  - ".rubocop.yml"
101
- - ".travis.yml"
102
116
  - CHANGELOG.md
103
117
  - CODE_OF_CONDUCT.md
104
118
  - Gemfile
@@ -114,6 +128,7 @@ files:
114
128
  - lib/rspec/graphql_matchers/be_of_type.rb
115
129
  - lib/rspec/graphql_matchers/have_a_field.rb
116
130
  - lib/rspec/graphql_matchers/have_a_field_matchers/of_type.rb
131
+ - lib/rspec/graphql_matchers/have_a_field_matchers/with_deprecation_reason.rb
117
132
  - lib/rspec/graphql_matchers/have_a_field_matchers/with_hash_key.rb
118
133
  - lib/rspec/graphql_matchers/have_a_field_matchers/with_metadata.rb
119
134
  - lib/rspec/graphql_matchers/have_a_field_matchers/with_property.rb
@@ -141,8 +156,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
141
156
  - !ruby/object:Gem::Version
142
157
  version: '0'
143
158
  requirements: []
144
- rubyforge_project:
145
- rubygems_version: 2.7.8
159
+ rubygems_version: 3.2.5
146
160
  signing_key:
147
161
  specification_version: 4
148
162
  summary: Collection of rspec matchers to test your graphQL api schema.
data/.travis.yml DELETED
@@ -1,12 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.3.1
5
- before_install: gem install bundler -v 1.12.3
6
- script: bundle exec rspec
7
- matrix:
8
- include:
9
- - name: "GraphQL 1.9.x"
10
- env: GRAPHQL_GEM_VERSION=1.9
11
- - name: "GraphQL 1.8.x"
12
- env: GRAPHQL_GEM_VERSION=1.8