rspec-resembles_json_matchers 0.7.2 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +155 -0
  4. data/.travis.yml +5 -6
  5. data/Appraisals +7 -5
  6. data/Changelog.md +16 -0
  7. data/Gemfile +3 -1
  8. data/Guardfile +6 -5
  9. data/LICENSE.txt +13 -0
  10. data/README.md +5 -0
  11. data/Rakefile +2 -0
  12. data/examples/example_spec.rb +67 -63
  13. data/gemfiles/.bundle/config +5 -0
  14. data/gemfiles/rails_5.gemfile +2 -2
  15. data/gemfiles/rails_5.gemfile.lock +100 -67
  16. data/gemfiles/{rails_42.gemfile → rails_6.gemfile} +3 -3
  17. data/gemfiles/rails_6.gemfile.lock +236 -0
  18. data/lib/rspec/resembles_json_matchers.rb +16 -15
  19. data/lib/rspec/resembles_json_matchers/attribute_differ.rb +75 -55
  20. data/lib/rspec/resembles_json_matchers/attribute_matcher.rb +38 -18
  21. data/lib/rspec/resembles_json_matchers/helpers.rb +4 -3
  22. data/lib/rspec/resembles_json_matchers/json_matcher.rb +22 -33
  23. data/lib/rspec/resembles_json_matchers/matcherizer.rb +2 -3
  24. data/lib/rspec/resembles_json_matchers/resembles_any_of_matcher.rb +16 -15
  25. data/lib/rspec/resembles_json_matchers/resembles_array_matcher.rb +2 -4
  26. data/lib/rspec/resembles_json_matchers/resembles_boolean_matcher.rb +4 -1
  27. data/lib/rspec/resembles_json_matchers/resembles_class_matcher.rb +2 -1
  28. data/lib/rspec/resembles_json_matchers/resembles_date_matcher.rb +2 -0
  29. data/lib/rspec/resembles_json_matchers/resembles_hash_matcher.rb +11 -11
  30. data/lib/rspec/resembles_json_matchers/resembles_matcher.rb +8 -16
  31. data/lib/rspec/resembles_json_matchers/resembles_nil_matcher.rb +1 -0
  32. data/lib/rspec/resembles_json_matchers/resembles_numeric_matcher.rb +2 -1
  33. data/lib/rspec/resembles_json_matchers/resembles_route_matcher.rb +6 -3
  34. data/lib/rspec/resembles_json_matchers/resembles_string_matcher.rb +1 -0
  35. data/lib/rspec/resembles_json_matchers/string_indent.rb +4 -2
  36. data/lib/rspec/resembles_json_matchers/version.rb +3 -1
  37. data/rspec-resembles_json_matchers.gemspec +14 -9
  38. metadata +68 -24
  39. data/gemfiles/rails_42.gemfile.lock +0 -183
@@ -1,5 +1,6 @@
1
- module RSpec::ResemblesJsonMatchers
1
+ # frozen_string_literal: true
2
2
 
3
+ module RSpec::ResemblesJsonMatchers
3
4
  module Matcherizer
4
5
  def matcherize(expected)
5
6
  if matcher? expected
@@ -20,6 +21,4 @@ module RSpec::ResemblesJsonMatchers
20
21
  obj.respond_to?(:matches?) && obj.respond_to?(:description)
21
22
  end
22
23
  end
23
-
24
24
  end
25
-
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "active_support/core_ext/array/wrap"
2
4
 
3
5
  module RSpec::ResemblesJsonMatchers
@@ -8,19 +10,24 @@ module RSpec::ResemblesJsonMatchers
8
10
  array.is_a? Array
9
11
  end
10
12
 
11
- attr_reader :expected, :actual
13
+ attr_reader :expected, :actual, :original_expected
12
14
 
13
15
  def initialize(expected)
16
+ @original_expected = expected
14
17
  @expected = expected.map { |e| matcherize(e) }
15
18
  end
16
19
 
17
20
  def matches?(actual)
18
21
  @actual = Array.wrap(actual)
19
- @actual.all? do |a|
22
+ @matched = @actual.all? do |a|
20
23
  expected_matchers.any? { |m| attempted_matchers << m; m.matches? a }
21
24
  end
22
25
  end
23
26
 
27
+ def matched?
28
+ @matched
29
+ end
30
+
24
31
  def description
25
32
  if @expected.size == 1
26
33
  "have every item #{expected_matchers.first.description}"
@@ -29,9 +36,7 @@ module RSpec::ResemblesJsonMatchers
29
36
  end
30
37
  end
31
38
 
32
- def failure_message
33
-
34
- end
39
+ def failure_message; end
35
40
 
36
41
  def expected_matchers
37
42
  @expected
@@ -42,16 +47,12 @@ module RSpec::ResemblesJsonMatchers
42
47
  end
43
48
 
44
49
  def expected_formatted
45
- "".tap do |out|
46
- out << expected_matchers.map do |v|
47
- case v
48
- when RSpec::Matchers::BuiltIn::Eq
49
- "should #{v.description}".indent(2)
50
- else
51
- "should #{v.description}".indent(2)
52
- end
53
- end.join("\n")
54
- end << "\n"
50
+ out = +""
51
+ out << expected_matchers.map do |v|
52
+ "should #{v.description}".indent(2)
53
+ end.join("\n")
54
+ out << "\n"
55
+ out
55
56
  end
56
57
  end
57
58
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  module RSpec::ResemblesJsonMatchers
3
4
  class ResemblesArrayMatcher
@@ -27,9 +28,6 @@ module RSpec::ResemblesJsonMatchers
27
28
  @expected.map { |e| matcherize(e) }
28
29
  end
29
30
 
30
- def failure_message
31
- end
31
+ def failure_message; end
32
32
  end
33
-
34
-
35
33
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  module RSpec::ResemblesJsonMatchers
3
4
  class ResemblesBooleanMatcher
@@ -5,6 +6,8 @@ module RSpec::ResemblesJsonMatchers
5
6
  bool.is_a?(TrueClass) || bool.is_a?(FalseClass)
6
7
  end
7
8
 
9
+ attr_reader :expected
10
+
8
11
  def initialize(expected)
9
12
  @expected = expected
10
13
  end
@@ -14,7 +17,7 @@ module RSpec::ResemblesJsonMatchers
14
17
  end
15
18
 
16
19
  def matches?(actual)
17
- actual == @expected
20
+ actual.is_a?(TrueClass) || actual.is_a?(FalseClass)
18
21
  end
19
22
 
20
23
  def expected_formatted
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  module RSpec::ResemblesJsonMatchers
3
4
  class ResemblesClassMatcher
@@ -17,7 +18,7 @@ module RSpec::ResemblesJsonMatchers
17
18
 
18
19
  def matches?(actual)
19
20
  @actual = actual
20
- actual.kind_of? @expected
21
+ actual.is_a? @expected
21
22
  end
22
23
 
23
24
  def expected_formatted
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "time"
2
4
 
3
5
  module RSpec::ResemblesJsonMatchers
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RSpec::ResemblesJsonMatchers
2
4
  class ResemblesHashMatcher
3
5
  include Helpers
@@ -30,11 +32,11 @@ module RSpec::ResemblesJsonMatchers
30
32
  end
31
33
  end
32
34
 
33
- actual.keys.each { |k| unmatched_matchers.delete(k) }
35
+ actual.each_key { |k| unmatched_matchers.delete(k) }
34
36
 
35
- !failed_matches.any? and
36
- !unmatched_keys.any? and
37
- !unmatched_matchers.any?
37
+ failed_matches.none? and
38
+ unmatched_keys.none? and
39
+ unmatched_matchers.none?
38
40
  end
39
41
 
40
42
  def description
@@ -59,9 +61,7 @@ module RSpec::ResemblesJsonMatchers
59
61
  end
60
62
  end
61
63
 
62
- def failed_matches
63
- @failed_matches
64
- end
64
+ attr_reader :failed_matches
65
65
 
66
66
  def unmatched_keys
67
67
  @actual.keys - @matched_keys
@@ -73,15 +73,16 @@ module RSpec::ResemblesJsonMatchers
73
73
 
74
74
  def expected_formatted
75
75
  out = "{\n"
76
- out << expected_matchers.map do |k,v|
76
+ out << expected_matchers.map do |k, v|
77
77
  %{ "%s": %s} % [k, v.expected_formatted]
78
78
  end.join(",\n")
79
79
  out << "\n}\n"
80
80
  end
81
81
 
82
82
  def pretty_failed_matches
83
- failed_matches.map do |k,matcher|
83
+ failed_matches.map do |k, matcher|
84
84
  next unless @actual.key?(k) # Covered by the unmatched matchers messages
85
+
85
86
  matcher_failure_message =
86
87
  matcher.failure_message
87
88
  .gsub("(compared using ==)", "") # From the equality matcher, ugly in this context
@@ -99,10 +100,9 @@ module RSpec::ResemblesJsonMatchers
99
100
  end
100
101
 
101
102
  def pretty_unmatched_matchers
102
- unmatched_matchers.map do |key, matcher|
103
+ unmatched_matchers.map do |key, _matcher|
103
104
  "attribute #{key.to_s.inspect}:\n has a matcher defined, but that attribute was not provided"
104
105
  end.join("\n") + "\n"
105
106
  end
106
-
107
107
  end
108
108
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "active_support/core_ext/array/wrap"
2
4
 
3
5
  module RSpec::ResemblesJsonMatchers
4
-
5
6
  def resembles(expected)
6
7
  ResemblesMatcher.new(expected)
7
8
  end
@@ -18,11 +19,9 @@ module RSpec::ResemblesJsonMatchers
18
19
  candidates.detect { |candidate| candidate.can_match?(@expected) }
19
20
  end
20
21
 
21
- if candidate_class
22
- @candidate = candidate_class.new(expected)
23
- else
24
- fail "Could not find an acceptable resembles matcher for #{@expected.inspect}"
25
- end
22
+ fail "Could not find an acceptable resembles matcher for #{@expected.inspect}" unless candidate_class
23
+
24
+ @candidate = candidate_class.new(expected)
26
25
  end
27
26
 
28
27
  def description
@@ -31,29 +30,22 @@ module RSpec::ResemblesJsonMatchers
31
30
 
32
31
  def matches?(actual)
33
32
  @actual = actual
34
- if @candidate
35
- @candidate.matches?(actual)
36
- end
33
+ @candidate&.matches?(actual)
37
34
  end
38
35
 
39
36
  def failure_message(negated: false)
40
- "expected #{@actual.inspect} to #{negated ? "not " : ""}#{description}"
37
+ "expected #{@actual.inspect} to #{negated ? 'not ' : ''}#{description}"
41
38
  end
42
39
 
43
40
  def negative_failure_message
44
41
  failure_message(negated: true)
45
42
  end
46
43
 
47
- def candidates
48
- end
44
+ def candidates; end
49
45
  end
50
46
 
51
47
  class ResemblesAllOfMatcher
52
-
53
48
  end
54
49
 
55
-
56
-
57
50
  RSpec.configure { |c| c.include self }
58
51
  end
59
-
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  module RSpec::ResemblesJsonMatchers
3
4
  class ResemblesNilMatcher
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  module RSpec::ResemblesJsonMatchers
3
4
  class ResemblesNumericMatcher
@@ -25,7 +26,7 @@ module RSpec::ResemblesJsonMatchers
25
26
  @expected
26
27
  end
27
28
 
28
- def to_json
29
+ def to_json(*_args)
29
30
  @expected
30
31
  end
31
32
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  module RSpec::ResemblesJsonMatchers
3
4
  class ResemblesRouteMatcher
@@ -9,16 +10,18 @@ module RSpec::ResemblesJsonMatchers
9
10
  route_string.include?(":")
10
11
  end
11
12
 
13
+ attr_reader :expected
14
+
12
15
  def initialize(expected_route)
13
- @expected_route = expected_route
16
+ @expected = expected_route
14
17
  end
15
18
 
16
19
  def description
17
- "resemble route #{@expected_route.inspect}"
20
+ "resemble route #{@expected.inspect}"
18
21
  end
19
22
 
20
23
  def matches?(actual)
21
- path = ActionDispatch::Journey::Path::Pattern.from_string(@expected_route)
24
+ path = ActionDispatch::Journey::Path::Pattern.from_string(@expected)
22
25
  actual =~ path.to_regexp
23
26
  end
24
27
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  module RSpec::ResemblesJsonMatchers
3
4
  class ResemblesStringMatcher
@@ -1,8 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RSpec
2
4
  module ResemblesJsonMatchers
3
5
  module StringIndent
4
6
  def indent!(amount, indent_string = nil, indent_empty_lines = false)
5
- indent_string = indent_string || self[/^[ \t]/] || ' '
7
+ indent_string = indent_string || self[/^[ \t]/] || " "
6
8
  re = indent_empty_lines ? /^/ : /^(?!$)/
7
9
  gsub!(re, indent_string * amount)
8
10
  end
@@ -18,5 +20,5 @@ end
18
20
  begin
19
21
  require "active_support/core_ext/string/indent" # indent
20
22
  rescue LoadError
21
- String.send(:include, RSpec::ResemblesJsonMatchers::StringIndent)
23
+ String.include RSpec::ResemblesJsonMatchers::StringIndent
22
24
  end
@@ -1,5 +1,7 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Rspec
2
4
  module ResemblesJsonMatchers
3
- VERSION = "0.7.2"
5
+ VERSION = "0.9.1"
4
6
  end
5
7
  end
@@ -1,7 +1,8 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
1
+ # frozen_string_literal: true
2
+
3
+ lib = File.expand_path("lib", __dir__)
3
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'rspec/resembles_json_matchers/version'
5
+ require "rspec/resembles_json_matchers/version"
5
6
 
6
7
  Gem::Specification.new do |spec|
7
8
  spec.name = "rspec-resembles_json_matchers"
@@ -9,7 +10,7 @@ Gem::Specification.new do |spec|
9
10
  spec.authors = ["Paul Sadauskas"]
10
11
  spec.email = ["psadauskas@gmail.com"]
11
12
 
12
- spec.summary = %q{Helpful matchers for comparing JSON documents.}
13
+ spec.summary = "Helpful matchers for comparing JSON documents."
13
14
  spec.homepage = "https://github.com/paul/rspec-resembles_json_matchers"
14
15
 
15
16
  # Prevent pushing this gem to RubyGems.org by setting 'allowed_push_host', or
@@ -25,18 +26,22 @@ Gem::Specification.new do |spec|
25
26
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
26
27
  spec.require_paths = ["lib"]
27
28
 
28
- spec.add_development_dependency "bundler", "~> 1.11"
29
+ spec.add_development_dependency "bundler", "~> 2.0"
29
30
  spec.add_development_dependency "rake"
30
31
  spec.add_development_dependency "rspec", "~> 3.0"
32
+
31
33
  spec.add_development_dependency "appraisal"
34
+ spec.add_development_dependency "awesome_print"
32
35
  spec.add_development_dependency "guard"
33
36
  spec.add_development_dependency "guard-rspec"
34
37
  spec.add_development_dependency "pry-byebug"
35
38
  spec.add_development_dependency "pry-state"
36
- spec.add_development_dependency "awesome_print"
39
+ spec.add_development_dependency "rubocop"
40
+ spec.add_development_dependency "rubocop-performance"
41
+ spec.add_development_dependency "rubocop-rspec"
37
42
 
38
- spec.add_runtime_dependency "rspec", ">= 2.0", "< 4.0.0.a"
39
- spec.add_runtime_dependency "rspec-expectations", ">= 2.0", "< 4.0.0.a"
40
- spec.add_runtime_dependency "rspec-support", ">= 2.0", "< 4.0.0.a"
41
43
  spec.add_runtime_dependency "activesupport", ">= 3.0" # For core extensions
44
+ spec.add_runtime_dependency "rspec", ">= 3.0", "< 4.0.0.a"
45
+ spec.add_runtime_dependency "rspec-expectations", ">= 3.0", "< 4.0.0.a"
46
+ spec.add_runtime_dependency "rspec-support", ">= 3.0", "< 4.0.0.a"
42
47
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-resembles_json_matchers
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.9.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paul Sadauskas
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-01-12 00:00:00.000000000 Z
11
+ date: 2020-05-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.11'
19
+ version: '2.0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.11'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: awesome_print
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: guard
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -123,7 +137,7 @@ dependencies:
123
137
  - !ruby/object:Gem::Version
124
138
  version: '0'
125
139
  - !ruby/object:Gem::Dependency
126
- name: awesome_print
140
+ name: rubocop
127
141
  requirement: !ruby/object:Gem::Requirement
128
142
  requirements:
129
143
  - - ">="
@@ -137,32 +151,54 @@ dependencies:
137
151
  - !ruby/object:Gem::Version
138
152
  version: '0'
139
153
  - !ruby/object:Gem::Dependency
140
- name: rspec
154
+ name: rubocop-performance
141
155
  requirement: !ruby/object:Gem::Requirement
142
156
  requirements:
143
157
  - - ">="
144
158
  - !ruby/object:Gem::Version
145
- version: '2.0'
146
- - - "<"
159
+ version: '0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
147
165
  - !ruby/object:Gem::Version
148
- version: 4.0.0.a
149
- type: :runtime
166
+ version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: rubocop-rspec
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :development
150
175
  prerelease: false
151
176
  version_requirements: !ruby/object:Gem::Requirement
152
177
  requirements:
153
178
  - - ">="
154
179
  - !ruby/object:Gem::Version
155
- version: '2.0'
156
- - - "<"
180
+ version: '0'
181
+ - !ruby/object:Gem::Dependency
182
+ name: activesupport
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ">="
157
186
  - !ruby/object:Gem::Version
158
- version: 4.0.0.a
187
+ version: '3.0'
188
+ type: :runtime
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ">="
193
+ - !ruby/object:Gem::Version
194
+ version: '3.0'
159
195
  - !ruby/object:Gem::Dependency
160
- name: rspec-expectations
196
+ name: rspec
161
197
  requirement: !ruby/object:Gem::Requirement
162
198
  requirements:
163
199
  - - ">="
164
200
  - !ruby/object:Gem::Version
165
- version: '2.0'
201
+ version: '3.0'
166
202
  - - "<"
167
203
  - !ruby/object:Gem::Version
168
204
  version: 4.0.0.a
@@ -172,17 +208,17 @@ dependencies:
172
208
  requirements:
173
209
  - - ">="
174
210
  - !ruby/object:Gem::Version
175
- version: '2.0'
211
+ version: '3.0'
176
212
  - - "<"
177
213
  - !ruby/object:Gem::Version
178
214
  version: 4.0.0.a
179
215
  - !ruby/object:Gem::Dependency
180
- name: rspec-support
216
+ name: rspec-expectations
181
217
  requirement: !ruby/object:Gem::Requirement
182
218
  requirements:
183
219
  - - ">="
184
220
  - !ruby/object:Gem::Version
185
- version: '2.0'
221
+ version: '3.0'
186
222
  - - "<"
187
223
  - !ruby/object:Gem::Version
188
224
  version: 4.0.0.a
@@ -192,17 +228,20 @@ dependencies:
192
228
  requirements:
193
229
  - - ">="
194
230
  - !ruby/object:Gem::Version
195
- version: '2.0'
231
+ version: '3.0'
196
232
  - - "<"
197
233
  - !ruby/object:Gem::Version
198
234
  version: 4.0.0.a
199
235
  - !ruby/object:Gem::Dependency
200
- name: activesupport
236
+ name: rspec-support
201
237
  requirement: !ruby/object:Gem::Requirement
202
238
  requirements:
203
239
  - - ">="
204
240
  - !ruby/object:Gem::Version
205
241
  version: '3.0'
242
+ - - "<"
243
+ - !ruby/object:Gem::Version
244
+ version: 4.0.0.a
206
245
  type: :runtime
207
246
  prerelease: false
208
247
  version_requirements: !ruby/object:Gem::Requirement
@@ -210,6 +249,9 @@ dependencies:
210
249
  - - ">="
211
250
  - !ruby/object:Gem::Version
212
251
  version: '3.0'
252
+ - - "<"
253
+ - !ruby/object:Gem::Version
254
+ version: 4.0.0.a
213
255
  description:
214
256
  email:
215
257
  - psadauskas@gmail.com
@@ -219,19 +261,22 @@ extra_rdoc_files: []
219
261
  files:
220
262
  - ".gitignore"
221
263
  - ".rspec"
264
+ - ".rubocop.yml"
222
265
  - ".travis.yml"
223
266
  - Appraisals
224
267
  - Changelog.md
225
268
  - Gemfile
226
269
  - Guardfile
270
+ - LICENSE.txt
227
271
  - README.md
228
272
  - Rakefile
229
273
  - bin/rspec
230
274
  - examples/example_spec.rb
231
- - gemfiles/rails_42.gemfile
232
- - gemfiles/rails_42.gemfile.lock
275
+ - gemfiles/.bundle/config
233
276
  - gemfiles/rails_5.gemfile
234
277
  - gemfiles/rails_5.gemfile.lock
278
+ - gemfiles/rails_6.gemfile
279
+ - gemfiles/rails_6.gemfile.lock
235
280
  - lib/rspec/resembles_json_matchers.rb
236
281
  - lib/rspec/resembles_json_matchers/attribute_differ.rb
237
282
  - lib/rspec/resembles_json_matchers/attribute_matcher.rb
@@ -270,8 +315,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
270
315
  - !ruby/object:Gem::Version
271
316
  version: '0'
272
317
  requirements: []
273
- rubyforge_project:
274
- rubygems_version: 2.7.3
318
+ rubygems_version: 3.1.2
275
319
  signing_key:
276
320
  specification_version: 4
277
321
  summary: Helpful matchers for comparing JSON documents.