pact-v2 2.0.0.pre.preview1

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.
Files changed (164) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +1321 -0
  3. data/LICENSE.txt +23 -0
  4. data/bin/pact +4 -0
  5. data/lib/pact/cli/generate_pact_docs.rb +4 -0
  6. data/lib/pact/cli/run_pact_verification.rb +99 -0
  7. data/lib/pact/cli/spec_criteria.rb +26 -0
  8. data/lib/pact/cli.rb +45 -0
  9. data/lib/pact/consumer/configuration/configuration_extensions.rb +90 -0
  10. data/lib/pact/consumer/configuration/dsl.rb +11 -0
  11. data/lib/pact/consumer/configuration/mock_service.rb +112 -0
  12. data/lib/pact/consumer/configuration/service_consumer.rb +51 -0
  13. data/lib/pact/consumer/configuration/service_provider.rb +40 -0
  14. data/lib/pact/consumer/configuration.rb +10 -0
  15. data/lib/pact/consumer/consumer_contract_builder.rb +82 -0
  16. data/lib/pact/consumer/consumer_contract_builders.rb +10 -0
  17. data/lib/pact/consumer/interaction_builder.rb +45 -0
  18. data/lib/pact/consumer/rspec.rb +35 -0
  19. data/lib/pact/consumer/spec_hooks.rb +40 -0
  20. data/lib/pact/consumer/world.rb +37 -0
  21. data/lib/pact/consumer.rb +7 -0
  22. data/lib/pact/doc/README.md +13 -0
  23. data/lib/pact/doc/doc_file.rb +40 -0
  24. data/lib/pact/doc/generate.rb +11 -0
  25. data/lib/pact/doc/generator.rb +82 -0
  26. data/lib/pact/doc/interaction_view_model.rb +124 -0
  27. data/lib/pact/doc/markdown/consumer_contract_renderer.rb +68 -0
  28. data/lib/pact/doc/markdown/generator.rb +26 -0
  29. data/lib/pact/doc/markdown/index_renderer.rb +43 -0
  30. data/lib/pact/doc/markdown/interaction.erb +14 -0
  31. data/lib/pact/doc/markdown/interaction_renderer.rb +43 -0
  32. data/lib/pact/doc/sort_interactions.rb +16 -0
  33. data/lib/pact/hal/authorization_header_redactor.rb +32 -0
  34. data/lib/pact/hal/entity.rb +110 -0
  35. data/lib/pact/hal/http_client.rb +128 -0
  36. data/lib/pact/hal/link.rb +112 -0
  37. data/lib/pact/hal/non_json_entity.rb +28 -0
  38. data/lib/pact/hash_refinements.rb +17 -0
  39. data/lib/pact/pact_broker/fetch_pact_uris_for_verification.rb +112 -0
  40. data/lib/pact/pact_broker/fetch_pacts.rb +103 -0
  41. data/lib/pact/pact_broker/notices.rb +34 -0
  42. data/lib/pact/pact_broker/pact_selection_description.rb +66 -0
  43. data/lib/pact/pact_broker.rb +25 -0
  44. data/lib/pact/project_root.rb +7 -0
  45. data/lib/pact/provider/configuration/configuration_extension.rb +69 -0
  46. data/lib/pact/provider/configuration/dsl.rb +18 -0
  47. data/lib/pact/provider/configuration/message_provider_dsl.rb +63 -0
  48. data/lib/pact/provider/configuration/pact_verification.rb +48 -0
  49. data/lib/pact/provider/configuration/pact_verification_from_broker.rb +126 -0
  50. data/lib/pact/provider/configuration/service_provider_config.rb +32 -0
  51. data/lib/pact/provider/configuration/service_provider_dsl.rb +107 -0
  52. data/lib/pact/provider/configuration.rb +7 -0
  53. data/lib/pact/provider/context.rb +0 -0
  54. data/lib/pact/provider/help/console_text.rb +76 -0
  55. data/lib/pact/provider/help/content.rb +38 -0
  56. data/lib/pact/provider/help/pact_diff.rb +43 -0
  57. data/lib/pact/provider/help/prompt_text.rb +49 -0
  58. data/lib/pact/provider/help/write.rb +56 -0
  59. data/lib/pact/provider/matchers/messages.rb +66 -0
  60. data/lib/pact/provider/pact_helper_locator.rb +24 -0
  61. data/lib/pact/provider/pact_source.rb +40 -0
  62. data/lib/pact/provider/pact_spec_runner.rb +188 -0
  63. data/lib/pact/provider/pact_uri.rb +55 -0
  64. data/lib/pact/provider/pact_verification.rb +17 -0
  65. data/lib/pact/provider/print_missing_provider_states.rb +35 -0
  66. data/lib/pact/provider/request.rb +77 -0
  67. data/lib/pact/provider/rspec/backtrace_formatter.rb +43 -0
  68. data/lib/pact/provider/rspec/calculate_exit_code.rb +18 -0
  69. data/lib/pact/provider/rspec/custom_options_file +0 -0
  70. data/lib/pact/provider/rspec/formatter_rspec_2.rb +76 -0
  71. data/lib/pact/provider/rspec/formatter_rspec_3.rb +195 -0
  72. data/lib/pact/provider/rspec/json_formatter.rb +100 -0
  73. data/lib/pact/provider/rspec/matchers.rb +80 -0
  74. data/lib/pact/provider/rspec/pact_broker_formatter.rb +76 -0
  75. data/lib/pact/provider/rspec.rb +234 -0
  76. data/lib/pact/provider/state/provider_state.rb +180 -0
  77. data/lib/pact/provider/state/provider_state_configured_modules.rb +15 -0
  78. data/lib/pact/provider/state/provider_state_manager.rb +42 -0
  79. data/lib/pact/provider/state/provider_state_proxy.rb +39 -0
  80. data/lib/pact/provider/state/set_up.rb +13 -0
  81. data/lib/pact/provider/state/tear_down.rb +13 -0
  82. data/lib/pact/provider/test_methods.rb +77 -0
  83. data/lib/pact/provider/verification_report.rb +36 -0
  84. data/lib/pact/provider/verification_results/create.rb +88 -0
  85. data/lib/pact/provider/verification_results/publish.rb +143 -0
  86. data/lib/pact/provider/verification_results/publish_all.rb +50 -0
  87. data/lib/pact/provider/verification_results/verification_result.rb +40 -0
  88. data/lib/pact/provider/world.rb +50 -0
  89. data/lib/pact/provider.rb +3 -0
  90. data/lib/pact/retry.rb +37 -0
  91. data/lib/pact/tasks/task_helper.rb +62 -0
  92. data/lib/pact/tasks/verification_task.rb +95 -0
  93. data/lib/pact/tasks.rb +2 -0
  94. data/lib/pact/templates/help.erb +22 -0
  95. data/lib/pact/templates/provider_state.erb +14 -0
  96. data/lib/pact/utils/metrics.rb +100 -0
  97. data/lib/pact/utils/string.rb +35 -0
  98. data/lib/pact/v2/configuration.rb +23 -0
  99. data/lib/pact/v2/consumer/grpc_interaction_builder.rb +187 -0
  100. data/lib/pact/v2/consumer/http_interaction_builder.rb +163 -0
  101. data/lib/pact/v2/consumer/interaction_contents.rb +54 -0
  102. data/lib/pact/v2/consumer/message_interaction_builder.rb +280 -0
  103. data/lib/pact/v2/consumer/mock_server.rb +99 -0
  104. data/lib/pact/v2/consumer/pact_config/base.rb +24 -0
  105. data/lib/pact/v2/consumer/pact_config/grpc.rb +26 -0
  106. data/lib/pact/v2/consumer/pact_config/http.rb +55 -0
  107. data/lib/pact/v2/consumer/pact_config/message.rb +17 -0
  108. data/lib/pact/v2/consumer/pact_config.rb +24 -0
  109. data/lib/pact/v2/consumer.rb +8 -0
  110. data/lib/pact/v2/matchers/base.rb +67 -0
  111. data/lib/pact/v2/matchers/v1/equality.rb +19 -0
  112. data/lib/pact/v2/matchers/v2/regex.rb +19 -0
  113. data/lib/pact/v2/matchers/v2/type.rb +17 -0
  114. data/lib/pact/v2/matchers/v3/boolean.rb +17 -0
  115. data/lib/pact/v2/matchers/v3/date.rb +18 -0
  116. data/lib/pact/v2/matchers/v3/date_time.rb +18 -0
  117. data/lib/pact/v2/matchers/v3/decimal.rb +17 -0
  118. data/lib/pact/v2/matchers/v3/each.rb +42 -0
  119. data/lib/pact/v2/matchers/v3/include.rb +17 -0
  120. data/lib/pact/v2/matchers/v3/integer.rb +17 -0
  121. data/lib/pact/v2/matchers/v3/number.rb +17 -0
  122. data/lib/pact/v2/matchers/v3/time.rb +18 -0
  123. data/lib/pact/v2/matchers/v4/each_key.rb +26 -0
  124. data/lib/pact/v2/matchers/v4/each_key_value.rb +32 -0
  125. data/lib/pact/v2/matchers/v4/each_value.rb +33 -0
  126. data/lib/pact/v2/matchers/v4/not_empty.rb +17 -0
  127. data/lib/pact/v2/matchers.rb +94 -0
  128. data/lib/pact/v2/native/blocking_verifier.rb +17 -0
  129. data/lib/pact/v2/native/logger.rb +25 -0
  130. data/lib/pact/v2/provider/async_message_verifier.rb +28 -0
  131. data/lib/pact/v2/provider/base_verifier.rb +242 -0
  132. data/lib/pact/v2/provider/grpc_verifier.rb +38 -0
  133. data/lib/pact/v2/provider/gruf_server.rb +75 -0
  134. data/lib/pact/v2/provider/http_server.rb +79 -0
  135. data/lib/pact/v2/provider/http_verifier.rb +43 -0
  136. data/lib/pact/v2/provider/message_provider_servlet.rb +79 -0
  137. data/lib/pact/v2/provider/mixed_verifier.rb +22 -0
  138. data/lib/pact/v2/provider/pact_broker_proxy.rb +71 -0
  139. data/lib/pact/v2/provider/pact_broker_proxy_runner.rb +77 -0
  140. data/lib/pact/v2/provider/pact_config/async.rb +29 -0
  141. data/lib/pact/v2/provider/pact_config/base.rb +101 -0
  142. data/lib/pact/v2/provider/pact_config/grpc.rb +26 -0
  143. data/lib/pact/v2/provider/pact_config/http.rb +27 -0
  144. data/lib/pact/v2/provider/pact_config/mixed.rb +39 -0
  145. data/lib/pact/v2/provider/pact_config.rb +26 -0
  146. data/lib/pact/v2/provider/provider_server_runner.rb +89 -0
  147. data/lib/pact/v2/provider/provider_state_configuration.rb +32 -0
  148. data/lib/pact/v2/provider/provider_state_servlet.rb +86 -0
  149. data/lib/pact/v2/provider.rb +8 -0
  150. data/lib/pact/v2/railtie.rb +13 -0
  151. data/lib/pact/v2/rspec/support/pact_consumer_helpers.rb +80 -0
  152. data/lib/pact/v2/rspec/support/pact_message_helpers.rb +42 -0
  153. data/lib/pact/v2/rspec/support/pact_provider_helpers.rb +129 -0
  154. data/lib/pact/v2/rspec/support/waterdrop/pact_waterdrop_client.rb +27 -0
  155. data/lib/pact/v2/rspec/support/webmock/webmock_helpers.rb +30 -0
  156. data/lib/pact/v2/rspec.rb +17 -0
  157. data/lib/pact/v2/tasks/pact.rake +13 -0
  158. data/lib/pact/v2/version.rb +8 -0
  159. data/lib/pact/v2.rb +71 -0
  160. data/lib/pact/version.rb +4 -0
  161. data/lib/pact.rb +13 -0
  162. data/lib/tasks/pact.rake +34 -0
  163. data/pact.gemspec +106 -0
  164. metadata +529 -0
metadata ADDED
@@ -0,0 +1,529 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pact-v2
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.0.0.pre.preview1
5
+ platform: ruby
6
+ authors:
7
+ - James Fraser
8
+ - Sergei Matheson
9
+ - Brent Snook
10
+ - Ronald Holshausen
11
+ - Beth Skurrie
12
+ bindir: bin
13
+ cert_chain: []
14
+ date: 1980-01-02 00:00:00.000000000 Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: rake
18
+ requirement: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - "~>"
21
+ - !ruby/object:Gem::Version
22
+ version: '13.0'
23
+ type: :development
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '13.0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: faraday
32
+ requirement: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - "~>"
35
+ - !ruby/object:Gem::Version
36
+ version: '2.0'
37
+ - - "<"
38
+ - !ruby/object:Gem::Version
39
+ version: '3.0'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '2.0'
47
+ - - "<"
48
+ - !ruby/object:Gem::Version
49
+ version: '3.0'
50
+ - !ruby/object:Gem::Dependency
51
+ name: webmock
52
+ requirement: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - "~>"
55
+ - !ruby/object:Gem::Version
56
+ version: '3.0'
57
+ type: :development
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: '3.0'
64
+ - !ruby/object:Gem::Dependency
65
+ name: rspec
66
+ requirement: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - "~>"
69
+ - !ruby/object:Gem::Version
70
+ version: '3.0'
71
+ type: :runtime
72
+ prerelease: false
73
+ version_requirements: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - "~>"
76
+ - !ruby/object:Gem::Version
77
+ version: '3.0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: rack-test
80
+ requirement: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: 0.6.3
85
+ - - "<"
86
+ - !ruby/object:Gem::Version
87
+ version: 3.0.0
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ version: 0.6.3
95
+ - - "<"
96
+ - !ruby/object:Gem::Version
97
+ version: 3.0.0
98
+ - !ruby/object:Gem::Dependency
99
+ name: thor
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: '0.20'
105
+ - - "<"
106
+ - !ruby/object:Gem::Version
107
+ version: '2.0'
108
+ type: :runtime
109
+ prerelease: false
110
+ version_requirements: !ruby/object:Gem::Requirement
111
+ requirements:
112
+ - - ">="
113
+ - !ruby/object:Gem::Version
114
+ version: '0.20'
115
+ - - "<"
116
+ - !ruby/object:Gem::Version
117
+ version: '2.0'
118
+ - !ruby/object:Gem::Dependency
119
+ name: rainbow
120
+ requirement: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '3.1'
125
+ type: :runtime
126
+ prerelease: false
127
+ version_requirements: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '3.1'
132
+ - !ruby/object:Gem::Dependency
133
+ name: string_pattern
134
+ requirement: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '2.0'
139
+ type: :runtime
140
+ prerelease: false
141
+ version_requirements: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '2.0'
146
+ - !ruby/object:Gem::Dependency
147
+ name: jsonpath
148
+ requirement: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '1.0'
153
+ type: :runtime
154
+ prerelease: false
155
+ version_requirements: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '1.0'
160
+ - !ruby/object:Gem::Dependency
161
+ name: pact-support
162
+ requirement: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '1.21'
167
+ - - ">="
168
+ - !ruby/object:Gem::Version
169
+ version: 1.21.2
170
+ type: :runtime
171
+ prerelease: false
172
+ version_requirements: !ruby/object:Gem::Requirement
173
+ requirements:
174
+ - - "~>"
175
+ - !ruby/object:Gem::Version
176
+ version: '1.21'
177
+ - - ">="
178
+ - !ruby/object:Gem::Version
179
+ version: 1.21.2
180
+ - !ruby/object:Gem::Dependency
181
+ name: pact-mock_service
182
+ requirement: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - "~>"
185
+ - !ruby/object:Gem::Version
186
+ version: '3.0'
187
+ - - ">="
188
+ - !ruby/object:Gem::Version
189
+ version: 3.3.1
190
+ type: :runtime
191
+ prerelease: false
192
+ version_requirements: !ruby/object:Gem::Requirement
193
+ requirements:
194
+ - - "~>"
195
+ - !ruby/object:Gem::Version
196
+ version: '3.0'
197
+ - - ">="
198
+ - !ruby/object:Gem::Version
199
+ version: 3.3.1
200
+ - !ruby/object:Gem::Dependency
201
+ name: fakefs
202
+ requirement: !ruby/object:Gem::Requirement
203
+ requirements:
204
+ - - '='
205
+ - !ruby/object:Gem::Version
206
+ version: '2.4'
207
+ type: :development
208
+ prerelease: false
209
+ version_requirements: !ruby/object:Gem::Requirement
210
+ requirements:
211
+ - - '='
212
+ - !ruby/object:Gem::Version
213
+ version: '2.4'
214
+ - !ruby/object:Gem::Dependency
215
+ name: hashie
216
+ requirement: !ruby/object:Gem::Requirement
217
+ requirements:
218
+ - - "~>"
219
+ - !ruby/object:Gem::Version
220
+ version: '5.0'
221
+ type: :development
222
+ prerelease: false
223
+ version_requirements: !ruby/object:Gem::Requirement
224
+ requirements:
225
+ - - "~>"
226
+ - !ruby/object:Gem::Version
227
+ version: '5.0'
228
+ - !ruby/object:Gem::Dependency
229
+ name: faraday-multipart
230
+ requirement: !ruby/object:Gem::Requirement
231
+ requirements:
232
+ - - "~>"
233
+ - !ruby/object:Gem::Version
234
+ version: '1.0'
235
+ type: :development
236
+ prerelease: false
237
+ version_requirements: !ruby/object:Gem::Requirement
238
+ requirements:
239
+ - - "~>"
240
+ - !ruby/object:Gem::Version
241
+ version: '1.0'
242
+ - !ruby/object:Gem::Dependency
243
+ name: conventional-changelog
244
+ requirement: !ruby/object:Gem::Requirement
245
+ requirements:
246
+ - - "~>"
247
+ - !ruby/object:Gem::Version
248
+ version: '1.3'
249
+ type: :development
250
+ prerelease: false
251
+ version_requirements: !ruby/object:Gem::Requirement
252
+ requirements:
253
+ - - "~>"
254
+ - !ruby/object:Gem::Version
255
+ version: '1.3'
256
+ - !ruby/object:Gem::Dependency
257
+ name: bump
258
+ requirement: !ruby/object:Gem::Requirement
259
+ requirements:
260
+ - - "~>"
261
+ - !ruby/object:Gem::Version
262
+ version: '0.5'
263
+ type: :development
264
+ prerelease: false
265
+ version_requirements: !ruby/object:Gem::Requirement
266
+ requirements:
267
+ - - "~>"
268
+ - !ruby/object:Gem::Version
269
+ version: '0.5'
270
+ - !ruby/object:Gem::Dependency
271
+ name: pact-message
272
+ requirement: !ruby/object:Gem::Requirement
273
+ requirements:
274
+ - - "~>"
275
+ - !ruby/object:Gem::Version
276
+ version: '0.8'
277
+ type: :development
278
+ prerelease: false
279
+ version_requirements: !ruby/object:Gem::Requirement
280
+ requirements:
281
+ - - "~>"
282
+ - !ruby/object:Gem::Version
283
+ version: '0.8'
284
+ - !ruby/object:Gem::Dependency
285
+ name: rspec-its
286
+ requirement: !ruby/object:Gem::Requirement
287
+ requirements:
288
+ - - "~>"
289
+ - !ruby/object:Gem::Version
290
+ version: '1.3'
291
+ type: :development
292
+ prerelease: false
293
+ version_requirements: !ruby/object:Gem::Requirement
294
+ requirements:
295
+ - - "~>"
296
+ - !ruby/object:Gem::Version
297
+ version: '1.3'
298
+ - !ruby/object:Gem::Dependency
299
+ name: webrick
300
+ requirement: !ruby/object:Gem::Requirement
301
+ requirements:
302
+ - - "~>"
303
+ - !ruby/object:Gem::Version
304
+ version: '1.8'
305
+ type: :development
306
+ prerelease: false
307
+ version_requirements: !ruby/object:Gem::Requirement
308
+ requirements:
309
+ - - "~>"
310
+ - !ruby/object:Gem::Version
311
+ version: '1.8'
312
+ - !ruby/object:Gem::Dependency
313
+ name: ostruct
314
+ requirement: !ruby/object:Gem::Requirement
315
+ requirements:
316
+ - - ">="
317
+ - !ruby/object:Gem::Version
318
+ version: '0'
319
+ type: :development
320
+ prerelease: false
321
+ version_requirements: !ruby/object:Gem::Requirement
322
+ requirements:
323
+ - - ">="
324
+ - !ruby/object:Gem::Version
325
+ version: '0'
326
+ description: Enables consumer driven contract testing, providing a mock service and
327
+ DSL for the consumer project, and interaction playback and verification for the
328
+ service provider project.
329
+ email:
330
+ - james.fraser@alumni.swinburne.edu
331
+ - sergei.matheson@gmail.com
332
+ - brent@fuglylogic.com
333
+ - uglyog@gmail.com
334
+ - bskurrie@dius.com.au
335
+ executables:
336
+ - pact
337
+ extensions: []
338
+ extra_rdoc_files: []
339
+ files:
340
+ - CHANGELOG.md
341
+ - LICENSE.txt
342
+ - bin/pact
343
+ - lib/pact.rb
344
+ - lib/pact/cli.rb
345
+ - lib/pact/cli/generate_pact_docs.rb
346
+ - lib/pact/cli/run_pact_verification.rb
347
+ - lib/pact/cli/spec_criteria.rb
348
+ - lib/pact/consumer.rb
349
+ - lib/pact/consumer/configuration.rb
350
+ - lib/pact/consumer/configuration/configuration_extensions.rb
351
+ - lib/pact/consumer/configuration/dsl.rb
352
+ - lib/pact/consumer/configuration/mock_service.rb
353
+ - lib/pact/consumer/configuration/service_consumer.rb
354
+ - lib/pact/consumer/configuration/service_provider.rb
355
+ - lib/pact/consumer/consumer_contract_builder.rb
356
+ - lib/pact/consumer/consumer_contract_builders.rb
357
+ - lib/pact/consumer/interaction_builder.rb
358
+ - lib/pact/consumer/rspec.rb
359
+ - lib/pact/consumer/spec_hooks.rb
360
+ - lib/pact/consumer/world.rb
361
+ - lib/pact/doc/README.md
362
+ - lib/pact/doc/doc_file.rb
363
+ - lib/pact/doc/generate.rb
364
+ - lib/pact/doc/generator.rb
365
+ - lib/pact/doc/interaction_view_model.rb
366
+ - lib/pact/doc/markdown/consumer_contract_renderer.rb
367
+ - lib/pact/doc/markdown/generator.rb
368
+ - lib/pact/doc/markdown/index_renderer.rb
369
+ - lib/pact/doc/markdown/interaction.erb
370
+ - lib/pact/doc/markdown/interaction_renderer.rb
371
+ - lib/pact/doc/sort_interactions.rb
372
+ - lib/pact/hal/authorization_header_redactor.rb
373
+ - lib/pact/hal/entity.rb
374
+ - lib/pact/hal/http_client.rb
375
+ - lib/pact/hal/link.rb
376
+ - lib/pact/hal/non_json_entity.rb
377
+ - lib/pact/hash_refinements.rb
378
+ - lib/pact/pact_broker.rb
379
+ - lib/pact/pact_broker/fetch_pact_uris_for_verification.rb
380
+ - lib/pact/pact_broker/fetch_pacts.rb
381
+ - lib/pact/pact_broker/notices.rb
382
+ - lib/pact/pact_broker/pact_selection_description.rb
383
+ - lib/pact/project_root.rb
384
+ - lib/pact/provider.rb
385
+ - lib/pact/provider/configuration.rb
386
+ - lib/pact/provider/configuration/configuration_extension.rb
387
+ - lib/pact/provider/configuration/dsl.rb
388
+ - lib/pact/provider/configuration/message_provider_dsl.rb
389
+ - lib/pact/provider/configuration/pact_verification.rb
390
+ - lib/pact/provider/configuration/pact_verification_from_broker.rb
391
+ - lib/pact/provider/configuration/service_provider_config.rb
392
+ - lib/pact/provider/configuration/service_provider_dsl.rb
393
+ - lib/pact/provider/context.rb
394
+ - lib/pact/provider/help/console_text.rb
395
+ - lib/pact/provider/help/content.rb
396
+ - lib/pact/provider/help/pact_diff.rb
397
+ - lib/pact/provider/help/prompt_text.rb
398
+ - lib/pact/provider/help/write.rb
399
+ - lib/pact/provider/matchers/messages.rb
400
+ - lib/pact/provider/pact_helper_locator.rb
401
+ - lib/pact/provider/pact_source.rb
402
+ - lib/pact/provider/pact_spec_runner.rb
403
+ - lib/pact/provider/pact_uri.rb
404
+ - lib/pact/provider/pact_verification.rb
405
+ - lib/pact/provider/print_missing_provider_states.rb
406
+ - lib/pact/provider/request.rb
407
+ - lib/pact/provider/rspec.rb
408
+ - lib/pact/provider/rspec/backtrace_formatter.rb
409
+ - lib/pact/provider/rspec/calculate_exit_code.rb
410
+ - lib/pact/provider/rspec/custom_options_file
411
+ - lib/pact/provider/rspec/formatter_rspec_2.rb
412
+ - lib/pact/provider/rspec/formatter_rspec_3.rb
413
+ - lib/pact/provider/rspec/json_formatter.rb
414
+ - lib/pact/provider/rspec/matchers.rb
415
+ - lib/pact/provider/rspec/pact_broker_formatter.rb
416
+ - lib/pact/provider/state/provider_state.rb
417
+ - lib/pact/provider/state/provider_state_configured_modules.rb
418
+ - lib/pact/provider/state/provider_state_manager.rb
419
+ - lib/pact/provider/state/provider_state_proxy.rb
420
+ - lib/pact/provider/state/set_up.rb
421
+ - lib/pact/provider/state/tear_down.rb
422
+ - lib/pact/provider/test_methods.rb
423
+ - lib/pact/provider/verification_report.rb
424
+ - lib/pact/provider/verification_results/create.rb
425
+ - lib/pact/provider/verification_results/publish.rb
426
+ - lib/pact/provider/verification_results/publish_all.rb
427
+ - lib/pact/provider/verification_results/verification_result.rb
428
+ - lib/pact/provider/world.rb
429
+ - lib/pact/retry.rb
430
+ - lib/pact/tasks.rb
431
+ - lib/pact/tasks/task_helper.rb
432
+ - lib/pact/tasks/verification_task.rb
433
+ - lib/pact/templates/help.erb
434
+ - lib/pact/templates/provider_state.erb
435
+ - lib/pact/utils/metrics.rb
436
+ - lib/pact/utils/string.rb
437
+ - lib/pact/v2.rb
438
+ - lib/pact/v2/configuration.rb
439
+ - lib/pact/v2/consumer.rb
440
+ - lib/pact/v2/consumer/grpc_interaction_builder.rb
441
+ - lib/pact/v2/consumer/http_interaction_builder.rb
442
+ - lib/pact/v2/consumer/interaction_contents.rb
443
+ - lib/pact/v2/consumer/message_interaction_builder.rb
444
+ - lib/pact/v2/consumer/mock_server.rb
445
+ - lib/pact/v2/consumer/pact_config.rb
446
+ - lib/pact/v2/consumer/pact_config/base.rb
447
+ - lib/pact/v2/consumer/pact_config/grpc.rb
448
+ - lib/pact/v2/consumer/pact_config/http.rb
449
+ - lib/pact/v2/consumer/pact_config/message.rb
450
+ - lib/pact/v2/matchers.rb
451
+ - lib/pact/v2/matchers/base.rb
452
+ - lib/pact/v2/matchers/v1/equality.rb
453
+ - lib/pact/v2/matchers/v2/regex.rb
454
+ - lib/pact/v2/matchers/v2/type.rb
455
+ - lib/pact/v2/matchers/v3/boolean.rb
456
+ - lib/pact/v2/matchers/v3/date.rb
457
+ - lib/pact/v2/matchers/v3/date_time.rb
458
+ - lib/pact/v2/matchers/v3/decimal.rb
459
+ - lib/pact/v2/matchers/v3/each.rb
460
+ - lib/pact/v2/matchers/v3/include.rb
461
+ - lib/pact/v2/matchers/v3/integer.rb
462
+ - lib/pact/v2/matchers/v3/number.rb
463
+ - lib/pact/v2/matchers/v3/time.rb
464
+ - lib/pact/v2/matchers/v4/each_key.rb
465
+ - lib/pact/v2/matchers/v4/each_key_value.rb
466
+ - lib/pact/v2/matchers/v4/each_value.rb
467
+ - lib/pact/v2/matchers/v4/not_empty.rb
468
+ - lib/pact/v2/native/blocking_verifier.rb
469
+ - lib/pact/v2/native/logger.rb
470
+ - lib/pact/v2/provider.rb
471
+ - lib/pact/v2/provider/async_message_verifier.rb
472
+ - lib/pact/v2/provider/base_verifier.rb
473
+ - lib/pact/v2/provider/grpc_verifier.rb
474
+ - lib/pact/v2/provider/gruf_server.rb
475
+ - lib/pact/v2/provider/http_server.rb
476
+ - lib/pact/v2/provider/http_verifier.rb
477
+ - lib/pact/v2/provider/message_provider_servlet.rb
478
+ - lib/pact/v2/provider/mixed_verifier.rb
479
+ - lib/pact/v2/provider/pact_broker_proxy.rb
480
+ - lib/pact/v2/provider/pact_broker_proxy_runner.rb
481
+ - lib/pact/v2/provider/pact_config.rb
482
+ - lib/pact/v2/provider/pact_config/async.rb
483
+ - lib/pact/v2/provider/pact_config/base.rb
484
+ - lib/pact/v2/provider/pact_config/grpc.rb
485
+ - lib/pact/v2/provider/pact_config/http.rb
486
+ - lib/pact/v2/provider/pact_config/mixed.rb
487
+ - lib/pact/v2/provider/provider_server_runner.rb
488
+ - lib/pact/v2/provider/provider_state_configuration.rb
489
+ - lib/pact/v2/provider/provider_state_servlet.rb
490
+ - lib/pact/v2/railtie.rb
491
+ - lib/pact/v2/rspec.rb
492
+ - lib/pact/v2/rspec/support/pact_consumer_helpers.rb
493
+ - lib/pact/v2/rspec/support/pact_message_helpers.rb
494
+ - lib/pact/v2/rspec/support/pact_provider_helpers.rb
495
+ - lib/pact/v2/rspec/support/waterdrop/pact_waterdrop_client.rb
496
+ - lib/pact/v2/rspec/support/webmock/webmock_helpers.rb
497
+ - lib/pact/v2/tasks/pact.rake
498
+ - lib/pact/v2/version.rb
499
+ - lib/pact/version.rb
500
+ - lib/tasks/pact.rake
501
+ - pact.gemspec
502
+ homepage: https://github.com/pact-foundation/pact-ruby
503
+ licenses:
504
+ - MIT
505
+ metadata:
506
+ changelog_uri: https://github.com/pact-foundation/pact-ruby/blob/master/CHANGELOG.md
507
+ source_code_uri: https://github.com/pact-foundation/pact-ruby
508
+ bug_tracker_uri: https://github.com/pact-foundation/pact-ruby/issues
509
+ documentation_uri: https://github.com/pact-foundation/pact-ruby/blob/master/README.md
510
+ rdoc_options: []
511
+ require_paths:
512
+ - lib
513
+ required_ruby_version: !ruby/object:Gem::Requirement
514
+ requirements:
515
+ - - ">="
516
+ - !ruby/object:Gem::Version
517
+ version: '2.0'
518
+ required_rubygems_version: !ruby/object:Gem::Requirement
519
+ requirements:
520
+ - - ">="
521
+ - !ruby/object:Gem::Version
522
+ version: '0'
523
+ requirements: []
524
+ rubygems_version: 3.6.9
525
+ specification_version: 4
526
+ summary: Enables consumer driven contract testing, providing a mock service and DSL
527
+ for the consumer project, and interaction playback and verification for the service
528
+ provider project.
529
+ test_files: []