openapi_contracts 0.15.0 → 0.15.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d7f29b5070d567a4a3e98092c556ef9d5661c1ee858739d77dd54cf2b24e329
4
- data.tar.gz: 1d3f37ba7b579c23da5908a8b330d217b39794012b207ac306d8e95fafe33247
3
+ metadata.gz: 234f41aae2d6860cd521e376cc0efa15f73c69cbce04aa158b5f060f5696b9a2
4
+ data.tar.gz: 1b3cb49933bca518b5a9287a4b0801e9e9c68857e52ad873492e26af9d0c6a6b
5
5
  SHA512:
6
- metadata.gz: 620c1999ac4916a9e3ee6d4eaa6db332eea1db4fd4895b17cdf96036fb6066eb6a984eb39c4741009b0d4fa5d1ee8fc21de7b357f1b82672e5fed9ea9ebd55b3
7
- data.tar.gz: ff7c9e0345ec4a73a92d59f080f5c4474ef23249c71e5e7c9a58cb7e11dcb31039a7cf4f60ceceb7248fb388ad9fd06c8b4ffe79acb669e2302dca3b829b35ed
6
+ metadata.gz: 6f2b66f42ab4c656427f5a96e404343494bc6882b42fc0377d91135939f4669fef906bd7e79a1779c9ee765d38fd919618d0e95525ec11aef99e88750157561e
7
+ data.tar.gz: 8f0f8155ffcfd4af0202ddd67144bc8b5f6b3d2c98f4d72dfcbde171e8cc26c2fac454887676ba7220e308df0d703b72643950911ca965108097aacd85c7a9dd
@@ -1,3 +1,5 @@
1
+ require 'rspec/matchers'
2
+
1
3
  RSpec::Matchers.define :match_openapi_doc do |doc, options = {}| # rubocop:disable Metrics/BlockLength
2
4
  include OpenapiContracts::Helper
3
5
 
@@ -9,6 +9,13 @@ module OpenapiContracts::Validators
9
9
  def validate
10
10
  spec.headers.each do |header|
11
11
  value = response.headers[header.name]
12
+
13
+ # Rack 3.0.0 returns an Array for multi-value headers. OpenAPI doesn't
14
+ # support multi-value headers, so we join them into a single string.
15
+ #
16
+ # @see https://github.com/rack/rack/issues/1598
17
+ value = value.join("\n") if value.is_a?(Array)
18
+
12
19
  if value.blank?
13
20
  @errors << "Missing header #{header.name}" if header.required?
14
21
  elsif !JSONSchemer.schema(header.schema).valid?(value)
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openapi_contracts
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.0
4
+ version: 0.15.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - mkon
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-09-02 00:00:00.000000000 Z
10
+ date: 2025-01-14 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activesupport
@@ -19,7 +18,7 @@ dependencies:
19
18
  version: '6.1'
20
19
  - - "<"
21
20
  - !ruby/object:Gem::Version
22
- version: '8'
21
+ version: '8.1'
23
22
  type: :runtime
24
23
  prerelease: false
25
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,14 +28,14 @@ dependencies:
29
28
  version: '6.1'
30
29
  - - "<"
31
30
  - !ruby/object:Gem::Version
32
- version: '8'
31
+ version: '8.1'
33
32
  - !ruby/object:Gem::Dependency
34
33
  name: json_schemer
35
34
  requirement: !ruby/object:Gem::Requirement
36
35
  requirements:
37
36
  - - ">="
38
37
  - !ruby/object:Gem::Version
39
- version: '2'
38
+ version: '2.1'
40
39
  - - "<"
41
40
  - !ruby/object:Gem::Version
42
41
  version: '2.4'
@@ -46,7 +45,7 @@ dependencies:
46
45
  requirements:
47
46
  - - ">="
48
47
  - !ruby/object:Gem::Version
49
- version: '2'
48
+ version: '2.1'
50
49
  - - "<"
51
50
  - !ruby/object:Gem::Version
52
51
  version: '2.4'
@@ -154,7 +153,6 @@ dependencies:
154
153
  - - "~>"
155
154
  - !ruby/object:Gem::Version
156
155
  version: 0.22.0
157
- description:
158
156
  email:
159
157
  - konstantin@munteanu.de
160
158
  executables: []
@@ -199,7 +197,6 @@ licenses:
199
197
  - MIT
200
198
  metadata:
201
199
  rubygems_mfa_required: 'true'
202
- post_install_message:
203
200
  rdoc_options: []
204
201
  require_paths:
205
202
  - lib
@@ -207,18 +204,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
207
204
  requirements:
208
205
  - - ">="
209
206
  - !ruby/object:Gem::Version
210
- version: '3.1'
207
+ version: '3.2'
211
208
  - - "<"
212
209
  - !ruby/object:Gem::Version
213
- version: '3.4'
210
+ version: '3.5'
214
211
  required_rubygems_version: !ruby/object:Gem::Requirement
215
212
  requirements:
216
213
  - - ">="
217
214
  - !ruby/object:Gem::Version
218
215
  version: '0'
219
216
  requirements: []
220
- rubygems_version: 3.0.3.1
221
- signing_key:
217
+ rubygems_version: 3.6.2
222
218
  specification_version: 4
223
219
  summary: Openapi schemas as API contracts
224
220
  test_files: []