@pact-foundation/pact 10.1.4 → 10.2.0

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 (56) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +20 -1
  3. package/package.json +5 -5
  4. package/src/dsl/matchers.spec.js +2 -3
  5. package/src/dsl/matchers.spec.js.map +1 -1
  6. package/src/dsl/verifier/proxy/messages.d.ts +7 -0
  7. package/src/dsl/verifier/proxy/messages.js +90 -0
  8. package/src/dsl/verifier/proxy/messages.js.map +1 -0
  9. package/src/dsl/verifier/proxy/proxy.d.ts +1 -1
  10. package/src/dsl/verifier/proxy/proxy.js +16 -3
  11. package/src/dsl/verifier/proxy/proxy.js.map +1 -1
  12. package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js +1 -0
  13. package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js.map +1 -1
  14. package/src/dsl/verifier/proxy/types.d.ts +3 -1
  15. package/src/dsl/verifier/types.d.ts +5 -1
  16. package/src/dsl/verifier/verifier.d.ts +1 -0
  17. package/src/dsl/verifier/verifier.js +20 -3
  18. package/src/dsl/verifier/verifier.js.map +1 -1
  19. package/src/messageProviderPact.js +3 -1
  20. package/src/messageProviderPact.js.map +1 -1
  21. package/src/messageProviderPact.spec.js +1 -1
  22. package/src/messageProviderPact.spec.js.map +1 -1
  23. package/src/v3/ffi.d.ts +5 -0
  24. package/src/v3/ffi.js +42 -0
  25. package/src/v3/ffi.js.map +1 -0
  26. package/src/v3/matchers.js +3 -1
  27. package/src/v3/matchers.js.map +1 -1
  28. package/src/v3/matchers.spec.js +14 -1
  29. package/src/v3/matchers.spec.js.map +1 -1
  30. package/src/v3/pact.js +9 -41
  31. package/src/v3/pact.js.map +1 -1
  32. package/src/v3/types.d.ts +2 -1
  33. package/src/v4/http/index.d.ts +85 -0
  34. package/src/v4/http/index.js +371 -0
  35. package/src/v4/http/index.js.map +1 -0
  36. package/src/v4/http/index.spec.d.ts +1 -0
  37. package/src/v4/http/index.spec.js +111 -0
  38. package/src/v4/http/index.spec.js.map +1 -0
  39. package/src/v4/http/types.d.ts +109 -0
  40. package/src/v4/http/types.js +3 -0
  41. package/src/v4/http/types.js.map +1 -0
  42. package/src/v4/index.d.ts +10 -0
  43. package/src/v4/index.js +26 -0
  44. package/src/v4/index.js.map +1 -0
  45. package/src/v4/message/index.d.ts +73 -0
  46. package/src/v4/message/index.js +286 -0
  47. package/src/v4/message/index.js.map +1 -0
  48. package/src/v4/message/index.spec.d.ts +1 -0
  49. package/src/v4/message/index.spec.js +214 -0
  50. package/src/v4/message/index.spec.js.map +1 -0
  51. package/src/v4/message/types.d.ts +57 -0
  52. package/src/v4/message/types.js +3 -0
  53. package/src/v4/message/types.js.map +1 -0
  54. package/src/v4/types.d.ts +6 -0
  55. package/src/v4/types.js +3 -0
  56. package/src/v4/types.js.map +1 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,18 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [10.2.0](https://github.com/pact-foundation/pact-js/compare/v10.1.4...v10.2.0) (2022-11-10)
6
+
7
+
8
+ ### Features
9
+
10
+ * support V4 Pact interface (beta) ([7f87896](https://github.com/pact-foundation/pact-js/commit/7f87896b58f291aa84b1dff3445e43c166f4ee1c))
11
+
12
+
13
+ ### Fixes and Improvements
14
+
15
+ * Fix an issue where extractPayload would not work correctly with objects with a value key ([469e6d3](https://github.com/pact-foundation/pact-js/commit/469e6d35c162e16f63ac206de1c2bbb833720673))
16
+
5
17
  ### [10.1.4](https://github.com/pact-foundation/pact-js/compare/v10.1.3...v10.1.4) (2022-09-21)
6
18
 
7
19
 
package/README.md CHANGED
@@ -97,7 +97,10 @@ npm i -S @pact-foundation/pact@latest
97
97
 
98
98
  Looking for the previous [stable 9.x.x release](https://github.com/pact-foundation/pact-js/tree/9.x.x)?
99
99
 
100
- *NOTE: Make sure the `ignore-scripts` option is disabled, pact uses npm scripts to compile native dependencies and won't function without it.*
100
+ ### Requirements
101
+
102
+ 1. Make sure the `ignore-scripts` option is disabled, pact uses npm scripts to compile native dependencies and won't function without it.
103
+ 2. Pact uses native extensions and installs them via the [`node-gyp`](https://github.com/nodejs/node-gyp) package. This requires a [build chain](https://github.com/nodejs/node-gyp#installation) for a successful installation. See also issue [#899](https://github.com/pact-foundation/pact-js/issues/899).
101
104
 
102
105
  ### Do Not Track
103
106
 
@@ -182,6 +185,22 @@ describe('GET /dogs', () => {
182
185
 
183
186
  You can see (and run) the full version of this in `./examples/v3/typescript`, as well as other examples in the parent folder.
184
187
 
188
+ To run the examples
189
+
190
+ 1. Clone the repo `git@github.com:pact-foundation/pact-js.git`
191
+
192
+ Run a single example
193
+
194
+ 1. Change into the required example folder `cd examples/e2e/v3/typescript`
195
+ 2. Install all the examples dependencies `npm install`
196
+ 3. Run all the example - `npm run test`
197
+
198
+ Run all examples
199
+
200
+ 1. Change into the examples folder `cd examples`
201
+ 2. Install all the examples dependencies `./installAll.sh`
202
+ 3. Run all the examples `./runAll.sh`
203
+
185
204
  ![----------](https://user-images.githubusercontent.com/53900/182992715-aa63e421-170b-41cf-8f95-82fe4b0846c2.png)
186
205
 
187
206
  ### Provider package
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@pact-foundation/pact",
3
- "version": "10.1.4",
3
+ "version": "10.2.0",
4
4
  "description": "Pact for all things Javascript",
5
5
  "main": "./src/index.js",
6
6
  "types": "./src/index.d.ts",
7
7
  "scripts": {
8
8
  "compile": "rimraf dist && tsc",
9
- "clean": "rimraf docs dist coverage .nyc_output logs pacts",
9
+ "clean": "rimraf dist coverage .nyc_output logs pacts",
10
10
  "coverage": "nyc report --reporter=lcov",
11
11
  "dist": "tsc && copyfiles package.json ./dist",
12
12
  "lint": "eslint --config .eslintrc.json \"{src,test}/**/*.ts\"",
@@ -17,7 +17,7 @@
17
17
  "postdist": "npm test",
18
18
  "predist": "npm run clean && npm run format:check && npm run lint",
19
19
  "release": "standard-version",
20
- "test": "nyc --check-coverage --reporter=html --reporter=text-summary mocha"
20
+ "test": "nyc --check-coverage --reporter=html --reporter=text-summary mocha -t 120000"
21
21
  },
22
22
  "repository": {
23
23
  "type": "git",
@@ -94,7 +94,7 @@
94
94
  ]
95
95
  },
96
96
  "dependencies": {
97
- "@pact-foundation/pact-core": "^13.7.8",
97
+ "@pact-foundation/pact-core": "^13.12.0",
98
98
  "@types/bluebird": "^3.5.20",
99
99
  "@types/express": "^4.17.11",
100
100
  "axios": "^0.27.2",
@@ -114,7 +114,7 @@
114
114
  "lodash.omitby": "4.6.0",
115
115
  "pino-pretty": "^6.0.0",
116
116
  "pkginfo": "^0.4.1",
117
- "ramda": "^0.27.2",
117
+ "ramda": "^0.28.0",
118
118
  "randexp": "^0.5.3"
119
119
  },
120
120
  "devDependencies": {
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  /* eslint-disable @typescript-eslint/no-empty-function */
4
+ /* eslint-disable @typescript-eslint/no-unused-vars,no-unused-vars */
4
5
  var chai_1 = require("chai");
5
6
  var matchers_1 = require("./matchers");
6
7
  describe('Matcher', function () {
@@ -16,7 +17,6 @@ describe('Matcher', function () {
16
17
  bar: 'some other string',
17
18
  },
18
19
  };
19
- // eslint-disable-next-line @typescript-eslint/no-unused-vars,no-unused-vars
20
20
  var a = (0, matchers_1.like)(template);
21
21
  });
22
22
  });
@@ -31,12 +31,10 @@ describe('Matcher', function () {
31
31
  bar: 'some other string',
32
32
  },
33
33
  };
34
- // eslint-disable-next-line @typescript-eslint/no-unused-vars,no-unused-vars
35
34
  var a = (0, matchers_1.like)(template);
36
35
  });
37
36
  });
38
37
  it('compiles nested likes', function () {
39
- // eslint-disable-next-line @typescript-eslint/no-unused-vars,no-unused-vars
40
38
  var a = (0, matchers_1.like)({
41
39
  someArray: ['one', 'two'],
42
40
  someNumber: (0, matchers_1.like)(1),
@@ -136,6 +134,7 @@ describe('Matcher', function () {
136
134
  describe('when an invalid value is provided', function () {
137
135
  it('throws an Error', function () {
138
136
  (0, chai_1.expect)(createTheValue(undefined)).to.throw(Error);
137
+ // eslint-disable-next-line no-empty-function
139
138
  (0, chai_1.expect)(createTheValue(function () { })).to.throw(Error);
140
139
  });
141
140
  });
@@ -1 +1 @@
1
- {"version":3,"file":"matchers.spec.js","sourceRoot":"","sources":["../../../src/dsl/matchers.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matchers.spec.js","sourceRoot":"","sources":["../../../src/dsl/matchers.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { MessageDescriptor, MessageProvider } from '../../message';
2
+ import express from 'express';
3
+ import { ProxyOptions } from './types';
4
+ export declare const findMessageHandler: (message: MessageDescriptor, config: ProxyOptions) => Promise<MessageProvider>;
5
+ export declare const setupMessageProxyApplication: (config: ProxyOptions) => express.Express;
6
+ export declare const createProxyMessageHandler: (config: ProxyOptions) => (req: express.Request, res: express.Response) => void;
7
+ export declare const providerWithMetadata: (provider: MessageProvider, metadata: Record<string, string>) => MessageProvider;
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.providerWithMetadata = exports.createProxyMessageHandler = exports.setupMessageProxyApplication = exports.findMessageHandler = void 0;
18
+ var logger_1 = __importDefault(require("../../../common/logger"));
19
+ var express_1 = __importDefault(require("express"));
20
+ var body_parser_1 = __importDefault(require("body-parser"));
21
+ var js_base64_1 = require("js-base64");
22
+ // Find a provider message handler, and invoke it
23
+ var findMessageHandler = function (message, config) {
24
+ var handler = config.messageProviders
25
+ ? config.messageProviders[message.description]
26
+ : undefined;
27
+ if (!handler) {
28
+ logger_1.default.error("no handler found for message ".concat(message.description));
29
+ return Promise.reject(new Error("No handler found for message \"".concat(message.description, "\".\n Check your \"handlers\" configuration")));
30
+ }
31
+ return Promise.resolve(handler);
32
+ };
33
+ exports.findMessageHandler = findMessageHandler;
34
+ // Get the Express app that will run on the HTTP Proxy
35
+ var setupMessageProxyApplication = function (config) {
36
+ var app = (0, express_1.default)();
37
+ app.use(body_parser_1.default.json());
38
+ app.use(body_parser_1.default.urlencoded({ extended: true }));
39
+ app.use(function (_, res, next) {
40
+ // TODO: this seems to override the metadata for content-type
41
+ res.header('Content-Type', 'application/json; charset=utf-8');
42
+ next();
43
+ });
44
+ // Proxy server will respond to Verifier process
45
+ app.all('/*', (0, exports.createProxyMessageHandler)(config));
46
+ return app;
47
+ };
48
+ exports.setupMessageProxyApplication = setupMessageProxyApplication;
49
+ // Get the API handler for the verification CLI process to invoke on POST /*
50
+ var createProxyMessageHandler = function (config) {
51
+ return function (req, res) {
52
+ var message = req.body;
53
+ // Invoke the handler, and return the JSON response body
54
+ // wrapped in a Message
55
+ (0, exports.findMessageHandler)(message, config)
56
+ .then(function (handler) { return handler(message); })
57
+ .then(function (messageFromHandler) {
58
+ if (hasMetadata(messageFromHandler)) {
59
+ var metadata = (0, js_base64_1.encode)(JSON.stringify(messageFromHandler.__pactMessageMetadata));
60
+ res.header('Pact-Message-Metadata', metadata);
61
+ res.header('PACT_MESSAGE_METADATA', metadata);
62
+ return res.json(messageFromHandler.message);
63
+ }
64
+ return res.json(messageFromHandler);
65
+ })
66
+ .catch(function (e) { return res.status(500).send(e); });
67
+ };
68
+ };
69
+ exports.createProxyMessageHandler = createProxyMessageHandler;
70
+ // // Get the Proxy we'll pass to the CLI for verification
71
+ // export const setupProxyServer = (
72
+ // app: (request: http.IncomingMessage, response: http.ServerResponse) => void
73
+ // ): http.Server => http.createServer(app).listen();
74
+ var hasMetadata = function (o) {
75
+ return Boolean(o.__pactMessageMetadata);
76
+ };
77
+ var providerWithMetadata = function (provider, metadata) {
78
+ return function (descriptor) {
79
+ return Promise.resolve(provider(descriptor)).then(function (message) {
80
+ return hasMetadata(message)
81
+ ? {
82
+ __pactMessageMetadata: __assign(__assign({}, message.__pactMessageMetadata), metadata),
83
+ message: message,
84
+ }
85
+ : { __pactMessageMetadata: metadata, message: message };
86
+ });
87
+ };
88
+ };
89
+ exports.providerWithMetadata = providerWithMetadata;
90
+ //# sourceMappingURL=messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../../src/dsl/verifier/proxy/messages.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kEAA4C;AAM5C,oDAA8B;AAC9B,4DAAqC;AACrC,uCAAmD;AAGnD,iDAAiD;AAC1C,IAAM,kBAAkB,GAAG,UAChC,OAA0B,EAC1B,MAAoB;IAEpB,IAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB;QACrC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC;QAC9C,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,CAAC,OAAO,EAAE;QACZ,gBAAM,CAAC,KAAK,CAAC,uCAAgC,OAAO,CAAC,WAAW,CAAE,CAAC,CAAC;QAEpE,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,KAAK,CACP,yCAAiC,OAAO,CAAC,WAAW,4DACX,CAC1C,CACF,CAAC;KACH;IAED,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC,CAAC;AApBW,QAAA,kBAAkB,sBAoB7B;AAEF,sDAAsD;AAC/C,IAAM,4BAA4B,GAAG,UAC1C,MAAoB;IAEpB,IAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;IAEtB,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3B,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACnD,GAAG,CAAC,GAAG,CAAC,UAAC,CAAC,EAAE,GAAG,EAAE,IAAI;QACnB,6DAA6D;QAC7D,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAC;QAC9D,IAAI,EAAE,CAAC;IACT,CAAC,CAAC,CAAC;IAEH,gDAAgD;IAChD,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,IAAA,iCAAyB,EAAC,MAAM,CAAC,CAAC,CAAC;IAEjD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAjBW,QAAA,4BAA4B,gCAiBvC;AAEF,4EAA4E;AACrE,IAAM,yBAAyB,GAAG,UACvC,MAAoB;IAEpB,OAAO,UAAC,GAAG,EAAE,GAAG;QACd,IAAM,OAAO,GAAsB,GAAG,CAAC,IAAI,CAAC;QAE5C,wDAAwD;QACxD,uBAAuB;QACvB,IAAA,0BAAkB,EAAC,OAAO,EAAE,MAAM,CAAC;aAChC,IAAI,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,OAAO,CAAC,EAAhB,CAAgB,CAAC;aACnC,IAAI,CAAC,UAAC,kBAAkB;YACvB,IAAI,WAAW,CAAC,kBAAkB,CAAC,EAAE;gBACnC,IAAM,QAAQ,GAAG,IAAA,kBAAY,EAC3B,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,CACzD,CAAC;gBACF,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;gBAC9C,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;gBAE9C,OAAO,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;aAC7C;YACD,OAAO,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC,CAAC;aACD,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAvB,CAAuB,CAAC,CAAC;IAC3C,CAAC,CAAC;AACJ,CAAC,CAAC;AAxBW,QAAA,yBAAyB,6BAwBpC;AAEF,0DAA0D;AAC1D,oCAAoC;AACpC,gFAAgF;AAChF,qDAAqD;AAErD,IAAM,WAAW,GAAG,UAClB,CAA4C;IAE5C,OAAA,OAAO,CAAE,CAAqC,CAAC,qBAAqB,CAAC;AAArE,CAAqE,CAAC;AAEjE,IAAM,oBAAoB,GAC/B,UACE,QAAyB,EACzB,QAAgC;IAElC,OAAA,UAAC,UAA6B;QAC5B,OAAA,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAC,OAAO;YACjD,OAAA,WAAW,CAAC,OAAO,CAAC;gBAClB,CAAC,CAAC;oBACE,qBAAqB,wBAChB,OAAO,CAAC,qBAAqB,GAC7B,QAAQ,CACZ;oBACD,OAAO,SAAA;iBACR;gBACH,CAAC,CAAC,EAAE,qBAAqB,EAAE,QAAQ,EAAE,OAAO,SAAA,EAAE;QARhD,CAQgD,CACjD;IAVD,CAUC;AAXH,CAWG,CAAC;AAhBO,QAAA,oBAAoB,wBAgB3B"}
@@ -1,4 +1,4 @@
1
1
  import * as http from 'http';
2
2
  import { ProxyOptions } from './types';
3
3
  export declare const waitForServerReady: (server: http.Server) => Promise<http.Server>;
4
- export declare const createProxy: (config: ProxyOptions, stateSetupPath: string) => http.Server;
4
+ export declare const createProxy: (config: ProxyOptions, stateSetupPath: string, messageTransportPath: string) => http.Server;
@@ -36,6 +36,7 @@ var stateHandler_1 = require("./stateHandler/stateHandler");
36
36
  var hooks_1 = require("./hooks");
37
37
  var tracer_1 = require("./tracer");
38
38
  var parseBody_1 = require("./parseBody");
39
+ var messages_1 = require("./messages");
39
40
  // Listens for the server start event
40
41
  var waitForServerReady = function (server) {
41
42
  return new Promise(function (resolve, reject) {
@@ -47,7 +48,7 @@ var waitForServerReady = function (server) {
47
48
  };
48
49
  exports.waitForServerReady = waitForServerReady;
49
50
  // Get the Proxy we'll pass to the CLI for verification
50
- var createProxy = function (config, stateSetupPath) {
51
+ var createProxy = function (config, stateSetupPath, messageTransportPath) {
51
52
  var app = (0, express_1.default)();
52
53
  var proxy = new http_proxy_1.default();
53
54
  logger_1.default.trace("Setting up state proxy with path: ".concat(stateSetupPath));
@@ -76,17 +77,29 @@ var createProxy = function (config, stateSetupPath) {
76
77
  }
77
78
  // Setup provider state handler
78
79
  app.post(stateSetupPath, (0, stateHandler_1.createProxyStateHandler)(config));
80
+ // Register message handler and transport
81
+ // TODO: ensure proxy does not interfere with this
82
+ app.post(messageTransportPath, (0, messages_1.createProxyMessageHandler)(config));
79
83
  // Proxy server will respond to Verifier process
80
84
  app.all('/*', function (req, res) {
81
85
  logger_1.default.debug("Proxying ".concat(req.method, ": ").concat(req.path));
82
86
  proxy.web(req, res, {
83
87
  changeOrigin: config.changeOrigin === true,
84
88
  secure: config.validateSSL === true,
85
- target: config.providerBaseUrl,
89
+ target: config.providerBaseUrl || defaultBaseURL(),
86
90
  });
87
91
  });
88
92
  proxy.on('proxyReq', function (proxyReq, req) { return (0, parseBody_1.parseBody)(proxyReq, req); });
89
- return http.createServer(app).listen();
93
+ // TODO: node is now using ipv6 as a default. This should be customised
94
+ return http
95
+ .createServer(app)
96
+ .listen(undefined, config.proxyHost || '127.0.0.1');
90
97
  };
91
98
  exports.createProxy = createProxy;
99
+ // A base URL is always needed for the proxy, even
100
+ // if there are no targets to proxy (e.g. in the case
101
+ // of message pact
102
+ var defaultBaseURL = function () {
103
+ return 'http://127.0.0.1/';
104
+ };
92
105
  //# sourceMappingURL=proxy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../../../src/dsl/verifier/proxy/proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../../../src/dsl/verifier/proxy/proxy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAA8B;AAC9B,0DAAmC;AACnC,4DAAqC;AACrC,yCAA6B;AAG7B,kEAA4C;AAC5C,4DAAsE;AACtE,iCAAgE;AAChE,mCAAqE;AACrE,yCAAwC;AACxC,uCAAuD;AAEvD,qCAAqC;AAC9B,IAAM,kBAAkB,GAAG,UAAC,MAAmB;IACpD,OAAA,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;QAC1B,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,cAAM,OAAA,OAAO,CAAC,MAAM,CAAC,EAAf,CAAe,CAAC,CAAC;QAC9C,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE;YACjB,OAAA,MAAM,CAAC,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAA9D,CAA8D,CAC/D,CAAC;IACJ,CAAC,CAAC;AALF,CAKE,CAAC;AANQ,QAAA,kBAAkB,sBAM1B;AAEL,uDAAuD;AAChD,IAAM,WAAW,GAAG,UACzB,MAAoB,EACpB,cAAsB,EACtB,oBAA4B;IAE5B,IAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;IACtB,IAAM,KAAK,GAAG,IAAI,oBAAS,EAAE,CAAC;IAC9B,gBAAM,CAAC,KAAK,CAAC,4CAAqC,cAAc,CAAE,CAAC,CAAC;IAEpE,4EAA4E;IAC5E,iDAAiD;IACjD,GAAG,CAAC,GAAG,CACL,qBAAU,CAAC,IAAI,CAAC;QACd,IAAI,EAAE;YACJ,kBAAkB;YAClB,iCAAiC;YACjC,gCAAgC;SACjC;KACF,CAAC,CACH,CAAC;IACF,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACnD,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,qBAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAA,0BAAkB,EAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IAChD,IAAA,yBAAiB,EAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IAE/C,wBAAwB;IACxB,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE;QAC9D,gBAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACtD,GAAG,CAAC,GAAG,CAAC,IAAA,4BAAmB,GAAE,CAAC,CAAC;QAC/B,GAAG,CAAC,GAAG,CAAC,IAAA,6BAAoB,GAAE,CAAC,CAAC;KACjC;IAED,8BAA8B;IAC9B,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,EAAE;QACtC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;KAC/B;IAED,+BAA+B;IAC/B,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,IAAA,sCAAuB,EAAC,MAAM,CAAC,CAAC,CAAC;IAE1D,yCAAyC;IACzC,kDAAkD;IAClD,GAAG,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAA,oCAAyB,EAAC,MAAM,CAAC,CAAC,CAAC;IAElE,gDAAgD;IAChD,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,UAAC,GAAG,EAAE,GAAG;QACrB,gBAAM,CAAC,KAAK,CAAC,mBAAY,GAAG,CAAC,MAAM,eAAK,GAAG,CAAC,IAAI,CAAE,CAAC,CAAC;QAEpD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE;YAClB,YAAY,EAAE,MAAM,CAAC,YAAY,KAAK,IAAI;YAC1C,MAAM,EAAE,MAAM,CAAC,WAAW,KAAK,IAAI;YACnC,MAAM,EAAE,MAAM,CAAC,eAAe,IAAI,cAAc,EAAE;SACnD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,UAAC,QAAQ,EAAE,GAAG,IAAK,OAAA,IAAA,qBAAS,EAAC,QAAQ,EAAE,GAAG,CAAC,EAAxB,CAAwB,CAAC,CAAC;IAElE,uEAAuE;IACvE,OAAO,IAAI;SACR,YAAY,CAAC,GAAG,CAAC;SACjB,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,WAAW,CAAC,CAAC;AACxD,CAAC,CAAC;AA7DW,QAAA,WAAW,eA6DtB;AAEF,kDAAkD;AAClD,qDAAqD;AACrD,kBAAkB;AAClB,IAAM,cAAc,GAAG;IACrB,OAAO,mBAAmB,CAAC;AAC7B,CAAC,CAAC"}
@@ -75,6 +75,7 @@ describe('#createProxyStateHandler', function () {
75
75
  status: function (status) {
76
76
  res = status;
77
77
  return {
78
+ // eslint-disable-next-line no-empty-function
78
79
  send: function () { },
79
80
  };
80
81
  },
@@ -1 +1 @@
1
- {"version":3,"file":"stateHandler.spec.js","sourceRoot":"","sources":["../../../../../../src/dsl/verifier/proxy/stateHandler/stateHandler.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAwB;AACxB,sEAA8C;AAC9C,gDAAwC;AAIxC,+CAAyD;AACzD,+DAAmD;AAGnD,cAAI,CAAC,GAAG,CAAC,0BAAc,CAAC,CAAC;AAEjB,IAAA,MAAM,GAAK,cAAI,OAAT,CAAU;AAExB,QAAQ,CAAC,0BAA0B,EAAE;IACnC,IAAI,GAAQ,CAAC;IACb,IAAM,YAAY,GAAG;QACnB,MAAM,EAAE,UAAC,MAAc;YACrB,GAAG,GAAG,MAAM,CAAC;YACb,OAAO;gBACL,IAAI,EAAE,cAAO,CAAC;aACf,CAAC;QACJ,CAAC;QACD,IAAI,EAAE,UAAC,IAAS,IAAK,OAAA,IAAI,EAAJ,CAAI;KAC1B,CAAC;IAEF,OAAO,CAAC,wCAAwC,EAAE;QAChD,UAAU,CAAC;YACT,eAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QACH,SAAS,CAAC;YACP,iBAAiB,CAAC,WAAwB,CAAC,OAAO,EAAE,CAAC;QACxD,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,eAAe,EAAE;;;;;wBACZ,CAAC,GAAG,IAAA,sCAAuB,EAAC,EAAkB,CAAC,CAAC;wBACzC,qBAAM,CAAC,CAClB,EAAqB,EACrB,YAAgC,CACjC,EAAA;;wBAHK,IAAI,GAAG,SAGZ;wBAED,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;;;;aAC7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,8CAA8C,EAAE;QACtD,UAAU,CAAC;YACT,eAAK;iBACF,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC;iBACtC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,SAAS,CAAC;YACP,iBAAiB,CAAC,WAAwB,CAAC,OAAO,EAAE,CAAC;QACxD,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,eAAe,EAAE;;;;;wBACZ,CAAC,GAAG,IAAA,sCAAuB,EAAC,EAAkB,CAAC,CAAC;wBACtD,qBAAM,CAAC,CAAC,EAAqB,EAAE,YAAgC,CAAC,EAAA;;wBAAhE,SAAgE,CAAC;wBAEjE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;;;;aACzB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"stateHandler.spec.js","sourceRoot":"","sources":["../../../../../../src/dsl/verifier/proxy/stateHandler/stateHandler.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAwB;AACxB,sEAA8C;AAC9C,gDAAwC;AAIxC,+CAAyD;AACzD,+DAAmD;AAGnD,cAAI,CAAC,GAAG,CAAC,0BAAc,CAAC,CAAC;AAEjB,IAAA,MAAM,GAAK,cAAI,OAAT,CAAU;AAExB,QAAQ,CAAC,0BAA0B,EAAE;IACnC,IAAI,GAAQ,CAAC;IACb,IAAM,YAAY,GAAG;QACnB,MAAM,EAAE,UAAC,MAAc;YACrB,GAAG,GAAG,MAAM,CAAC;YACb,OAAO;gBACL,6CAA6C;gBAC7C,IAAI,EAAE,cAAO,CAAC;aACf,CAAC;QACJ,CAAC;QACD,IAAI,EAAE,UAAC,IAAS,IAAK,OAAA,IAAI,EAAJ,CAAI;KAC1B,CAAC;IAEF,OAAO,CAAC,wCAAwC,EAAE;QAChD,UAAU,CAAC;YACT,eAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QACH,SAAS,CAAC;YACP,iBAAiB,CAAC,WAAwB,CAAC,OAAO,EAAE,CAAC;QACxD,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,eAAe,EAAE;;;;;wBACZ,CAAC,GAAG,IAAA,sCAAuB,EAAC,EAAkB,CAAC,CAAC;wBACzC,qBAAM,CAAC,CAClB,EAAqB,EACrB,YAAgC,CACjC,EAAA;;wBAHK,IAAI,GAAG,SAGZ;wBAED,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;;;;aAC7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,8CAA8C,EAAE;QACtD,UAAU,CAAC;YACT,eAAK;iBACF,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC;iBACtC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,SAAS,CAAC;YACP,iBAAiB,CAAC,WAAwB,CAAC,OAAO,EAAE,CAAC;QACxD,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,eAAe,EAAE;;;;;wBACZ,CAAC,GAAG,IAAA,sCAAuB,EAAC,EAAkB,CAAC,CAAC;wBACtD,qBAAM,CAAC,CAAC,EAAqB,EAAE,YAAgC,CAAC,EAAA;;wBAAhE,SAAgE,CAAC;wBAEjE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;;;;aACzB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import * as express from 'express';
2
2
  import { LogLevel } from '../../options';
3
3
  import { JsonMap, AnyJson } from '../../../common/jsonTypes';
4
+ import { MessageProviders } from 'dsl/message';
4
5
  export declare type Hook = () => Promise<unknown>;
5
6
  /**
6
7
  * State handlers map a state description to a function
@@ -39,10 +40,11 @@ export interface ProxyOptions {
39
40
  logLevel?: LogLevel;
40
41
  requestFilter?: express.RequestHandler;
41
42
  stateHandlers?: StateHandlers;
43
+ messageProviders?: MessageProviders;
42
44
  beforeEach?: Hook;
43
45
  afterEach?: Hook;
44
46
  validateSSL?: boolean;
45
47
  changeOrigin?: boolean;
46
- providerBaseUrl: string;
48
+ providerBaseUrl?: string;
47
49
  proxyHost?: string;
48
50
  }
@@ -1,3 +1,7 @@
1
1
  import { VerifierOptions as PactCoreVerifierOptions } from '@pact-foundation/pact-core';
2
+ import { MessageProviderOptions } from 'dsl/options';
2
3
  import { ProxyOptions } from './proxy/types';
3
- export declare type VerifierOptions = PactCoreVerifierOptions & ProxyOptions;
4
+ declare type ExcludedPactNodeVerifierKeys = Exclude<keyof PactCoreVerifierOptions, 'providerBaseUrl'>;
5
+ export declare type PactNodeVerificationExcludedOptions = Pick<PactCoreVerifierOptions, ExcludedPactNodeVerifierKeys>;
6
+ export declare type VerifierOptions = PactNodeVerificationExcludedOptions & ProxyOptions & Partial<MessageProviderOptions>;
7
+ export {};
@@ -2,6 +2,7 @@ import { VerifierOptions } from './types';
2
2
  export declare class Verifier {
3
3
  private address;
4
4
  private stateSetupPath;
5
+ private messageTransportPath;
5
6
  private config;
6
7
  private deprecatedFields;
7
8
  constructor(config: VerifierOptions);
@@ -52,8 +52,10 @@ var proxy_1 = require("./proxy");
52
52
  var Verifier = /** @class */ (function () {
53
53
  function Verifier(config) {
54
54
  var _this = this;
55
- this.address = 'http://localhost';
55
+ var _a;
56
+ this.address = 'http://127.0.0.1';
56
57
  this.stateSetupPath = '/_pactSetup';
58
+ this.messageTransportPath = '/_messages';
57
59
  this.deprecatedFields = ['providerStatesSetupUrl'];
58
60
  this.config = config;
59
61
  if (this.config.logLevel && !(0, lodash_1.isEmpty)(this.config.logLevel)) {
@@ -78,6 +80,11 @@ var Verifier = /** @class */ (function () {
78
80
  logger_1.default.debug("non-local provider address ".concat(this.config.providerBaseUrl, " detected, setting 'changeOrigin' to 'true'. This property can be overridden."));
79
81
  }
80
82
  }
83
+ if (!this.config.providerBaseUrl &&
84
+ !this.config.messageProviders &&
85
+ !((_a = this === null || this === void 0 ? void 0 : this.config) === null || _a === void 0 ? void 0 : _a.transports)) {
86
+ throw new configurationError_1.default("'providerBaseUrl' is mandatory if no 'messageProviders' or 'transports' given");
87
+ }
81
88
  }
82
89
  /**
83
90
  * Verify a HTTP Provider
@@ -90,7 +97,7 @@ var Verifier = /** @class */ (function () {
90
97
  return Promise.reject(new configurationError_1.default('No configuration provided to verifier'));
91
98
  }
92
99
  // Start the verification CLI proxy server
93
- var server = (0, proxy_1.createProxy)(this.config, this.stateSetupPath);
100
+ var server = (0, proxy_1.createProxy)(this.config, this.stateSetupPath, this.messageTransportPath);
94
101
  logger_1.default.trace("proxy created, waiting for startup");
95
102
  // Run the verification once the proxy server is available
96
103
  return (0, proxy_1.waitForServerReady)(server)
@@ -114,12 +121,22 @@ var Verifier = /** @class */ (function () {
114
121
  Verifier.prototype.runProviderVerification = function () {
115
122
  var _this = this;
116
123
  return function (server) {
117
- var opts = __assign(__assign({ providerStatesSetupUrl: "".concat(_this.address, ":").concat(server.address().port).concat(_this.stateSetupPath) }, (0, lodash_1.omit)(_this.config, 'handlers')), { providerBaseUrl: "".concat(_this.address, ":").concat(server.address().port) });
124
+ var _a;
125
+ var opts = __assign(__assign({ providerStatesSetupUrl: "".concat(_this.address, ":").concat(server.address().port).concat(_this.stateSetupPath) }, (0, lodash_1.omit)(_this.config, 'handlers')), { providerBaseUrl: "".concat(_this.address, ":").concat(server.address().port), transports: (_a = _this.config.transports) === null || _a === void 0 ? void 0 : _a.concat([
126
+ {
127
+ port: server.address().port,
128
+ path: _this.messageTransportPath,
129
+ protocol: 'message',
130
+ },
131
+ ]) });
118
132
  logger_1.default.trace("Verifying pacts with: ".concat(JSON.stringify(opts)));
119
133
  return pact_core_1.default.verifyPacts(opts);
120
134
  };
121
135
  };
122
136
  Verifier.prototype.isLocalVerification = function () {
137
+ if (!this.config.providerBaseUrl) {
138
+ return true;
139
+ }
123
140
  var u = new url.URL(this.config.providerBaseUrl);
124
141
  return (net_1.localAddresses.includes(u.host) || net_1.localAddresses.includes(u.hostname));
125
142
  };
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../../../../src/dsl/verifier/verifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../../../../src/dsl/verifier/verifier.ts"],"names":[],"mappings":"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"}
@@ -177,7 +177,9 @@ var MessageProviderPact = /** @class */ (function () {
177
177
  };
178
178
  // Lookup the handler based on the description, or get the default handler
179
179
  MessageProviderPact.prototype.findHandler = function (message) {
180
- var handler = this.config.messageProviders[message.description || ''];
180
+ var handler = this.config.messageProviders
181
+ ? this.config.messageProviders[message.description || '']
182
+ : undefined;
181
183
  if (!handler) {
182
184
  logger_1.default.error("no handler found for message ".concat(message.description));
183
185
  return Promise.reject(new Error("No handler found for message \"".concat(message.description, "\".\n Check your \"handlers\" configuration")));
@@ -1 +1 @@
1
- {"version":3,"file":"messageProviderPact.js","sourceRoot":"","sources":["../../src/messageProviderPact.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,iCAAuC;AAEvC,yEAA6E;AAC7E,oDAA8B;AAC9B,yCAA6B;AAC7B,4DAAqC;AACrC,uCAAmD;AAOnD,wDAAsD;AAGtD,qCAAqC;AACrC,sCAAsC;AAC/B,IAAM,kBAAkB,GAAG,UAAC,MAAmB;IACpD,OAAA,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;QAC1B,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,cAAM,OAAA,OAAO,CAAC,MAAM,CAAC,EAAf,CAAe,CAAC,CAAC;QAC9C,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,cAAM,OAAA,MAAM,EAAE,EAAR,CAAQ,CAAC,CAAC;IACrC,CAAC,CAAC;AAHF,CAGE,CAAC;AAJQ,QAAA,kBAAkB,sBAI1B;AAEL,uDAAuD;AAChD,IAAM,gBAAgB,GAAG,UAC9B,GAA2E,IAC3D,OAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAA/B,CAA+B,CAAC;AAFrC,QAAA,gBAAgB,oBAEqB;AAElD,IAAM,WAAW,GAAG,UAClB,CAA4C;IAE5C,OAAA,OAAO,CAAE,CAAqC,CAAC,qBAAqB,CAAC;AAArE,CAAqE,CAAC;AAEjE,IAAM,oBAAoB,GAC/B,UACE,QAAyB,EACzB,QAAgC;IAElC,OAAA,UAAC,UAA6B;QAC5B,OAAA,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAC,OAAO;YACjD,OAAA,WAAW,CAAC,OAAO,CAAC;gBAClB,CAAC,CAAC;oBACE,qBAAqB,wBAChB,OAAO,CAAC,qBAAqB,GAC7B,QAAQ,CACZ;oBACD,OAAO,SAAA;iBACR;gBACH,CAAC,CAAC,EAAE,qBAAqB,EAAE,QAAQ,EAAE,OAAO,SAAA,EAAE;QARhD,CAQgD,CACjD;IAVD,CAUC;AAXH,CAWG,CAAC;AAhBO,QAAA,oBAAoB,wBAgB3B;AAEN;;;;;GAKG;AACH;IACE,6BAAoB,MAAkC;QAAlC,WAAM,GAAN,MAAM,CAA4B;QACpD,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,IAAA,gBAAO,EAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YAChD,mBAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzC,IAAA,oBAAW,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;SAC9B;aAAM;YACL,IAAA,oBAAW,GAAE,CAAC;SACf;IACH,CAAC;IAED;;OAEG;IACI,oCAAM,GAAb;QACE,gBAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAEjC,0CAA0C;QAC1C,IAAM,GAAG,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACzC,IAAM,MAAM,GAAG,IAAA,wBAAgB,EAAC,GAAG,CAAC,CAAC;QAErC,0DAA0D;QAC1D,OAAO,IAAA,0BAAkB,EAAC,MAAM,CAAC;aAC9B,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;aACpC,IAAI,CACH,UAAC,MAAM;YACL,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,UAAC,GAAG;YACF,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,CAAC;QACZ,CAAC,CACF,CAAC;IACN,CAAC;IAED,mCAAmC;IAC3B,qDAAuB,GAA/B;QAAA,iBASC;QARC,OAAO,UAAC,MAAmB;YACzB,IAAM,IAAI,GAAG,sBACR,IAAA,aAAI,EAAC,KAAI,CAAC,MAAM,EAAE,UAAU,CAAC,GAC7B,EAAE,eAAe,EAAE,2BAAoB,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAE,EAAE,CACjD,CAAC;YAErB,OAAO,mBAAc,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC,CAAC;IACJ,CAAC;IAED,4EAA4E;IACpE,sDAAwB,GAAhC;QAAA,iBA2BC;QAvBC,OAAO,UAAC,GAAG,EAAE,GAAG;YACd,IAAM,OAAO,GAAsB,GAAG,CAAC,IAAI,CAAC;YAE5C,wDAAwD;YACxD,uBAAuB;YACvB,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC;iBACtB,IAAI,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAzB,CAAyB,CAAC;iBACrC,IAAI,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,OAAO,CAAC,EAAhB,CAAgB,CAAC;iBAEnC,IAAI,CAAC,UAAC,kBAAkB;gBACvB,IAAI,WAAW,CAAC,kBAAkB,CAAC,EAAE;oBACnC,IAAM,QAAQ,GAAG,IAAA,kBAAY,EAC3B,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,CACzD,CAAC;oBACF,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;oBAC9C,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;oBAE9C,OAAO,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;iBAC7C;gBACD,OAAO,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC,CAAC;iBACD,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAvB,CAAuB,CAAC,CAAC;QAC3C,CAAC,CAAC;IACJ,CAAC;IAED,sDAAsD;IAC9C,mDAAqB,GAA7B;QACE,IAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;QAEtB,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACnD,GAAG,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI;YACrB,6DAA6D;YAC7D,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAC;YAC9D,IAAI,EAAE,CAAC;QACT,CAAC,CAAC,CAAC;QAEH,gDAAgD;QAChD,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC;QAE/C,OAAO,GAAG,CAAC;IACb,CAAC;IAED,0EAA0E;IAClE,yCAAW,GAAnB,UAAoB,OAA0B;QAA9C,iBAkBC;QAjBC,IAAM,QAAQ,GAA4B,EAAE,CAAC;QAE7C,IAAI,OAAO,CAAC,cAAc,EAAE;YAC1B,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,UAAC,KAAK;gBACnC,IAAM,OAAO,GAAG,KAAI,CAAC,MAAM,CAAC,aAAa;oBACvC,CAAC,CAAC,KAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC;oBACvC,CAAC,CAAC,IAAI,CAAC;gBAET,IAAI,OAAO,EAAE;oBACX,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;iBAClD;qBAAM;oBACL,gBAAM,CAAC,IAAI,CAAC,uCAA+B,KAAK,CAAC,IAAI,iBAAa,CAAC,CAAC;iBACrE;YACH,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,0EAA0E;IAClE,yCAAW,GAAnB,UAAoB,OAA0B;QAC5C,IAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAExE,IAAI,CAAC,OAAO,EAAE;YACZ,gBAAM,CAAC,KAAK,CAAC,uCAAgC,OAAO,CAAC,WAAW,CAAE,CAAC,CAAC;YAEpE,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,KAAK,CACP,yCAAiC,OAAO,CAAC,WAAW,4DACb,CACxC,CACF,CAAC;SACH;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACH,0BAAC;AAAD,CAAC,AArID,IAqIC;AArIY,kDAAmB"}
1
+ {"version":3,"file":"messageProviderPact.js","sourceRoot":"","sources":["../../src/messageProviderPact.ts"],"names":[],"mappings":"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"}
@@ -159,7 +159,7 @@ describe('MesageProvider', function () {
159
159
  describe('#waitForServerReady', function () {
160
160
  describe('when the http server starts up', function () {
161
161
  it('returns a resolved promise', function () {
162
- // eslint-disable-next-line @typescript-eslint/no-empty-function
162
+ // eslint-disable-next-line @typescript-eslint/no-empty-function, no-empty-function
163
163
  var server = http.createServer(function () { }).listen();
164
164
  return expect((0, messageProviderPact_1.waitForServerReady)(server)).to.eventually.be.fulfilled;
165
165
  });