hs-pact-mock_service 3.9.2

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 (69) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +494 -0
  3. data/Gemfile +8 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +137 -0
  6. data/bin/pact-mock-service +3 -0
  7. data/bin/pact-stub-service +3 -0
  8. data/lib/pact/consumer/mock_service/cors_origin_header_middleware.rb +31 -0
  9. data/lib/pact/consumer/mock_service/error_handler.rb +31 -0
  10. data/lib/pact/consumer/mock_service/rack_request_helper.rb +65 -0
  11. data/lib/pact/consumer/mock_service/set_location.rb +28 -0
  12. data/lib/pact/consumer/server.rb +111 -0
  13. data/lib/pact/consumer_contract/consumer_contract_decorator.rb +53 -0
  14. data/lib/pact/consumer_contract/consumer_contract_writer.rb +181 -0
  15. data/lib/pact/consumer_contract/interaction_decorator.rb +40 -0
  16. data/lib/pact/consumer_contract/request_decorator.rb +88 -0
  17. data/lib/pact/consumer_contract/response_decorator.rb +47 -0
  18. data/lib/pact/mock_service/app.rb +85 -0
  19. data/lib/pact/mock_service/app_manager.rb +156 -0
  20. data/lib/pact/mock_service/cli/custom_thor.rb +74 -0
  21. data/lib/pact/mock_service/cli/pidfile.rb +99 -0
  22. data/lib/pact/mock_service/cli.rb +213 -0
  23. data/lib/pact/mock_service/client.rb +79 -0
  24. data/lib/pact/mock_service/control_server/app.rb +42 -0
  25. data/lib/pact/mock_service/control_server/delegator.rb +44 -0
  26. data/lib/pact/mock_service/control_server/index.rb +25 -0
  27. data/lib/pact/mock_service/control_server/mock_service_creator.rb +32 -0
  28. data/lib/pact/mock_service/control_server/mock_services.rb +26 -0
  29. data/lib/pact/mock_service/control_server/require_pacticipant_headers.rb +20 -0
  30. data/lib/pact/mock_service/control_server/run.rb +73 -0
  31. data/lib/pact/mock_service/errors.rb +9 -0
  32. data/lib/pact/mock_service/interaction_decorator.rb +49 -0
  33. data/lib/pact/mock_service/interactions/actual_interactions.rb +36 -0
  34. data/lib/pact/mock_service/interactions/candidate_interactions.rb +15 -0
  35. data/lib/pact/mock_service/interactions/expected_interactions.rb +18 -0
  36. data/lib/pact/mock_service/interactions/interaction_diff_message.rb +45 -0
  37. data/lib/pact/mock_service/interactions/interaction_mismatch.rb +74 -0
  38. data/lib/pact/mock_service/interactions/interactions_filter.rb +66 -0
  39. data/lib/pact/mock_service/interactions/verification.rb +52 -0
  40. data/lib/pact/mock_service/interactions/verified_interactions.rb +20 -0
  41. data/lib/pact/mock_service/logger.rb +40 -0
  42. data/lib/pact/mock_service/request_decorator.rb +36 -0
  43. data/lib/pact/mock_service/request_handlers/base_administration_request_handler.rb +42 -0
  44. data/lib/pact/mock_service/request_handlers/base_request_handler.rb +30 -0
  45. data/lib/pact/mock_service/request_handlers/index_get.rb +23 -0
  46. data/lib/pact/mock_service/request_handlers/interaction_delete.rb +38 -0
  47. data/lib/pact/mock_service/request_handlers/interaction_post.rb +43 -0
  48. data/lib/pact/mock_service/request_handlers/interaction_replay.rb +191 -0
  49. data/lib/pact/mock_service/request_handlers/interactions_put.rb +44 -0
  50. data/lib/pact/mock_service/request_handlers/log_get.rb +27 -0
  51. data/lib/pact/mock_service/request_handlers/missing_interactions_get.rb +33 -0
  52. data/lib/pact/mock_service/request_handlers/options.rb +64 -0
  53. data/lib/pact/mock_service/request_handlers/pact_post.rb +38 -0
  54. data/lib/pact/mock_service/request_handlers/session_delete.rb +32 -0
  55. data/lib/pact/mock_service/request_handlers/verification_get.rb +74 -0
  56. data/lib/pact/mock_service/request_handlers.rb +42 -0
  57. data/lib/pact/mock_service/response_decorator.rb +31 -0
  58. data/lib/pact/mock_service/run.rb +125 -0
  59. data/lib/pact/mock_service/server/respawn.rb +20 -0
  60. data/lib/pact/mock_service/server/spawn.rb +37 -0
  61. data/lib/pact/mock_service/server/wait_for_server_up.rb +44 -0
  62. data/lib/pact/mock_service/server/webrick_request_monkeypatch.rb +15 -0
  63. data/lib/pact/mock_service/session.rb +96 -0
  64. data/lib/pact/mock_service/spawn.rb +86 -0
  65. data/lib/pact/mock_service/version.rb +5 -0
  66. data/lib/pact/mock_service.rb +2 -0
  67. data/lib/pact/stub_service/cli.rb +71 -0
  68. data/lib/pact/support/expand_file_list.rb +26 -0
  69. metadata +399 -0
@@ -0,0 +1,86 @@
1
+ require 'pact/mock_service/app'
2
+ require 'pact/consumer/server'
3
+ require 'pact/consumer/mock_service/set_location'
4
+
5
+ # Starts a new MockService on a new Thread. Called by the Control Server.
6
+
7
+ module Pact
8
+ module MockService
9
+ class Spawn
10
+
11
+ def self.call consumer, provider, host, port, options
12
+ new(consumer, provider, host, port, options).call
13
+ end
14
+
15
+ attr_reader :consumer, :provider, :host, :port, :options
16
+
17
+ def initialize consumer, provider, host, port, options
18
+ @consumer = consumer
19
+ @provider = provider
20
+ @host = host
21
+ @port = port
22
+ @options = options
23
+ end
24
+
25
+ def call
26
+ mock_service = build_app
27
+ start_mock_service mock_service, port
28
+ puts "Started mock service for #{provider} on #{port}"
29
+ mock_service
30
+ end
31
+
32
+ private
33
+
34
+ def build_app
35
+ Pact::Consumer::SetLocation.new(mock_service, base_url)
36
+ end
37
+
38
+ def mock_service
39
+ Pact::MockService.new(
40
+ log_file: create_log_file,
41
+ log_level: options[:log_level],
42
+ name: name,
43
+ consumer: consumer,
44
+ provider: provider,
45
+ pact_dir: options[:pact_dir] || ".",
46
+ cors_enabled: options[:cors_enabled],
47
+ pact_specification_version: options[:pact_specification_version],
48
+ pactfile_write_mode: options[:pact_file_write_mode]
49
+ )
50
+ end
51
+
52
+ def start_mock_service app, port
53
+ Pact::Server.new(app, host, port, ssl: options[:ssl]).boot
54
+ end
55
+
56
+ def create_log_file
57
+ FileUtils::mkdir_p options[:log_dir]
58
+ log = File.open(log_file_path, 'w')
59
+ log.sync = true
60
+ log
61
+ end
62
+
63
+ def log_file_name
64
+ lower_case_name = name.downcase.gsub(/\s+/, '_')
65
+ if lower_case_name.include?('_service')
66
+ lower_case_name.gsub('_service', '_mock_service')
67
+ else
68
+ lower_case_name + '_mock_service'
69
+ end
70
+ end
71
+
72
+ def log_file_path
73
+ File.join(options[:log_dir], "#{log_file_name}.log")
74
+ end
75
+
76
+ def base_url
77
+ options[:ssl] ? "https://#{host}:#{port}" : "http://#{host}:#{port}"
78
+ end
79
+
80
+ def name
81
+ "#{provider} mock service"
82
+ end
83
+ end
84
+
85
+ end
86
+ end
@@ -0,0 +1,5 @@
1
+ module Pact
2
+ module MockService
3
+ VERSION = "3.9.2"
4
+ end
5
+ end
@@ -0,0 +1,2 @@
1
+ require 'pact/mock_service/app_manager'
2
+ require 'pact/mock_service/app'
@@ -0,0 +1,71 @@
1
+ require 'pact/mock_service/cli/custom_thor'
2
+ require 'webrick/https'
3
+ require 'rack/handler/webrick'
4
+ require 'fileutils'
5
+ require 'pact/mock_service/server/wait_for_server_up'
6
+ require 'pact/mock_service/cli/pidfile'
7
+ require 'socket'
8
+
9
+ module Pact
10
+ module StubService
11
+ class CLI < Pact::MockService::CLI::CustomThor
12
+
13
+ desc 'PACT_URI ...', "Start a stub service with the given pact file(s) or directory."
14
+ long_desc <<-DOC
15
+ Start a stub service with the given pact file(s) or directories. Pact URIs may be local
16
+ file or directory paths, or HTTP.
17
+ Include any basic auth details in the URL using the format https://USERNAME:PASSWORD@URI.
18
+ Where multiple matching interactions are found, the interactions will be sorted by
19
+ response status, and the first one will be returned. This may lead to some non-deterministic
20
+ behaviour. If you are having problems with this, please raise it on the pact-dev google group,
21
+ and we can discuss some potential enhancements.
22
+ Note that only versions 1 and 2 of the pact specification are currently fully supported.
23
+ Pacts using the v3 format may be used, however, any matching features added in v3 will
24
+ currently be ignored.
25
+ DOC
26
+
27
+ method_option :port, aliases: "-p", desc: "Port on which to run the service"
28
+ method_option :host, aliases: "-h", desc: "Host on which to bind the service", default: 'localhost'
29
+ method_option :log, aliases: "-l", desc: "File to which to log output"
30
+ method_option :broker_username, aliases: "-n", desc: "Pact Broker basic auth username", :required => false
31
+ method_option :broker_password, aliases: "-p", desc: "Pact Broker basic auth password", :required => false
32
+ method_option :broker_token, aliases: "-k", desc: "Pact Broker bearer token (can also be set using the PACT_BROKER_TOKEN environment variable)", :required => false
33
+ method_option :log_level, desc: "Log level. Options are DEBUG INFO WARN ERROR", default: "DEBUG"
34
+ method_option :cors, aliases: "-o", desc: "Support browser security in tests by responding to OPTIONS requests and adding CORS headers to mocked responses"
35
+ method_option :ssl, desc: "Use a self-signed SSL cert to run the service over HTTPS", type: :boolean, default: false
36
+ method_option :sslcert, desc: "Specify the path to the SSL cert to use when running the service over HTTPS"
37
+ method_option :sslkey, desc: "Specify the path to the SSL key to use when running the service over HTTPS"
38
+ method_option :stub_pactfile_paths, hide: true
39
+ method_option :monkeypatch, hide: true
40
+
41
+ def service(*pact_files)
42
+ require 'pact/mock_service/run'
43
+ require 'pact/support/expand_file_list'
44
+
45
+ expanded_pact_files = file_list(pact_files)
46
+ raise Thor::Error.new("Please provide at least one pact file to load") if expanded_pact_files.empty?
47
+
48
+ opts = Thor::CoreExt::HashWithIndifferentAccess.new
49
+ opts.merge!(options)
50
+ opts[:stub_pactfile_paths] = expanded_pact_files
51
+ opts[:pactfile_write_mode] = 'none'
52
+ MockService::Run.(opts)
53
+ end
54
+
55
+ desc 'version', "Show the pact-stub-service gem version"
56
+
57
+ def version
58
+ require 'pact/mock_service/version.rb'
59
+ puts Pact::MockService::VERSION
60
+ end
61
+
62
+ default_task :service
63
+
64
+ no_commands do
65
+ def file_list(pact_files)
66
+ Pact::Support::ExpandFileList.call(pact_files)
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,26 @@
1
+ module Pact
2
+ module Support
3
+ module ExpandFileList
4
+ def self.call pact_files
5
+ pact_files
6
+ .collect{ |path| unixify_path(path) }
7
+ .collect{ | path | expand_path(path) }
8
+ .flatten
9
+ end
10
+
11
+ def self.unixify_path(path)
12
+ path.gsub(/\\+/, '/')
13
+ end
14
+
15
+ def self.expand_path(path)
16
+ if File.directory?(path)
17
+ Dir.glob(File.join(path, "*.json"))
18
+ elsif Dir.glob(path).any?
19
+ Dir.glob(path)
20
+ else
21
+ path
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
metadata ADDED
@@ -0,0 +1,399 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: hs-pact-mock_service
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.9.2
5
+ platform: ruby
6
+ authors:
7
+ - James Fraser
8
+ - Sergei Matheson
9
+ - Brent Snook
10
+ - Ronald Holshausen
11
+ - Beth Skurrie
12
+ autorequire:
13
+ bindir: bin
14
+ cert_chain: []
15
+ date: 2022-01-26 00:00:00.000000000 Z
16
+ dependencies:
17
+ - !ruby/object:Gem::Dependency
18
+ name: rack
19
+ requirement: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - "~>"
22
+ - !ruby/object:Gem::Version
23
+ version: '2.0'
24
+ type: :runtime
25
+ prerelease: false
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ requirements:
28
+ - - "~>"
29
+ - !ruby/object:Gem::Version
30
+ version: '2.0'
31
+ - !ruby/object:Gem::Dependency
32
+ name: rspec
33
+ requirement: !ruby/object:Gem::Requirement
34
+ requirements:
35
+ - - ">="
36
+ - !ruby/object:Gem::Version
37
+ version: '2.14'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ requirements:
42
+ - - ">="
43
+ - !ruby/object:Gem::Version
44
+ version: '2.14'
45
+ - !ruby/object:Gem::Dependency
46
+ name: find_a_port
47
+ requirement: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - "~>"
50
+ - !ruby/object:Gem::Version
51
+ version: 1.0.1
52
+ type: :runtime
53
+ prerelease: false
54
+ version_requirements: !ruby/object:Gem::Requirement
55
+ requirements:
56
+ - - "~>"
57
+ - !ruby/object:Gem::Version
58
+ version: 1.0.1
59
+ - !ruby/object:Gem::Dependency
60
+ name: thor
61
+ requirement: !ruby/object:Gem::Requirement
62
+ requirements:
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: '0.19'
66
+ - - "<"
67
+ - !ruby/object:Gem::Version
68
+ version: '2.0'
69
+ type: :runtime
70
+ prerelease: false
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0.19'
76
+ - - "<"
77
+ - !ruby/object:Gem::Version
78
+ version: '2.0'
79
+ - !ruby/object:Gem::Dependency
80
+ name: json
81
+ requirement: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :runtime
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: '0'
93
+ - !ruby/object:Gem::Dependency
94
+ name: webrick
95
+ requirement: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: '1.3'
100
+ type: :runtime
101
+ prerelease: false
102
+ version_requirements: !ruby/object:Gem::Requirement
103
+ requirements:
104
+ - - "~>"
105
+ - !ruby/object:Gem::Version
106
+ version: '1.3'
107
+ - !ruby/object:Gem::Dependency
108
+ name: hs-pact-support
109
+ requirement: !ruby/object:Gem::Requirement
110
+ requirements:
111
+ - - "~>"
112
+ - !ruby/object:Gem::Version
113
+ version: 1.17.1
114
+ type: :runtime
115
+ prerelease: false
116
+ version_requirements: !ruby/object:Gem::Requirement
117
+ requirements:
118
+ - - "~>"
119
+ - !ruby/object:Gem::Version
120
+ version: 1.17.1
121
+ - !ruby/object:Gem::Dependency
122
+ name: filelock
123
+ requirement: !ruby/object:Gem::Requirement
124
+ requirements:
125
+ - - "~>"
126
+ - !ruby/object:Gem::Version
127
+ version: '1.1'
128
+ type: :runtime
129
+ prerelease: false
130
+ version_requirements: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - "~>"
133
+ - !ruby/object:Gem::Version
134
+ version: '1.1'
135
+ - !ruby/object:Gem::Dependency
136
+ name: rack-test
137
+ requirement: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - "~>"
140
+ - !ruby/object:Gem::Version
141
+ version: '0.7'
142
+ type: :development
143
+ prerelease: false
144
+ version_requirements: !ruby/object:Gem::Requirement
145
+ requirements:
146
+ - - "~>"
147
+ - !ruby/object:Gem::Version
148
+ version: '0.7'
149
+ - !ruby/object:Gem::Dependency
150
+ name: rake
151
+ requirement: !ruby/object:Gem::Requirement
152
+ requirements:
153
+ - - "~>"
154
+ - !ruby/object:Gem::Version
155
+ version: '13.0'
156
+ - - ">="
157
+ - !ruby/object:Gem::Version
158
+ version: 13.0.1
159
+ type: :development
160
+ prerelease: false
161
+ version_requirements: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - "~>"
164
+ - !ruby/object:Gem::Version
165
+ version: '13.0'
166
+ - - ">="
167
+ - !ruby/object:Gem::Version
168
+ version: 13.0.1
169
+ - !ruby/object:Gem::Dependency
170
+ name: webmock
171
+ requirement: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - "~>"
174
+ - !ruby/object:Gem::Version
175
+ version: '3.4'
176
+ type: :development
177
+ prerelease: false
178
+ version_requirements: !ruby/object:Gem::Requirement
179
+ requirements:
180
+ - - "~>"
181
+ - !ruby/object:Gem::Version
182
+ version: '3.4'
183
+ - !ruby/object:Gem::Dependency
184
+ name: pry
185
+ requirement: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - ">="
188
+ - !ruby/object:Gem::Version
189
+ version: '0'
190
+ type: :development
191
+ prerelease: false
192
+ version_requirements: !ruby/object:Gem::Requirement
193
+ requirements:
194
+ - - ">="
195
+ - !ruby/object:Gem::Version
196
+ version: '0'
197
+ - !ruby/object:Gem::Dependency
198
+ name: fakefs
199
+ requirement: !ruby/object:Gem::Requirement
200
+ requirements:
201
+ - - "~>"
202
+ - !ruby/object:Gem::Version
203
+ version: '0.4'
204
+ type: :development
205
+ prerelease: false
206
+ version_requirements: !ruby/object:Gem::Requirement
207
+ requirements:
208
+ - - "~>"
209
+ - !ruby/object:Gem::Version
210
+ version: '0.4'
211
+ - !ruby/object:Gem::Dependency
212
+ name: hashie
213
+ requirement: !ruby/object:Gem::Requirement
214
+ requirements:
215
+ - - "~>"
216
+ - !ruby/object:Gem::Version
217
+ version: '2.0'
218
+ type: :development
219
+ prerelease: false
220
+ version_requirements: !ruby/object:Gem::Requirement
221
+ requirements:
222
+ - - "~>"
223
+ - !ruby/object:Gem::Version
224
+ version: '2.0'
225
+ - !ruby/object:Gem::Dependency
226
+ name: activesupport
227
+ requirement: !ruby/object:Gem::Requirement
228
+ requirements:
229
+ - - "~>"
230
+ - !ruby/object:Gem::Version
231
+ version: '5.1'
232
+ type: :development
233
+ prerelease: false
234
+ version_requirements: !ruby/object:Gem::Requirement
235
+ requirements:
236
+ - - "~>"
237
+ - !ruby/object:Gem::Version
238
+ version: '5.1'
239
+ - !ruby/object:Gem::Dependency
240
+ name: faraday
241
+ requirement: !ruby/object:Gem::Requirement
242
+ requirements:
243
+ - - "~>"
244
+ - !ruby/object:Gem::Version
245
+ version: '0.12'
246
+ type: :development
247
+ prerelease: false
248
+ version_requirements: !ruby/object:Gem::Requirement
249
+ requirements:
250
+ - - "~>"
251
+ - !ruby/object:Gem::Version
252
+ version: '0.12'
253
+ - !ruby/object:Gem::Dependency
254
+ name: octokit
255
+ requirement: !ruby/object:Gem::Requirement
256
+ requirements:
257
+ - - "~>"
258
+ - !ruby/object:Gem::Version
259
+ version: '4.7'
260
+ type: :development
261
+ prerelease: false
262
+ version_requirements: !ruby/object:Gem::Requirement
263
+ requirements:
264
+ - - "~>"
265
+ - !ruby/object:Gem::Version
266
+ version: '4.7'
267
+ - !ruby/object:Gem::Dependency
268
+ name: conventional-changelog
269
+ requirement: !ruby/object:Gem::Requirement
270
+ requirements:
271
+ - - "~>"
272
+ - !ruby/object:Gem::Version
273
+ version: '1.3'
274
+ type: :development
275
+ prerelease: false
276
+ version_requirements: !ruby/object:Gem::Requirement
277
+ requirements:
278
+ - - "~>"
279
+ - !ruby/object:Gem::Version
280
+ version: '1.3'
281
+ - !ruby/object:Gem::Dependency
282
+ name: bump
283
+ requirement: !ruby/object:Gem::Requirement
284
+ requirements:
285
+ - - "~>"
286
+ - !ruby/object:Gem::Version
287
+ version: '0.5'
288
+ type: :development
289
+ prerelease: false
290
+ version_requirements: !ruby/object:Gem::Requirement
291
+ requirements:
292
+ - - "~>"
293
+ - !ruby/object:Gem::Version
294
+ version: '0.5'
295
+ description:
296
+ email:
297
+ - james.fraser@alumni.swinburne.edu
298
+ - sergei.matheson@gmail.com
299
+ - brent@fuglylogic.com
300
+ - uglyog@gmail.com
301
+ - beth@bethesque.com
302
+ executables:
303
+ - pact-mock-service
304
+ - pact-stub-service
305
+ extensions: []
306
+ extra_rdoc_files: []
307
+ files:
308
+ - CHANGELOG.md
309
+ - Gemfile
310
+ - LICENSE.txt
311
+ - README.md
312
+ - bin/pact-mock-service
313
+ - bin/pact-stub-service
314
+ - lib/pact/consumer/mock_service/cors_origin_header_middleware.rb
315
+ - lib/pact/consumer/mock_service/error_handler.rb
316
+ - lib/pact/consumer/mock_service/rack_request_helper.rb
317
+ - lib/pact/consumer/mock_service/set_location.rb
318
+ - lib/pact/consumer/server.rb
319
+ - lib/pact/consumer_contract/consumer_contract_decorator.rb
320
+ - lib/pact/consumer_contract/consumer_contract_writer.rb
321
+ - lib/pact/consumer_contract/interaction_decorator.rb
322
+ - lib/pact/consumer_contract/request_decorator.rb
323
+ - lib/pact/consumer_contract/response_decorator.rb
324
+ - lib/pact/mock_service.rb
325
+ - lib/pact/mock_service/app.rb
326
+ - lib/pact/mock_service/app_manager.rb
327
+ - lib/pact/mock_service/cli.rb
328
+ - lib/pact/mock_service/cli/custom_thor.rb
329
+ - lib/pact/mock_service/cli/pidfile.rb
330
+ - lib/pact/mock_service/client.rb
331
+ - lib/pact/mock_service/control_server/app.rb
332
+ - lib/pact/mock_service/control_server/delegator.rb
333
+ - lib/pact/mock_service/control_server/index.rb
334
+ - lib/pact/mock_service/control_server/mock_service_creator.rb
335
+ - lib/pact/mock_service/control_server/mock_services.rb
336
+ - lib/pact/mock_service/control_server/require_pacticipant_headers.rb
337
+ - lib/pact/mock_service/control_server/run.rb
338
+ - lib/pact/mock_service/errors.rb
339
+ - lib/pact/mock_service/interaction_decorator.rb
340
+ - lib/pact/mock_service/interactions/actual_interactions.rb
341
+ - lib/pact/mock_service/interactions/candidate_interactions.rb
342
+ - lib/pact/mock_service/interactions/expected_interactions.rb
343
+ - lib/pact/mock_service/interactions/interaction_diff_message.rb
344
+ - lib/pact/mock_service/interactions/interaction_mismatch.rb
345
+ - lib/pact/mock_service/interactions/interactions_filter.rb
346
+ - lib/pact/mock_service/interactions/verification.rb
347
+ - lib/pact/mock_service/interactions/verified_interactions.rb
348
+ - lib/pact/mock_service/logger.rb
349
+ - lib/pact/mock_service/request_decorator.rb
350
+ - lib/pact/mock_service/request_handlers.rb
351
+ - lib/pact/mock_service/request_handlers/base_administration_request_handler.rb
352
+ - lib/pact/mock_service/request_handlers/base_request_handler.rb
353
+ - lib/pact/mock_service/request_handlers/index_get.rb
354
+ - lib/pact/mock_service/request_handlers/interaction_delete.rb
355
+ - lib/pact/mock_service/request_handlers/interaction_post.rb
356
+ - lib/pact/mock_service/request_handlers/interaction_replay.rb
357
+ - lib/pact/mock_service/request_handlers/interactions_put.rb
358
+ - lib/pact/mock_service/request_handlers/log_get.rb
359
+ - lib/pact/mock_service/request_handlers/missing_interactions_get.rb
360
+ - lib/pact/mock_service/request_handlers/options.rb
361
+ - lib/pact/mock_service/request_handlers/pact_post.rb
362
+ - lib/pact/mock_service/request_handlers/session_delete.rb
363
+ - lib/pact/mock_service/request_handlers/verification_get.rb
364
+ - lib/pact/mock_service/response_decorator.rb
365
+ - lib/pact/mock_service/run.rb
366
+ - lib/pact/mock_service/server/respawn.rb
367
+ - lib/pact/mock_service/server/spawn.rb
368
+ - lib/pact/mock_service/server/wait_for_server_up.rb
369
+ - lib/pact/mock_service/server/webrick_request_monkeypatch.rb
370
+ - lib/pact/mock_service/session.rb
371
+ - lib/pact/mock_service/spawn.rb
372
+ - lib/pact/mock_service/version.rb
373
+ - lib/pact/stub_service/cli.rb
374
+ - lib/pact/support/expand_file_list.rb
375
+ homepage: https://github.com/bethesque/pact-mock_service
376
+ licenses:
377
+ - MIT
378
+ metadata: {}
379
+ post_install_message:
380
+ rdoc_options: []
381
+ require_paths:
382
+ - lib
383
+ required_ruby_version: !ruby/object:Gem::Requirement
384
+ requirements:
385
+ - - ">="
386
+ - !ruby/object:Gem::Version
387
+ version: '2.0'
388
+ required_rubygems_version: !ruby/object:Gem::Requirement
389
+ requirements:
390
+ - - ">="
391
+ - !ruby/object:Gem::Version
392
+ version: '0'
393
+ requirements: []
394
+ rubyforge_project:
395
+ rubygems_version: 2.7.6.2
396
+ signing_key:
397
+ specification_version: 4
398
+ summary: Provides a mock service for use with Pact
399
+ test_files: []