@pact-foundation/pact 12.0.0 → 12.1.1

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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,30 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ### [12.1.1](https://github.com/pact-foundation/pact-js/compare/v12.1.0...v12.1.1) (2023-11-10)
6
+
7
+
8
+ ### Fixes and Improvements
9
+
10
+ * allow re-use of PactV4 object ([38a68fb](https://github.com/pact-foundation/pact-js/commit/38a68fb4569a20f54160333498b8b0bc20ec7838))
11
+ * MessageConsumerPact merge pact file correctly ([6b5de27](https://github.com/pact-foundation/pact-js/commit/6b5de27c196af45704d9ca9f4837396363a56a15))
12
+ * package.json & package-lock.json to reduce vulnerabilities ([288bdfd](https://github.com/pact-foundation/pact-js/commit/288bdfd37e497f89589795dde7b7afba97ce0f50))
13
+ * return raw consumer mock server mismatch if structure unknown ([17be53c](https://github.com/pact-foundation/pact-js/commit/17be53c3808c8ea489b5b9d85f9287144f4a1a31))
14
+
15
+ ## [12.1.0](https://github.com/pact-foundation/pact-js/compare/v12.0.0...v12.1.0) (2023-07-18)
16
+
17
+
18
+ ### Features
19
+
20
+ * add eachKeyMatches + eachValueMatches matchers ([0b2098b](https://github.com/pact-foundation/pact-js/commit/0b2098b035a01e8c61c8165804a7eb3b0fb67c0d))
21
+
22
+
23
+ ### Fixes and Improvements
24
+
25
+ * Deprecate the `eachKeyLike` matcher ([0b2098b](https://github.com/pact-foundation/pact-js/commit/0b2098b035a01e8c61c8165804a7eb3b0fb67c0d))
26
+ * do not split headers by comma ([fccaa07](https://github.com/pact-foundation/pact-js/commit/fccaa0780562002e78b175a5406479171d689f34)), closes [#1031](https://github.com/pact-foundation/pact-js/issues/1031) [#1058](https://github.com/pact-foundation/pact-js/issues/1058)
27
+ * update dependencies to remove vulnerabilities ([4b00b63](https://github.com/pact-foundation/pact-js/commit/4b00b63fd17248d85017d16dc76d1866556a8117))
28
+
5
29
  ## [12.0.0](https://github.com/pact-foundation/pact-js/compare/v11.0.2...v12.0.0) (2023-07-10)
6
30
 
7
31
 
package/CONTRIBUTING.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Contributing
2
2
 
3
- We love contributors! Pact-js is maintained and contrbuted to by developers just like you.
3
+ We love contributors! Pact-js is maintained and contributed to by developers just like you.
4
4
 
5
5
  We have a development channel in the pact-foundation [slack] (`#pact-js-development`).
6
6
 
@@ -17,9 +17,9 @@ Please provide the following information with your issue to enable us to respond
17
17
 
18
18
  ## Key Branches
19
19
 
20
- * `master` - this is the current main version supporting the 11.x.x release line. Most investment will be here, including major new features, enhancements, bug fixes, security patches etc.
20
+ * `master` - this is the current main version supporting the 11.x.x release line. Most investment will be here, including major new features, enhancements, bug fixes, security patches, etc.
21
21
  * `9.x.x` - this is the previous major version supporting the 9.x.x release line. Critical security patches and bug fixes will be provided as a priority.
22
- * There is no tracking or release branch for 10.x.x at this stage. Most users can be encouraged to jump straight to 11.x.x noting the single breaking change (see the migration guide)
22
+ * There is no tracking or release branch for 10.x.x at this stage. Most users can be encouraged to jump straight to 11.x.x noting the single breaking change (see the migration guide).
23
23
 
24
24
  ## I want to contribute code but don't know where to start
25
25
 
@@ -79,10 +79,10 @@ The recommended approach is to configure Prettier to format on save in your edit
79
79
 
80
80
  ## Pull requests
81
81
 
82
- - Please write tests for any changes
83
- - Please follow existing code style and conventions
84
- - Please separate unrelated changes into multiple pull requests
85
- - For bigger changes, make sure you start a discussion first by creating an issue and explaining the intended change
82
+ - Please write tests for any changes.
83
+ - Please follow existing code style and conventions.
84
+ - Please separate unrelated changes into multiple pull requests.
85
+ - For bigger changes, make sure you start a discussion first by creating an issue and explaining the intended change.
86
86
 
87
87
  [stackoverflow]: https://stackoverflow.com/questions/tagged/pact
88
88
  [examples]: https://github.com/pact-foundation/pact-js/tree/master/examples
package/MIGRATION.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Pact-js migration guide
2
2
 
3
+ # 11.x.x -> 12.x.x
4
+
5
+ - Node versions less than 16 are no longer supported
6
+ - Pact FFI library is now prebuilt and included in the distributable dropping the requirement for a node-gyp build chain. Users can now use `--ignore-scripts`
7
+ - If errors are seen finding the native library, please
8
+ - run with `LOG_LEVEL=debug`
9
+ - follow the instructions provided
10
+
3
11
  # 10.x.x -> 11.x.x
4
12
 
5
13
  There is just one single [breaking change](https://github.com/pact-foundation/pact-js/blob/master/CHANGELOG.md#-breaking-changes) in this release. A conflicting type `StateHandlers` has been renamed to `MessageStateHandlers` for use in message pact tests.
package/README.md CHANGED
@@ -99,8 +99,11 @@ Looking for the previous [stable 9.x.x release](https://github.com/pact-foundati
99
99
 
100
100
  ### Requirements
101
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).
102
+ Node 16+ as of pact-js v12
103
+
104
+ 1. If using pact-js v11 or lower,
105
+ 1. make sure the `ignore-scripts` option is disabled, pact uses npm scripts to compile native dependencies and won't function without it.
106
+ 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). This is now prebuilt in pact-js v12+
104
107
 
105
108
  ### Do Not Track
106
109
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pact-foundation/pact",
3
- "version": "12.0.0",
3
+ "version": "12.1.1",
4
4
  "description": "Pact for all things Javascript",
5
5
  "main": "./src/index.js",
6
6
  "types": "./src/index.d.ts",
@@ -97,7 +97,7 @@
97
97
  "dependencies": {
98
98
  "@pact-foundation/pact-core": "^14.0.1",
99
99
  "@types/express": "^4.17.11",
100
- "axios": "^0.27.2",
100
+ "axios": "^1.6.1",
101
101
  "body-parser": "^1.20.0",
102
102
  "cli-color": "^2.0.1",
103
103
  "express": "^4.18.1",
@@ -12,8 +12,8 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")"; pwd)" # Figure out where the
12
12
 
13
13
  echo "Running e2e examples build for node version $(node --version)"
14
14
  for i in examples/*; do
15
- [ -d "$i" ] || continue # prevent failure if not a directory
16
- [ -e "$i" ] || continue # prevent failure if there are no examples
15
+ [ -d "$i" ] || break # prevent failure if not a directory
16
+ [ -e "$i" ] || break # prevent failure if there are no examples
17
17
  echo "--> running tests for: $i"
18
18
  pushd "$i"
19
19
  # replace pact dependency with locally build version
@@ -42,8 +42,8 @@ echo "Running Vx examples build"
42
42
  # trap "docker kill $BROKER_ID" EXIT
43
43
 
44
44
  for i in examples/v*/*; do
45
- [ -d "$i" ] || continue # prevent failure if not a directory
46
- [ -e "$i" ] || continue # prevent failure if there are no examples
45
+ [ -d "$i" ] || break # prevent failure if not a directory
46
+ [ -e "$i" ] || break # prevent failure if there are no examples
47
47
  echo "------------------------------------------------"
48
48
  echo "------------> continuing to test V3/v$ example project: $i"
49
49
  node --version
@@ -69,17 +69,13 @@ var setHeaders = function (part, interaction, headers) {
69
69
  if (Array.isArray(v)) {
70
70
  values = v;
71
71
  }
72
- else if (typeof v === 'string') {
73
- // Allow comma separated items, such as: "application/problem+json, application/json, */*"
74
- values = v.split(',').map(function (h) { return h.trim(); });
75
- }
76
72
  else {
77
73
  values = [v];
78
74
  }
79
75
  switch (part) {
80
76
  case InteractionPart.REQUEST:
81
77
  values.forEach(function (h, i) {
82
- logger_1.default.debug("setting header request value for ".concat(h, " at index ").concat(i, " to ").concat(JSON.stringify((0, matchers_1.matcherValueOrString)(h))));
78
+ logger_1.default.debug("setting header request value for ".concat(k, " at index ").concat(i, " to ").concat(JSON.stringify((0, matchers_1.matcherValueOrString)(h))));
83
79
  interaction.withRequestHeader(k, i, (0, matchers_1.matcherValueOrString)(h));
84
80
  });
85
81
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"ffi.js","sourceRoot":"","sources":["../../../src/httpPact/ffi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ffi.js","sourceRoot":"","sources":["../../../src/httpPact/ffi.ts"],"names":[],"mappings":"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"}
@@ -165,7 +165,7 @@ var MessageConsumerPact = /** @class */ (function () {
165
165
  return handler(this.reifiedContent())
166
166
  .then(function () {
167
167
  var _a;
168
- _this.pact.writePactFile((_a = _this.config.dir) !== null && _a !== void 0 ? _a : DEFAULT_PACT_DIR, _this.config.pactfileWriteMode === 'overwrite');
168
+ _this.pact.writePactFile((_a = _this.config.dir) !== null && _a !== void 0 ? _a : DEFAULT_PACT_DIR, _this.config.pactfileWriteMode !== 'overwrite');
169
169
  })
170
170
  .finally(function () {
171
171
  _this.message = _this.pact.newMessage('');
package/src/v3/display.js CHANGED
@@ -114,7 +114,7 @@ function generateMockServerError(mismatches, indent) {
114
114
  if (mismatch.type === 'missing-request') {
115
115
  return "\n".concat(indent).concat(i, ") The following request was expected but not received: ").concat(displayRequest(mismatch.request, "".concat(indent, " ")));
116
116
  }
117
- return '';
117
+ return "Unknown mismatch: ".concat(mismatch);
118
118
  }), true).join('\n');
119
119
  }
120
120
  exports.generateMockServerError = generateMockServerError;
@@ -1 +1 @@
1
- {"version":3,"file":"display.js","sourceRoot":"","sources":["../../../src/v3/display.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"display.js","sourceRoot":"","sources":["../../../src/v3/display.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ArrayContainsMatcher, DateTimeMatcher, Matcher, MaxLikeMatcher, MinLikeMatcher, ProviderStateInjectedValue, V3RegexMatcher } from './types';
1
+ import { ArrayContainsMatcher, DateTimeMatcher, Matcher, MaxLikeMatcher, MinLikeMatcher, ProviderStateInjectedValue, RulesMatcher, V3RegexMatcher } from './types';
2
2
  import { AnyJson } from '../common/jsonTypes';
3
3
  export * from './types';
4
4
  export declare function isMatcher(x: unknown): x is Matcher<unknown>;
@@ -10,10 +10,29 @@ export declare const like: <T>(template: T) => Matcher<T>;
10
10
  /**
11
11
  * Object where the key itself is ignored, but the value template must match.
12
12
  *
13
+ * @deprecated use eachKeyMatches or eachValueMatches
13
14
  * @param keyTemplate Example key to use
14
15
  * @param template Example value template to base the comparison on
15
16
  */
16
17
  export declare const eachKeyLike: <T>(keyTemplate: string, template: T) => Matcher<T>;
18
+ /**
19
+ * Object where the _keys_ must match the supplied matchers.
20
+ * The values for each key are ignored. That is, there can be 0 or more keys
21
+ * with any valid JSON identifier, so long as the names of the keys match the constraints.
22
+ *
23
+ * @param example Example object with key/values e.g. `{ foo: 'bar', baz: 'qux'}`
24
+ * @param matchers Matchers to apply to each key
25
+ */
26
+ export declare const eachKeyMatches: (example: Record<string, unknown>, matchers?: Matcher<string> | Matcher<string>[]) => RulesMatcher<unknown>;
27
+ /**
28
+ * Object where the _values_ must match the supplied matchers.
29
+ * The names of the keys are ignored. That is, there can be 0 or more keys
30
+ * with any valid JSON identifier, so long as the values match the constraints.
31
+ *
32
+ * @param example Example object with key/values e.g. `{ foo: 'bar', baz: 'qux'}`
33
+ * @param matchers Matchers to apply to each value
34
+ */
35
+ export declare const eachValueMatches: <T>(example: Record<string, T>, matchers: Matcher<T> | Matcher<T>[]) => RulesMatcher<T>;
17
36
  /**
18
37
  * Array where each element must match the given template
19
38
  * @param template Template to base the comparison on
@@ -37,7 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  return (mod && mod.__esModule) ? mod : { "default": mod };
38
38
  };
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
- exports.extractPayload = exports.reify = exports.matcherValueOrString = exports.uuid = exports.fromProviderState = exports.arrayContaining = exports.url = exports.url2 = exports.nullValue = exports.includes = exports.date = exports.time = exports.timestamp = exports.datetime = exports.equal = exports.regex = exports.string = exports.number = exports.decimal = exports.integer = exports.boolean = exports.constrainedArrayLike = exports.atMostLike = exports.atLeastLike = exports.atLeastOneLike = exports.eachLike = exports.eachKeyLike = exports.like = exports.isMatcher = void 0;
40
+ exports.extractPayload = exports.reify = exports.matcherValueOrString = exports.uuid = exports.fromProviderState = exports.arrayContaining = exports.url = exports.url2 = exports.nullValue = exports.includes = exports.date = exports.time = exports.timestamp = exports.datetime = exports.equal = exports.regex = exports.string = exports.number = exports.decimal = exports.integer = exports.boolean = exports.constrainedArrayLike = exports.atMostLike = exports.atLeastLike = exports.atLeastOneLike = exports.eachLike = exports.eachValueMatches = exports.eachKeyMatches = exports.eachKeyLike = exports.like = exports.isMatcher = void 0;
41
41
  var ramda_1 = require("ramda");
42
42
  var randexp_1 = __importDefault(require("randexp"));
43
43
  __exportStar(require("./types"), exports);
@@ -59,6 +59,7 @@ exports.like = like;
59
59
  /**
60
60
  * Object where the key itself is ignored, but the value template must match.
61
61
  *
62
+ * @deprecated use eachKeyMatches or eachValueMatches
62
63
  * @param keyTemplate Example key to use
63
64
  * @param template Example value template to base the comparison on
64
65
  */
@@ -72,6 +73,41 @@ var eachKeyLike = function (keyTemplate, template) {
72
73
  });
73
74
  };
74
75
  exports.eachKeyLike = eachKeyLike;
76
+ /**
77
+ * Object where the _keys_ must match the supplied matchers.
78
+ * The values for each key are ignored. That is, there can be 0 or more keys
79
+ * with any valid JSON identifier, so long as the names of the keys match the constraints.
80
+ *
81
+ * @param example Example object with key/values e.g. `{ foo: 'bar', baz: 'qux'}`
82
+ * @param matchers Matchers to apply to each key
83
+ */
84
+ var eachKeyMatches = function (example, matchers) {
85
+ if (matchers === void 0) { matchers = (0, exports.like)('key'); }
86
+ return ({
87
+ 'pact:matcher:type': 'eachKey',
88
+ rules: Array.isArray(matchers) ? matchers : [matchers],
89
+ value: example,
90
+ });
91
+ };
92
+ exports.eachKeyMatches = eachKeyMatches;
93
+ /**
94
+ * Object where the _values_ must match the supplied matchers.
95
+ * The names of the keys are ignored. That is, there can be 0 or more keys
96
+ * with any valid JSON identifier, so long as the values match the constraints.
97
+ *
98
+ * @param example Example object with key/values e.g. `{ foo: 'bar', baz: 'qux'}`
99
+ * @param matchers Matchers to apply to each value
100
+ */
101
+ var eachValueMatches = function (example, matchers) { return ({
102
+ 'pact:matcher:type': 'eachValue',
103
+ rules: Array.isArray(matchers) ? matchers : [matchers],
104
+ value: example,
105
+ // Unsure if the full object is provided, or just a template k/v pair
106
+ // value: {
107
+ // [keyTemplate]: template,
108
+ // },
109
+ }); };
110
+ exports.eachValueMatches = eachValueMatches;
75
111
  /**
76
112
  * Array where each element must match the given template
77
113
  * @param template Template to base the comparison on
@@ -1 +1 @@
1
- {"version":3,"file":"matchers.js","sourceRoot":"","sources":["../../../src/v3/matchers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matchers.js","sourceRoot":"","sources":["../../../src/v3/matchers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA6C;AAC7C,oDAA8B;AAe9B,0CAAwB;AAExB,SAAgB,SAAS,CAAC,CAAU;IAClC,OAAO,CACL,CAAC,IAAI,IAAI;QACR,CAAsB,CAAC,mBAAmB,CAAC,KAAK,SAAS;QACzD,CAAsB,CAAC,KAAK,KAAK,SAAS,CAC5C,CAAC;AACJ,CAAC;AAND,8BAMC;AAED;;;GAGG;AACI,IAAM,IAAI,GAAG,UAAI,QAAW,IAAiB,OAAA,CAAC;IACnD,mBAAmB,EAAE,MAAM;IAC3B,KAAK,EAAE,QAAQ;CAChB,CAAC,EAHkD,CAGlD,CAAC;AAHU,QAAA,IAAI,QAGd;AAEH;;;;;;GAMG;AACI,IAAM,WAAW,GAAG,UACzB,WAAmB,EACnB,QAAW;;IACI,OAAA,CAAC;QAChB,mBAAmB,EAAE,QAAQ;QAC7B,KAAK;YACH,GAAC,WAAW,IAAG,QAAQ;eACxB;KACF,CAAC;AALe,CAKf,CAAC;AARU,QAAA,WAAW,eAQrB;AAEH;;;;;;;GAOG;AACI,IAAM,cAAc,GAAG,UAC5B,OAAgC,EAChC,QAA2D;IAA3D,yBAAA,EAAA,eAAgD,YAAI,EAAC,KAAK,CAAC;IACjC,OAAA,CAAC;QAC3B,mBAAmB,EAAE,SAAS;QAC9B,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACtD,KAAK,EAAE,OAAO;KACf,CAAC;AAJ0B,CAI1B,CAAC;AAPU,QAAA,cAAc,kBAOxB;AAEH;;;;;;;GAOG;AACI,IAAM,gBAAgB,GAAG,UAC9B,OAA0B,EAC1B,QAAmC,IACf,OAAA,CAAC;IACrB,mBAAmB,EAAE,WAAW;IAChC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtD,KAAK,EAAE,OAAO;IACd,qEAAqE;IACrE,WAAW;IACX,6BAA6B;IAC7B,KAAK;CACN,CAAC,EARoB,CAQpB,CAAC;AAXU,QAAA,gBAAgB,oBAW1B;AAEH;;;;GAIG;AACI,IAAM,QAAQ,GAAG,UAAI,QAAW,EAAE,GAAO;IAAP,oBAAA,EAAA,OAAO;IAC9C,IAAM,QAAQ,GAAG,GAAG,CAAC;IACrB,OAAO;QACL,GAAG,KAAA;QACH,mBAAmB,EAAE,MAAM;QAC3B,KAAK,EAAE,IAAA,aAAK,EAAC,cAAM,OAAA,QAAQ,EAAR,CAAQ,EAAE,QAAQ,CAAC;KACvC,CAAC;AACJ,CAAC,CAAC;AAPW,QAAA,QAAQ,YAOnB;AAEF;;;;GAIG;AACI,IAAM,cAAc,GAAG,UAC5B,QAAW,EACX,KAAS;IAAT,sBAAA,EAAA,SAAS;IACe,OAAA,CAAC;QACzB,GAAG,EAAE,CAAC;QACN,mBAAmB,EAAE,MAAM;QAC3B,KAAK,EAAE,IAAA,aAAK,EAAC,cAAM,OAAA,QAAQ,EAAR,CAAQ,EAAE,KAAK,CAAC;KACpC,CAAC;AAJwB,CAIxB,CAAC;AAPU,QAAA,cAAc,kBAOxB;AAEH;;;;;GAKG;AACI,IAAM,WAAW,GAAG,UACzB,QAAW,EACX,GAAW,EACX,KAAc;IAEd,IAAM,QAAQ,GAAG,KAAK,IAAI,GAAG,CAAC;IAC9B,IAAI,KAAK,IAAI,KAAK,GAAG,GAAG,EAAE;QACxB,MAAM,IAAI,KAAK,CACb,uCAAgC,GAAG,kBAAQ,KAAK,8BAA2B;YACzE,2DAA2D,CAC9D,CAAC;KACH;IAED,OAAO;QACL,GAAG,KAAA;QACH,mBAAmB,EAAE,MAAM;QAC3B,KAAK,EAAE,IAAA,aAAK,EAAC,cAAM,OAAA,QAAQ,EAAR,CAAQ,EAAE,QAAQ,CAAC;KACvC,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,WAAW,eAkBtB;AAEF;;;;;GAKG;AACI,IAAM,UAAU,GAAG,UACxB,QAAW,EACX,GAAW,EACX,KAAc;IAEd,IAAM,QAAQ,GAAG,KAAK,IAAI,CAAC,CAAC;IAC5B,IAAI,KAAK,IAAI,KAAK,GAAG,GAAG,EAAE;QACxB,MAAM,IAAI,KAAK,CACb,sCAA+B,GAAG,kBAAQ,KAAK,+BAA4B;YACzE,wDAAwD,CAC3D,CAAC;KACH;IAED,OAAO;QACL,GAAG,KAAA;QACH,mBAAmB,EAAE,MAAM;QAC3B,KAAK,EAAE,IAAA,aAAK,EAAC,cAAM,OAAA,QAAQ,EAAR,CAAQ,EAAE,QAAQ,CAAC;KACvC,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,UAAU,cAkBrB;AAEF;;;;;;GAMG;AACI,IAAM,oBAAoB,GAAG,UAClC,QAAW,EACX,GAAW,EACX,GAAW,EACX,KAAc;IAEd,IAAM,QAAQ,GAAG,KAAK,IAAI,GAAG,CAAC;IAC9B,IAAI,KAAK,EAAE;QACT,IAAI,KAAK,GAAG,GAAG,EAAE;YACf,MAAM,IAAI,KAAK,CACb,gDAAyC,GAAG,kBAAQ,KAAK,+BAA4B;gBACnF,2DAA2D,CAC9D,CAAC;SACH;aAAM,IAAI,KAAK,GAAG,GAAG,EAAE;YACtB,MAAM,IAAI,KAAK,CACb,gDAAyC,GAAG,kBAAQ,KAAK,+BAA4B;gBACnF,wDAAwD,CAC3D,CAAC;SACH;KACF;IAED,OAAO;QACL,GAAG,KAAA;QACH,GAAG,KAAA;QACH,mBAAmB,EAAE,MAAM;QAC3B,KAAK,EAAE,IAAA,aAAK,EAAC,cAAM,OAAA,QAAQ,EAAR,CAAQ,EAAE,QAAQ,CAAC;KACvC,CAAC;AACJ,CAAC,CAAC;AA3BW,QAAA,oBAAoB,wBA2B/B;AAEF;;;GAGG;AACI,IAAM,OAAO,GAAG,UAAC,CAAQ;IAAR,kBAAA,EAAA,QAAQ;IAAuB,OAAA,CAAC;QACtD,mBAAmB,EAAE,MAAM;QAC3B,KAAK,EAAE,CAAC;KACT,CAAC;AAHqD,CAGrD,CAAC;AAHU,QAAA,OAAO,WAGjB;AAEH;;;GAGG;AACI,IAAM,OAAO,GAAG,UAAC,GAAY;IAClC,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;QACzB,OAAO;YACL,mBAAmB,EAAE,SAAS;YAC9B,KAAK,EAAE,GAAG;SACX,CAAC;KACH;IACD,IAAI,GAAG,EAAE;QACP,MAAM,IAAI,KAAK,CACb,0CAAmC,GAAG,+BAA4B,CACnE,CAAC;KACH;IAED,OAAO;QACL,qBAAqB,EAAE,WAAW;QAClC,mBAAmB,EAAE,SAAS;QAC9B,KAAK,EAAE,GAAG;KACX,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,OAAO,WAkBlB;AAEF;;;GAGG;AACI,IAAM,OAAO,GAAG,UAAC,GAAY;IAClC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACxB,OAAO;YACL,mBAAmB,EAAE,SAAS;YAC9B,KAAK,EAAE,GAAG;SACX,CAAC;KACH;IACD,IAAI,GAAG,EAAE;QACP,MAAM,IAAI,KAAK,CACb,0CAAmC,GAAG,6BAA0B,CACjE,CAAC;KACH;IACD,OAAO;QACL,qBAAqB,EAAE,eAAe;QACtC,mBAAmB,EAAE,SAAS;QAC9B,KAAK,EAAE,KAAK;KACb,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,OAAO,WAiBlB;AAEF;;;GAGG;AACH,SAAgB,MAAM,CAAC,GAAY;IACjC,IAAI,GAAG,EAAE;QACP,OAAO;YACL,mBAAmB,EAAE,QAAQ;YAC7B,KAAK,EAAE,GAAG;SACX,CAAC;KACH;IACD,OAAO;QACL,qBAAqB,EAAE,WAAW;QAClC,mBAAmB,EAAE,QAAQ;QAC7B,KAAK,EAAE,IAAI;KACZ,CAAC;AACJ,CAAC;AAZD,wBAYC;AAED;;;GAGG;AACH,SAAgB,MAAM,CAAC,GAAmB;IAAnB,oBAAA,EAAA,mBAAmB;IACxC,OAAO;QACL,mBAAmB,EAAE,MAAM;QAC3B,KAAK,EAAE,GAAG;KACX,CAAC;AACJ,CAAC;AALD,wBAKC;AAED;;;;GAIG;AACH,SAAgB,KAAK,CAAC,OAAwB,EAAE,GAAW;IACzD,IAAI,OAAO,YAAY,MAAM,EAAE;QAC7B,OAAO;YACL,mBAAmB,EAAE,OAAO;YAC5B,KAAK,EAAE,OAAO,CAAC,MAAM;YACrB,KAAK,EAAE,GAAG;SACX,CAAC;KACH;IACD,OAAO;QACL,mBAAmB,EAAE,OAAO;QAC5B,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,GAAG;KACX,CAAC;AACJ,CAAC;AAbD,sBAaC;AAED;;;GAGG;AACI,IAAM,KAAK,GAAG,UAAI,KAAQ,IAAiB,OAAA,CAAC;IACjD,mBAAmB,EAAE,UAAU;IAC/B,KAAK,OAAA;CACN,CAAC,EAHgD,CAGhD,CAAC;AAHU,QAAA,KAAK,SAGf;AAEH;;;;GAIG;AACH,SAAgB,QAAQ,CAAC,MAAc,EAAE,OAAe;IACtD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;KACzD;IAED,OAAO,IAAA,cAAM,EAAC,UAAC,CAAC,IAAK,OAAA,CAAC,IAAA,aAAK,EAAC,CAAC,CAAC,EAAT,CAAS,EAAE;QAC9B,qBAAqB,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;QACvD,mBAAmB,EAAE,WAAW;QAChC,MAAM,QAAA;QACN,KAAK,EAAE,OAAO;KACf,CAAC,CAAC;AACL,CAAC;AAXD,4BAWC;AAED;;;;GAIG;AACH,SAAgB,SAAS,CAAC,MAAc,EAAE,OAAe;IACvD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;KAC1D;IACD,OAAO,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACnC,CAAC;AALD,8BAKC;AAED;;;;GAIG;AACH,SAAgB,IAAI,CAAC,MAAc,EAAE,OAAe;IAClD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACrD;IACD,OAAO;QACL,qBAAqB,EAAE,MAAM;QAC7B,mBAAmB,EAAE,MAAM;QAC3B,MAAM,QAAA;QACN,KAAK,EAAE,OAAO;KACf,CAAC;AACJ,CAAC;AAVD,oBAUC;AAED;;;;GAIG;AACH,SAAgB,IAAI,CAAC,MAAc,EAAE,OAAe;IAClD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACrD;IACD,OAAO;QACL,MAAM,QAAA;QACN,qBAAqB,EAAE,MAAM;QAC7B,mBAAmB,EAAE,MAAM;QAC3B,KAAK,EAAE,OAAO;KACf,CAAC;AACJ,CAAC;AAVD,oBAUC;AAED;;;GAGG;AACH,SAAgB,QAAQ,CAAC,KAAa;IACpC,OAAO;QACL,mBAAmB,EAAE,SAAS;QAC9B,KAAK,OAAA;KACN,CAAC;AACJ,CAAC;AALD,4BAKC;AAED;;;GAGG;AACH,SAAgB,SAAS;IACvB,OAAO;QACL,mBAAmB,EAAE,MAAM;KAC5B,CAAC;AACJ,CAAC;AAJD,8BAIC;AAED,SAAS,eAAe,CAAC,CAAS;IAChC,OAAO,IAAI,iBAAO,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AAC9B,CAAC;AAED;;;;GAIG;AACH,SAAgB,IAAI,CAClB,QAAuB,EACvB,aAAsD;IAEtD,IAAM,OAAO,GAAG;QACd,KAAK;OACF,aAAa,CAAC,GAAG,CAAC,UAAC,CAAC;QACrB,IAAI,CAAC,YAAY,MAAM,EAAE;YACvB,OAAO,aAAM,CAAC,CAAC,MAAM,CAAE,CAAC;SACzB;QACD,IAAI,CAAC,YAAY,MAAM,IAAI,CAAC,CAAC,mBAAmB,CAAC,KAAK,OAAO,EAAE;YAC7D,OAAO,aAAM,CAAC,CAAC,KAAK,CAAE,CAAC;SACxB;QACD,OAAO,aAAM,CAAC,CAAC,QAAQ,EAAE,CAAE,CAAC;IAC9B,CAAC,CAAC,QACF,IAAI,CAAC,EAAE,CAAC,CAAC;IAEX,IAAM,OAAO,GAAG;QACd,QAAQ,IAAI,uBAAuB;OAChC,aAAa,CAAC,GAAG,CAAC,UAAC,CAAC;QACrB,IAAI,CAAC,YAAY,MAAM,EAAE;YACvB,OAAO,WAAI,eAAe,CAAC,CAAC,CAAC,CAAE,CAAC;SACjC;QACD,IAAI,CAAC,YAAY,MAAM,IAAI,CAAC,CAAC,mBAAmB,CAAC,KAAK,OAAO,EAAE;YAC7D,OAAO,WAAI,CAAC,CAAC,KAAK,CAAE,CAAC;SACtB;QACD,OAAO,WAAI,CAAC,CAAC,QAAQ,EAAE,CAAE,CAAC;IAC5B,CAAC,CAAC,QACF,IAAI,CAAC,EAAE,CAAC,CAAC;IAEX,wGAAwG;IACxG,iDAAiD;IACjD,IAAI,QAAQ,IAAI,IAAI,EAAE;QACpB,OAAO;YACL,mBAAmB,EAAE,OAAO;YAC5B,qBAAqB,EAAE,eAAe;YACtC,KAAK,EAAE,UAAG,OAAO,OAAI;YACrB,KAAK,EAAE,OAAO;YACd,OAAO,SAAA;SACR,CAAC;KACH;IACD,OAAO;QACL,mBAAmB,EAAE,OAAO;QAC5B,KAAK,EAAE,UAAG,OAAO,OAAI;QACrB,KAAK,EAAE,OAAO;KACf,CAAC;AACJ,CAAC;AA9CD,oBA8CC;AAED;;;GAGG;AACH,SAAgB,GAAG,CACjB,aAAsD;IAEtD,OAAO,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACnC,CAAC;AAJD,kBAIC;AAED;;;GAGG;AACH,SAAgB,eAAe;IAAC,kBAAsB;SAAtB,UAAsB,EAAtB,qBAAsB,EAAtB,IAAsB;QAAtB,6BAAsB;;IACpD,OAAO;QACL,mBAAmB,EAAE,eAAe;QACpC,QAAQ,UAAA;KACT,CAAC;AACJ,CAAC;AALD,0CAKC;AAED;;;;GAIG;AACH,SAAgB,iBAAiB,CAC/B,UAAkB,EAClB,YAAe;IAEf,OAAO;QACL,mBAAmB,EAAE,MAAM;QAC3B,qBAAqB,EAAE,eAAe;QACtC,UAAU,YAAA;QACV,KAAK,EAAE,YAAY;KACpB,CAAC;AACJ,CAAC;AAVD,8CAUC;AAED;;GAEG;AACH,SAAgB,IAAI,CAAC,OAAgB;IACnC,IAAM,QAAQ,GACZ,8DAA8D,CAAC;IACjE,IAAI,OAAO,EAAE;QACX,IAAM,OAAO,GAAG,IAAI,MAAM,CAAC,WAAI,QAAQ,MAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;YAC3B,MAAM,IAAI,KAAK,CACb,gCAAyB,OAAO,2DAAiD,QAAQ,MAAG,CAC7F,CAAC;SACH;QACD,OAAO;YACL,mBAAmB,EAAE,OAAO;YAC5B,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,OAAO;SACf,CAAC;KACH;IACD,OAAO;QACL,mBAAmB,EAAE,OAAO;QAC5B,KAAK,EAAE,QAAQ;QACf,qBAAqB,EAAE,MAAM;QAC7B,KAAK,EAAE,sCAAsC;KAC9C,CAAC;AACJ,CAAC;AAtBD,oBAsBC;AAEM,IAAM,oBAAoB,GAAG,UAAC,GAAY;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IAExC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC,CAAC;AAJW,QAAA,oBAAoB,wBAI/B;AAEF;;;GAGG;AACH,SAAgB,KAAK,CAAC,KAAc;IAClC,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;QACpB,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KAC3B;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACxB,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;KACzB;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,IAAI,KAAK,KAAK,IAAI,EAAE;YAClB,OAAO,KAAK,CAAC;SACd;QACD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAC9B,UAAC,GAAY,EAAE,QAA4B;;YAAK,OAAA,uBAC3C,GAAG,gBACL,QAAQ,IAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAClC;QAH8C,CAG9C,EACF,EAAE,CACH,CAAC;KACH;IAED,IACE,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,KAAK,KAAK,SAAS,EAC1B;QACA,OAAO,KAAK,CAAC;KACd;IACD,MAAM,IAAI,KAAK,CACb,0CAAmC,OAAO,KAAK,gDAA6C,CAC7F,CAAC;AACJ,CAAC;AAhCD,sBAgCC;AAEiB,+BAAc"}
package/src/v3/types.d.ts CHANGED
@@ -47,6 +47,9 @@ export interface ArrayContainsMatcher extends Matcher<unknown[]> {
47
47
  export interface ProviderStateInjectedValue<T> extends Matcher<T> {
48
48
  expression: string;
49
49
  }
50
+ export interface RulesMatcher<T> extends Matcher<T> {
51
+ rules: Matcher<T>[];
52
+ }
50
53
  /**
51
54
  * Options for the mock server
52
55
  */
@@ -7,7 +7,8 @@ export declare class UnconfiguredInteraction implements V4UnconfiguredInteractio
7
7
  protected pact: ConsumerPact;
8
8
  protected interaction: ConsumerInteraction;
9
9
  protected opts: PactV4Options;
10
- constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options);
10
+ protected cleanupFn: () => void;
11
+ constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options, cleanupFn: () => void);
11
12
  uponReceiving(description: string): V4UnconfiguredInteraction;
12
13
  given(state: string, parameters?: JsonMap): V4UnconfiguredInteraction;
13
14
  withCompleteRequest(request: V4Request): V4InteractionWithCompleteRequest;
@@ -18,15 +19,16 @@ export declare class InteractionWithCompleteRequest implements V4InteractionWith
18
19
  private pact;
19
20
  private interaction;
20
21
  private opts;
21
- private request;
22
- constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options, request: V4Request);
22
+ protected cleanupFn: () => void;
23
+ constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options, cleanupFn: () => void);
23
24
  withCompleteResponse(response: V4Response): V4InteractionWithResponse;
24
25
  }
25
26
  export declare class InteractionwithRequest implements V4InteractionwithRequest {
26
27
  private pact;
27
28
  private interaction;
28
29
  private opts;
29
- constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options);
30
+ protected cleanupFn: () => void;
31
+ constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options, cleanupFn: () => void);
30
32
  willRespondWith(status: number, builder?: V4ResponseBuilderFunc): InteractionWithResponse;
31
33
  }
32
34
  export declare class RequestBuilder implements V4RequestBuilder {
@@ -50,16 +52,17 @@ export declare class ResponseBuilder implements V4ResponseBuilder {
50
52
  }
51
53
  export declare class InteractionWithResponse implements V4InteractionWithResponse {
52
54
  private pact;
53
- private interaction;
54
55
  private opts;
55
- constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options);
56
+ protected cleanupFn: () => void;
57
+ constructor(pact: ConsumerPact, opts: PactV4Options, cleanupFn: () => void);
56
58
  executeTest<T>(testFn: TestFunction<T>): Promise<T | undefined>;
57
59
  }
58
60
  export declare class InteractionWithPlugin implements V4InteractionWithPlugin {
59
61
  private pact;
60
62
  private interaction;
61
63
  private opts;
62
- constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options);
64
+ protected cleanupFn: () => void;
65
+ constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options, cleanupFn: () => void);
63
66
  usingPlugin(config: PluginConfig): V4InteractionWithPlugin;
64
67
  withRequest(method: string, path: Path, builder?: V4PluginRequestBuilderFunc): V4InteractionWithPluginRequest;
65
68
  }
@@ -67,7 +70,8 @@ export declare class InteractionWithPluginRequest implements V4InteractionWithPl
67
70
  private pact;
68
71
  private interaction;
69
72
  private opts;
70
- constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options);
73
+ protected cleanupFn: () => void;
74
+ constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options, cleanupFn: () => void);
71
75
  willRespondWith(status: number, builder?: V4PluginResponseBuilderFunc): V4InteractionWithPluginResponse;
72
76
  }
73
77
  export declare class RequestWithPluginBuilder extends RequestBuilder implements V4RequestWithPluginBuilder {
@@ -78,8 +82,8 @@ export declare class ResponseWithPluginBuilder extends ResponseBuilder implement
78
82
  }
79
83
  export declare class InteractionWithPluginResponse implements V4InteractionWithPluginResponse {
80
84
  private pact;
81
- private interaction;
82
85
  private opts;
83
- constructor(pact: ConsumerPact, interaction: ConsumerInteraction, opts: PactV4Options);
86
+ protected cleanupFn: () => void;
87
+ constructor(pact: ConsumerPact, opts: PactV4Options, cleanupFn: () => void);
84
88
  executeTest<T>(testFn: (mockServer: V4MockServer) => Promise<T>): Promise<T | undefined>;
85
89
  }
@@ -62,10 +62,11 @@ var display_1 = require("../../v3/display");
62
62
  var logger_1 = __importDefault(require("../../common/logger"));
63
63
  var UnconfiguredInteraction = /** @class */ (function () {
64
64
  // tslint:disable:no-empty-function
65
- function UnconfiguredInteraction(pact, interaction, opts) {
65
+ function UnconfiguredInteraction(pact, interaction, opts, cleanupFn) {
66
66
  this.pact = pact;
67
67
  this.interaction = interaction;
68
68
  this.opts = opts;
69
+ this.cleanupFn = cleanupFn;
69
70
  }
70
71
  UnconfiguredInteraction.prototype.uponReceiving = function (description) {
71
72
  this.interaction.uponReceiving(description);
@@ -84,49 +85,50 @@ var UnconfiguredInteraction = /** @class */ (function () {
84
85
  return this;
85
86
  };
86
87
  UnconfiguredInteraction.prototype.withCompleteRequest = function (request) {
87
- return new InteractionWithCompleteRequest(this.pact, this.interaction, this.opts, request);
88
+ return new InteractionWithCompleteRequest(this.pact, this.interaction, this.opts, this.cleanupFn);
88
89
  };
89
90
  UnconfiguredInteraction.prototype.withRequest = function (method, path, builder) {
90
91
  this.interaction.withRequest(method, (0, matchers_1.matcherValueOrString)(path));
91
92
  if (builder) {
92
93
  builder(new RequestBuilder(this.interaction));
93
94
  }
94
- return new InteractionwithRequest(this.pact, this.interaction, this.opts);
95
+ return new InteractionwithRequest(this.pact, this.interaction, this.opts, this.cleanupFn);
95
96
  };
96
97
  UnconfiguredInteraction.prototype.usingPlugin = function (config) {
97
98
  this.pact.addPlugin(config.plugin, config.version);
98
- return new InteractionWithPlugin(this.pact, this.interaction, this.opts);
99
+ return new InteractionWithPlugin(this.pact, this.interaction, this.opts, this.cleanupFn);
99
100
  };
100
101
  return UnconfiguredInteraction;
101
102
  }());
102
103
  exports.UnconfiguredInteraction = UnconfiguredInteraction;
103
104
  var InteractionWithCompleteRequest = /** @class */ (function () {
104
- function InteractionWithCompleteRequest(pact, interaction, opts, request) {
105
+ function InteractionWithCompleteRequest(pact, interaction, opts, cleanupFn) {
105
106
  this.pact = pact;
106
107
  this.interaction = interaction;
107
108
  this.opts = opts;
108
- this.request = request;
109
+ this.cleanupFn = cleanupFn;
109
110
  throw Error('V4InteractionWithCompleteRequest is unimplemented');
110
111
  }
111
112
  InteractionWithCompleteRequest.prototype.withCompleteResponse = function (response) {
112
- return new InteractionWithResponse(this.pact, this.interaction, this.opts);
113
+ return new InteractionWithResponse(this.pact, this.opts, this.cleanupFn);
113
114
  };
114
115
  return InteractionWithCompleteRequest;
115
116
  }());
116
117
  exports.InteractionWithCompleteRequest = InteractionWithCompleteRequest;
117
118
  var InteractionwithRequest = /** @class */ (function () {
118
119
  // tslint:disable:no-empty-function
119
- function InteractionwithRequest(pact, interaction, opts) {
120
+ function InteractionwithRequest(pact, interaction, opts, cleanupFn) {
120
121
  this.pact = pact;
121
122
  this.interaction = interaction;
122
123
  this.opts = opts;
124
+ this.cleanupFn = cleanupFn;
123
125
  }
124
126
  InteractionwithRequest.prototype.willRespondWith = function (status, builder) {
125
127
  this.interaction.withStatus(status);
126
128
  if (typeof builder === 'function') {
127
129
  builder(new ResponseBuilder(this.interaction));
128
130
  }
129
- return new InteractionWithResponse(this.pact, this.interaction, this.opts);
131
+ return new InteractionWithResponse(this.pact, this.opts, this.cleanupFn);
130
132
  };
131
133
  return InteractionwithRequest;
132
134
  }());
@@ -217,15 +219,15 @@ var ResponseBuilder = /** @class */ (function () {
217
219
  exports.ResponseBuilder = ResponseBuilder;
218
220
  var InteractionWithResponse = /** @class */ (function () {
219
221
  // tslint:disable:no-empty-function
220
- function InteractionWithResponse(pact, interaction, opts) {
222
+ function InteractionWithResponse(pact, opts, cleanupFn) {
221
223
  this.pact = pact;
222
- this.interaction = interaction;
223
224
  this.opts = opts;
225
+ this.cleanupFn = cleanupFn;
224
226
  }
225
227
  InteractionWithResponse.prototype.executeTest = function (testFn) {
226
228
  return __awaiter(this, void 0, void 0, function () {
227
229
  return __generator(this, function (_a) {
228
- return [2 /*return*/, executeTest(this.pact, this.opts, testFn)];
230
+ return [2 /*return*/, executeTest(this.pact, this.opts, testFn, this.cleanupFn)];
229
231
  });
230
232
  });
231
233
  };
@@ -234,10 +236,11 @@ var InteractionWithResponse = /** @class */ (function () {
234
236
  exports.InteractionWithResponse = InteractionWithResponse;
235
237
  var InteractionWithPlugin = /** @class */ (function () {
236
238
  // tslint:disable:no-empty-function
237
- function InteractionWithPlugin(pact, interaction, opts) {
239
+ function InteractionWithPlugin(pact, interaction, opts, cleanupFn) {
238
240
  this.pact = pact;
239
241
  this.interaction = interaction;
240
242
  this.opts = opts;
243
+ this.cleanupFn = cleanupFn;
241
244
  }
242
245
  // Multiple plugins are allowed
243
246
  InteractionWithPlugin.prototype.usingPlugin = function (config) {
@@ -249,24 +252,25 @@ var InteractionWithPlugin = /** @class */ (function () {
249
252
  if (typeof builder === 'function') {
250
253
  builder(new RequestWithPluginBuilder(this.interaction));
251
254
  }
252
- return new InteractionWithPluginRequest(this.pact, this.interaction, this.opts);
255
+ return new InteractionWithPluginRequest(this.pact, this.interaction, this.opts, this.cleanupFn);
253
256
  };
254
257
  return InteractionWithPlugin;
255
258
  }());
256
259
  exports.InteractionWithPlugin = InteractionWithPlugin;
257
260
  var InteractionWithPluginRequest = /** @class */ (function () {
258
261
  // tslint:disable:no-empty-function
259
- function InteractionWithPluginRequest(pact, interaction, opts) {
262
+ function InteractionWithPluginRequest(pact, interaction, opts, cleanupFn) {
260
263
  this.pact = pact;
261
264
  this.interaction = interaction;
262
265
  this.opts = opts;
266
+ this.cleanupFn = cleanupFn;
263
267
  }
264
268
  InteractionWithPluginRequest.prototype.willRespondWith = function (status, builder) {
265
269
  this.interaction.withStatus(status);
266
270
  if (typeof builder === 'function') {
267
271
  builder(new ResponseWithPluginBuilder(this.interaction));
268
272
  }
269
- return new InteractionWithPluginResponse(this.pact, this.interaction, this.opts);
273
+ return new InteractionWithPluginResponse(this.pact, this.opts, this.cleanupFn);
270
274
  };
271
275
  return InteractionWithPluginRequest;
272
276
  }());
@@ -297,15 +301,15 @@ var ResponseWithPluginBuilder = /** @class */ (function (_super) {
297
301
  exports.ResponseWithPluginBuilder = ResponseWithPluginBuilder;
298
302
  var InteractionWithPluginResponse = /** @class */ (function () {
299
303
  // tslint:disable:no-empty-function
300
- function InteractionWithPluginResponse(pact, interaction, opts) {
304
+ function InteractionWithPluginResponse(pact, opts, cleanupFn) {
301
305
  this.pact = pact;
302
- this.interaction = interaction;
303
306
  this.opts = opts;
307
+ this.cleanupFn = cleanupFn;
304
308
  }
305
309
  InteractionWithPluginResponse.prototype.executeTest = function (testFn) {
306
310
  return __awaiter(this, void 0, void 0, function () {
307
311
  return __generator(this, function (_a) {
308
- return [2 /*return*/, executeTest(this.pact, this.opts, testFn)];
312
+ return [2 /*return*/, executeTest(this.pact, this.opts, testFn, this.cleanupFn)];
309
313
  });
310
314
  });
311
315
  };
@@ -321,14 +325,15 @@ var readBinaryData = function (file) {
321
325
  throw new Error("unable to read file for binary payload : ".concat(e.message));
322
326
  }
323
327
  };
324
- var cleanup = function (success, pact, opts, server) {
328
+ var cleanup = function (success, pact, opts, server, cleanupFn) {
325
329
  if (success) {
326
330
  pact.writePactFile(opts.dir || './pacts');
327
331
  }
328
332
  pact.cleanupMockServer(server.port);
329
333
  pact.cleanupPlugins();
334
+ cleanupFn();
330
335
  };
331
- var executeTest = function (pact, opts, testFn) { return __awaiter(void 0, void 0, void 0, function () {
336
+ var executeTest = function (pact, opts, testFn, cleanupFn) { return __awaiter(void 0, void 0, void 0, function () {
332
337
  var scheme, host, port, server, val, error, e_1, matchingResults, errors, success, errorMessage;
333
338
  return __generator(this, function (_a) {
334
339
  switch (_a.label) {
@@ -356,7 +361,7 @@ var executeTest = function (pact, opts, testFn) { return __awaiter(void 0, void
356
361
  if (!success && errors.length > 0) {
357
362
  errorMessage = 'Test failed for the following reasons:';
358
363
  errorMessage += "\n\n ".concat((0, display_1.generateMockServerError)(matchingResults, '\t'));
359
- cleanup(false, pact, opts, server);
364
+ cleanup(false, pact, opts, server, cleanupFn);
360
365
  // If the tests throws an error, we need to rethrow the error, but print out
361
366
  // any additional mock server errors to help the user understand what happened
362
367
  // (The proximate cause here is often the HTTP 500 from the mock server,
@@ -370,11 +375,11 @@ var executeTest = function (pact, opts, testFn) { return __awaiter(void 0, void
370
375
  }
371
376
  // Scenario: test threw an error, but Pact validation was OK (error in client or test)
372
377
  if (error) {
373
- cleanup(false, pact, opts, server);
378
+ cleanup(false, pact, opts, server, cleanupFn);
374
379
  throw error;
375
380
  }
376
381
  // Scenario: Pact validation passed, test didn't throw - return the callback value
377
- cleanup(true, pact, opts, server);
382
+ cleanup(true, pact, opts, server, cleanupFn);
378
383
  return [2 /*return*/, val];
379
384
  }
380
385
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v4/http/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v4/http/index.ts"],"names":[],"mappings":"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"}
package/src/v4/index.d.ts CHANGED
@@ -5,6 +5,7 @@ export declare class PactV4 implements V4ConsumerPact {
5
5
  private opts;
6
6
  private pact;
7
7
  constructor(opts: PactV4Options);
8
+ setup(): void;
8
9
  addInteraction(): V4UnconfiguredInteraction;
9
10
  addSynchronousInteraction(description: string): V4UnconfiguredSynchronousMessage;
10
11
  }
package/src/v4/index.js CHANGED
@@ -8,19 +8,34 @@ var message_1 = require("./message");
8
8
  var v3_1 = require("../v3");
9
9
  var PactV4 = /** @class */ (function () {
10
10
  function PactV4(opts) {
11
- var _a;
12
11
  this.opts = opts;
13
12
  if (!process.env.ENABLE_FEATURE_V4) {
14
13
  throw Error("The v4 package is currently in beta and requires the 'ENABLE_FEATURE_V4' environment variable to be set");
15
14
  }
16
- this.pact = (0, pact_core_1.makeConsumerPact)(opts.consumer, opts.provider, (_a = opts.spec) !== null && _a !== void 0 ? _a : v3_1.SpecificationVersion.SPECIFICATION_VERSION_V4, opts.logLevel);
15
+ this.setup();
17
16
  this.pact.addMetadata('pact-js', 'version', package_json_1.version);
18
17
  }
18
+ PactV4.prototype.setup = function () {
19
+ var _a, _b;
20
+ this.pact = (0, pact_core_1.makeConsumerPact)(this.opts.consumer, this.opts.provider, (_a = this.opts.spec) !== null && _a !== void 0 ? _a : v3_1.SpecificationVersion.SPECIFICATION_VERSION_V3, (_b = this.opts.logLevel) !== null && _b !== void 0 ? _b : 'info');
21
+ };
19
22
  PactV4.prototype.addInteraction = function () {
20
- return new http_1.UnconfiguredInteraction(this.pact, this.pact.newInteraction(''), this.opts);
23
+ var _this = this;
24
+ return new http_1.UnconfiguredInteraction(this.pact, this.pact.newInteraction(''), this.opts, function () {
25
+ // This function needs to be called if the PactV4 object is to be re-used (commonly expected by users)
26
+ // Because of the type-state model used here, it's a bit awkward as we need to thread this through
27
+ // to children, ultimately to be called on the "executeTest" stage.
28
+ _this.setup();
29
+ });
21
30
  };
22
31
  PactV4.prototype.addSynchronousInteraction = function (description) {
23
- return new message_1.UnconfiguredSynchronousMessage(this.pact, this.pact.newSynchronousMessage(description), this.opts);
32
+ var _this = this;
33
+ return new message_1.UnconfiguredSynchronousMessage(this.pact, this.pact.newSynchronousMessage(description), this.opts, function () {
34
+ // This function needs to be called if the PactV4 object is to be re-used (commonly expected by users)
35
+ // Because of the type-state model used here, it's a bit awkward as we need to thread this through
36
+ // to children, ultimately to be called on the "executeTest" stage.
37
+ _this.setup();
38
+ });
24
39
  };
25
40
  return PactV4;
26
41
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/v4/index.ts"],"names":[],"mappings":";;;AAAA,wDAA4E;AAC5E,+BAAiD;AAGjD,mDAAmE;AAEnE,qCAA2D;AAC3D,4BAA6C;AAE7C;IAGE,gBAAoB,IAAmB;;QAAnB,SAAI,GAAJ,IAAI,CAAe;QACrC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;YAClC,MAAM,KAAK,CACT,yGAAyG,CAC1G,CAAC;SACH;QAED,IAAI,CAAC,IAAI,GAAG,IAAA,4BAAgB,EAC1B,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,EACb,MAAA,IAAI,CAAC,IAAI,mCAAI,yBAAoB,CAAC,wBAAwB,EAC1D,IAAI,CAAC,QAAQ,CACd,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,sBAAkB,CAAC,CAAC;IAClE,CAAC;IAED,+BAAc,GAAd;QACE,OAAO,IAAI,8BAAuB,CAChC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,EAC5B,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IAED,0CAAyB,GAAzB,UACE,WAAmB;QAEnB,OAAO,IAAI,wCAA8B,CACvC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,EAC5C,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IACH,aAAC;AAAD,CAAC,AArCD,IAqCC;AArCY,wBAAM"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/v4/index.ts"],"names":[],"mappings":";;;AAAA,wDAA4E;AAC5E,+BAAiD;AAGjD,mDAAmE;AAEnE,qCAA2D;AAC3D,4BAA6C;AAE7C;IAGE,gBAAoB,IAAmB;QAAnB,SAAI,GAAJ,IAAI,CAAe;QACrC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;YAClC,MAAM,KAAK,CACT,yGAAyG,CAC1G,CAAC;SACH;QAED,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,sBAAkB,CAAC,CAAC;IAClE,CAAC;IAED,sBAAK,GAAL;;QACE,IAAI,CAAC,IAAI,GAAG,IAAA,4BAAgB,EAC1B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAClB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAClB,MAAA,IAAI,CAAC,IAAI,CAAC,IAAI,mCAAI,yBAAoB,CAAC,wBAAwB,EAC/D,MAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,mCAAI,MAAM,CAC7B,CAAC;IACJ,CAAC;IAED,+BAAc,GAAd;QAAA,iBAYC;QAXC,OAAO,IAAI,8BAAuB,CAChC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,EAC5B,IAAI,CAAC,IAAI,EACT;YACE,sGAAsG;YACtG,kGAAkG;YAClG,mEAAmE;YACnE,KAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC,CACF,CAAC;IACJ,CAAC;IAED,0CAAyB,GAAzB,UACE,WAAmB;QADrB,iBAcC;QAXC,OAAO,IAAI,wCAA8B,CACvC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,EAC5C,IAAI,CAAC,IAAI,EACT;YACE,sGAAsG;YACtG,kGAAkG;YAClG,mEAAmE;YACnE,KAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC,CACF,CAAC;IACJ,CAAC;IACH,aAAC;AAAD,CAAC,AApDD,IAoDC;AApDY,wBAAM"}
@@ -9,7 +9,8 @@ export declare class UnconfiguredSynchronousMessage implements V4UnconfiguredSyn
9
9
  protected pact: ConsumerPact;
10
10
  protected interaction: PactCoreSynchronousMessage;
11
11
  protected opts: PactV4Options;
12
- constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options);
12
+ protected cleanupFn: () => void;
13
+ constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options, cleanupFn: () => void);
13
14
  given(state: string, parameters?: JsonMap): V4UnconfiguredSynchronousMessage;
14
15
  usingPlugin(config: PluginConfig): V4SynchronousMessageWithPlugin;
15
16
  withRequest(r: V4MessagePluginRequestBuilderFunc): V4SynchronousMessageWithRequest;
@@ -18,7 +19,8 @@ export declare class SynchronousMessageWithPlugin implements V4SynchronousMessag
18
19
  protected pact: ConsumerPact;
19
20
  protected interaction: PactCoreSynchronousMessage;
20
21
  protected opts: PactV4Options;
21
- constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options);
22
+ protected cleanupFn: () => void;
23
+ constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options, cleanupFn: () => void);
22
24
  usingPlugin(config: PluginConfig): V4SynchronousMessageWithPlugin;
23
25
  withPluginContents(contents: string, contentType: string): V4SynchronousMessageWithPluginContents;
24
26
  }
@@ -34,7 +36,8 @@ export declare class SynchronousMessageWithRequest implements V4SynchronousMessa
34
36
  protected pact: ConsumerPact;
35
37
  protected interaction: PactCoreSynchronousMessage;
36
38
  protected opts: PactV4Options;
37
- constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options);
39
+ protected cleanupFn: () => void;
40
+ constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options, cleanupFn: () => void);
38
41
  withResponse(builder: V4MessagePluginResponseBuilderFunc): V4SynchronousMessageWithResponse;
39
42
  }
40
43
  export declare class SynchronousMessageWithResponseBuilder implements V4SynchronousMessageWithResponseBuilder {
@@ -50,7 +53,8 @@ export declare class SynchronousMessageWithPluginContents implements V4Synchrono
50
53
  protected pact: ConsumerPact;
51
54
  protected interaction: PactCoreSynchronousMessage;
52
55
  protected opts: PactV4Options;
53
- constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options);
56
+ protected cleanupFn: () => void;
57
+ constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options, cleanupFn: () => void);
54
58
  executeTest<T>(integrationTest: (m: SynchronousMessage) => Promise<T>): Promise<T | undefined>;
55
59
  startTransport(transport: string, address: string, // IP Address or hostname
56
60
  config?: AnyJson): V4SynchronousMessageWithTransport;
@@ -61,13 +65,15 @@ export declare class SynchronousMessageWithTransport implements V4SynchronousMes
61
65
  protected opts: PactV4Options;
62
66
  protected port: number;
63
67
  protected address: string;
64
- constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options, port: number, address: string);
68
+ protected cleanupFn: () => void;
69
+ constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options, port: number, address: string, cleanupFn: () => void);
65
70
  executeTest<T>(integrationTest: (tc: TransportConfig, m: SynchronousMessage) => Promise<T>): Promise<T | undefined>;
66
71
  }
67
72
  export declare class SynchronousMessageWithResponse implements V4SynchronousMessageWithResponse {
68
73
  protected pact: ConsumerPact;
69
74
  protected interaction: PactCoreSynchronousMessage;
70
75
  protected opts: PactV4Options;
71
- constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options);
76
+ protected cleanupFn: () => void;
77
+ constructor(pact: ConsumerPact, interaction: PactCoreSynchronousMessage, opts: PactV4Options, cleanupFn: () => void);
72
78
  executeTest<T>(integrationTest: (m: SynchronousMessage) => Promise<T>): Promise<T | undefined>;
73
79
  }
@@ -46,10 +46,11 @@ var display_1 = require("../../v3/display");
46
46
  var logger_1 = __importDefault(require("../../common/logger"));
47
47
  var defaultPactDir = './pacts';
48
48
  var UnconfiguredSynchronousMessage = /** @class */ (function () {
49
- function UnconfiguredSynchronousMessage(pact, interaction, opts) {
49
+ function UnconfiguredSynchronousMessage(pact, interaction, opts, cleanupFn) {
50
50
  this.pact = pact;
51
51
  this.interaction = interaction;
52
52
  this.opts = opts;
53
+ this.cleanupFn = cleanupFn;
53
54
  }
54
55
  UnconfiguredSynchronousMessage.prototype.given = function (state, parameters) {
55
56
  var _this = this;
@@ -65,19 +66,20 @@ var UnconfiguredSynchronousMessage = /** @class */ (function () {
65
66
  };
66
67
  UnconfiguredSynchronousMessage.prototype.usingPlugin = function (config) {
67
68
  this.pact.addPlugin(config.plugin, config.version);
68
- return new SynchronousMessageWithPlugin(this.pact, this.interaction, this.opts);
69
+ return new SynchronousMessageWithPlugin(this.pact, this.interaction, this.opts, this.cleanupFn);
69
70
  };
70
71
  UnconfiguredSynchronousMessage.prototype.withRequest = function (r) {
71
- return new SynchronousMessageWithRequest(this.pact, this.interaction, this.opts);
72
+ return new SynchronousMessageWithRequest(this.pact, this.interaction, this.opts, this.cleanupFn);
72
73
  };
73
74
  return UnconfiguredSynchronousMessage;
74
75
  }());
75
76
  exports.UnconfiguredSynchronousMessage = UnconfiguredSynchronousMessage;
76
77
  var SynchronousMessageWithPlugin = /** @class */ (function () {
77
- function SynchronousMessageWithPlugin(pact, interaction, opts) {
78
+ function SynchronousMessageWithPlugin(pact, interaction, opts, cleanupFn) {
78
79
  this.pact = pact;
79
80
  this.interaction = interaction;
80
81
  this.opts = opts;
82
+ this.cleanupFn = cleanupFn;
81
83
  }
82
84
  SynchronousMessageWithPlugin.prototype.usingPlugin = function (config) {
83
85
  this.pact.addPlugin(config.plugin, config.version);
@@ -85,7 +87,7 @@ var SynchronousMessageWithPlugin = /** @class */ (function () {
85
87
  };
86
88
  SynchronousMessageWithPlugin.prototype.withPluginContents = function (contents, contentType) {
87
89
  this.interaction.withPluginRequestResponseInteractionContents(contentType, contents);
88
- return new SynchronousMessageWithPluginContents(this.pact, this.interaction, this.opts);
90
+ return new SynchronousMessageWithPluginContents(this.pact, this.interaction, this.opts, this.cleanupFn);
89
91
  };
90
92
  return SynchronousMessageWithPlugin;
91
93
  }());
@@ -111,14 +113,15 @@ var SynchronousMessageWithRequestBuilder = /** @class */ (function () {
111
113
  }());
112
114
  exports.SynchronousMessageWithRequestBuilder = SynchronousMessageWithRequestBuilder;
113
115
  var SynchronousMessageWithRequest = /** @class */ (function () {
114
- function SynchronousMessageWithRequest(pact, interaction, opts) {
116
+ function SynchronousMessageWithRequest(pact, interaction, opts, cleanupFn) {
115
117
  this.pact = pact;
116
118
  this.interaction = interaction;
117
119
  this.opts = opts;
120
+ this.cleanupFn = cleanupFn;
118
121
  }
119
122
  SynchronousMessageWithRequest.prototype.withResponse = function (builder) {
120
123
  builder(new SynchronousMessageWithResponseBuilder(this.pact, this.interaction, this.opts));
121
- return new SynchronousMessageWithResponse(this.pact, this.interaction, this.opts);
124
+ return new SynchronousMessageWithResponse(this.pact, this.interaction, this.opts, this.cleanupFn);
122
125
  };
123
126
  return SynchronousMessageWithRequest;
124
127
  }());
@@ -154,29 +157,31 @@ var SynchronousMessageWithResponseBuilder = /** @class */ (function () {
154
157
  }());
155
158
  exports.SynchronousMessageWithResponseBuilder = SynchronousMessageWithResponseBuilder;
156
159
  var SynchronousMessageWithPluginContents = /** @class */ (function () {
157
- function SynchronousMessageWithPluginContents(pact, interaction, opts) {
160
+ function SynchronousMessageWithPluginContents(pact, interaction, opts, cleanupFn) {
158
161
  this.pact = pact;
159
162
  this.interaction = interaction;
160
163
  this.opts = opts;
164
+ this.cleanupFn = cleanupFn;
161
165
  }
162
166
  SynchronousMessageWithPluginContents.prototype.executeTest = function (integrationTest) {
163
- return executeNonTransportTest(this.pact, this.opts, integrationTest);
167
+ return executeNonTransportTest(this.pact, this.opts, integrationTest, this.cleanupFn);
164
168
  };
165
169
  SynchronousMessageWithPluginContents.prototype.startTransport = function (transport, address, // IP Address or hostname
166
170
  config) {
167
171
  var port = this.pact.pactffiCreateMockServerForTransport(address, transport, config ? JSON.stringify(config) : '');
168
- return new SynchronousMessageWithTransport(this.pact, this.interaction, this.opts, port, address);
172
+ return new SynchronousMessageWithTransport(this.pact, this.interaction, this.opts, port, address, this.cleanupFn);
169
173
  };
170
174
  return SynchronousMessageWithPluginContents;
171
175
  }());
172
176
  exports.SynchronousMessageWithPluginContents = SynchronousMessageWithPluginContents;
173
177
  var SynchronousMessageWithTransport = /** @class */ (function () {
174
- function SynchronousMessageWithTransport(pact, interaction, opts, port, address) {
178
+ function SynchronousMessageWithTransport(pact, interaction, opts, port, address, cleanupFn) {
175
179
  this.pact = pact;
176
180
  this.interaction = interaction;
177
181
  this.opts = opts;
178
182
  this.port = port;
179
183
  this.address = address;
184
+ this.cleanupFn = cleanupFn;
180
185
  }
181
186
  // TODO: this is basically the same as the HTTP variant, except only with a different test function wrapper
182
187
  // extract these into smaller, testable chunks and re-use them
@@ -203,7 +208,7 @@ var SynchronousMessageWithTransport = /** @class */ (function () {
203
208
  if (!success && errors.length > 0) {
204
209
  errorMessage = 'Test failed for the following reasons:';
205
210
  errorMessage += "\n\n ".concat((0, display_1.generateMockServerError)(matchingResults, '\t'));
206
- cleanup(false, this.pact, this.opts, this.port, true);
211
+ cleanup(false, this.pact, this.opts, this.cleanupFn, this.port, true);
207
212
  // If the tests throws an error, we need to rethrow the error, but print out
208
213
  // any additional mock server errors to help the user understand what happened
209
214
  // (The proximate cause here is often the HTTP 500 from the mock server,
@@ -217,11 +222,11 @@ var SynchronousMessageWithTransport = /** @class */ (function () {
217
222
  }
218
223
  // Scenario: test threw an error, but Pact validation was OK (error in client or test)
219
224
  if (error) {
220
- cleanup(false, this.pact, this.opts, this.port, true);
225
+ cleanup(false, this.pact, this.opts, this.cleanupFn, this.port, true);
221
226
  throw error;
222
227
  }
223
228
  // Scenario: Pact validation passed, test didn't throw - return the callback value
224
- cleanup(true, this.pact, this.opts, this.port, true);
229
+ cleanup(true, this.pact, this.opts, this.cleanupFn, this.port, true);
225
230
  return [2 /*return*/, val];
226
231
  }
227
232
  });
@@ -231,18 +236,21 @@ var SynchronousMessageWithTransport = /** @class */ (function () {
231
236
  }());
232
237
  exports.SynchronousMessageWithTransport = SynchronousMessageWithTransport;
233
238
  var SynchronousMessageWithResponse = /** @class */ (function () {
234
- function SynchronousMessageWithResponse(pact, interaction, opts) {
239
+ function SynchronousMessageWithResponse(pact, interaction, opts, cleanupFn) {
235
240
  this.pact = pact;
236
241
  this.interaction = interaction;
237
242
  this.opts = opts;
243
+ this.cleanupFn = cleanupFn;
238
244
  }
239
245
  SynchronousMessageWithResponse.prototype.executeTest = function (integrationTest) {
240
- return executeNonTransportTest(this.pact, this.opts, integrationTest);
246
+ var res = executeNonTransportTest(this.pact, this.opts, integrationTest, this.cleanupFn);
247
+ this.cleanupFn();
248
+ return res;
241
249
  };
242
250
  return SynchronousMessageWithResponse;
243
251
  }());
244
252
  exports.SynchronousMessageWithResponse = SynchronousMessageWithResponse;
245
- var cleanup = function (success, pact, opts, port, transport) {
253
+ var cleanup = function (success, pact, opts, cleanupFn, port, transport) {
246
254
  if (transport === void 0) { transport = false; }
247
255
  if (success) {
248
256
  if (transport && port) {
@@ -256,8 +264,9 @@ var cleanup = function (success, pact, opts, port, transport) {
256
264
  pact.cleanupMockServer(port);
257
265
  }
258
266
  pact.cleanupPlugins();
267
+ cleanupFn();
259
268
  };
260
- var executeNonTransportTest = function (pact, opts, integrationTest) { return __awaiter(void 0, void 0, void 0, function () {
269
+ var executeNonTransportTest = function (pact, opts, integrationTest, cleanupFn) { return __awaiter(void 0, void 0, void 0, function () {
261
270
  var val, error, e_2;
262
271
  return __generator(this, function (_a) {
263
272
  switch (_a.label) {
@@ -274,11 +283,11 @@ var executeNonTransportTest = function (pact, opts, integrationTest) { return __
274
283
  case 3:
275
284
  // Scenario: test threw an error, but Pact validation was OK (error in client or test)
276
285
  if (error) {
277
- cleanup(false, pact, opts);
286
+ cleanup(false, pact, opts, cleanupFn);
278
287
  throw error;
279
288
  }
280
289
  // Scenario: Pact validation passed, test didn't throw - return the callback value
281
- cleanup(true, pact, opts);
290
+ cleanup(true, pact, opts, cleanupFn);
282
291
  return [2 /*return*/, val];
283
292
  }
284
293
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v4/message/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,+BAAmD;AACnD,uFAAiE;AACjE,4CAG0B;AAC1B,+DAAyC;AAEzC,IAAM,cAAc,GAAG,SAAS,CAAC;AAEjC;IAGE,wCACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB;QAFnB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;IAC5B,CAAC;IAEJ,8CAAK,GAAL,UAAM,KAAa,EAAE,UAAoB;QAAzC,iBAUC;QATC,IAAI,UAAU,EAAE;YACd,IAAA,yBAAiB,EAAC,UAAC,CAAC,EAAE,CAAC;gBACrB,KAAI,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,EAAE,UAAG,CAAC,CAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,CAAC,EAAE,UAAU,CAAC,CAAC;SAChB;aAAM;YACL,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAC/B;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oDAAW,GAAX,UAAY,MAAoB;QAC9B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnD,OAAO,IAAI,4BAA4B,CACrC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IAED,oDAAW,GAAX,UACE,CAAoC;QAEpC,OAAO,IAAI,6BAA6B,CACtC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IACH,qCAAC;AAAD,CAAC,AAxCD,IAwCC;AAxCY,wEAA8B;AA0C3C;IAGE,sCACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB;QAFnB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;IAC5B,CAAC;IAEJ,kDAAW,GAAX,UAAY,MAAoB;QAC9B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yDAAkB,GAAlB,UACE,QAAgB,EAChB,WAAmB;QAEnB,IAAI,CAAC,WAAW,CAAC,4CAA4C,CAC3D,WAAW,EACX,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,oCAAoC,CAC7C,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IACH,mCAAC;AAAD,CAAC,AA9BD,IA8BC;AA9BY,oEAA4B;AAgCzC;IAGE,8CACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB;QAFnB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;IAC5B,CAAC;IAEJ,0DAAW,GAAX,UACE,WAAmB,EACnB,IAAY;QAEZ,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAE9D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8DAAe,GAAf,UACE,OAAoB;QAEpB,IAAI,IAAA,eAAO,EAAC,OAAO,CAAC,EAAE;YACpB,MAAM,IAAI,4BAAkB,CAC1B,sEAAsE,CACvE,CAAC;SACH;QACD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAClC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EACvB,kBAAkB,CACnB,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;IACH,2CAAC;AAAD,CAAC,AAjCD,IAiCC;AAjCY,oFAAoC;AAmCjD;IAGE,uCACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB;QAFnB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;IAC5B,CAAC;IAEJ,oDAAY,GAAZ,UACE,OAA2C;QAE3C,OAAO,CACL,IAAI,qCAAqC,CACvC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,CACV,CACF,CAAC;QAEF,OAAO,IAAI,8BAA8B,CACvC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IACH,oCAAC;AAAD,CAAC,AA1BD,IA0BC;AA1BY,sEAA6B;AA4B1C;IAGE,+CACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB;QAFnB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;IAC5B,CAAC;IAEJ,4DAAY,GAAZ,UAAa,QAAkB;QAA/B,iBAeC;QAdC,IAAI,IAAA,eAAO,EAAC,QAAQ,CAAC,EAAE;YACrB,MAAM,IAAI,4BAAkB,CAC1B,iEAAiE,CAClE,CAAC;SACH;QAED,IAAA,yBAAiB,EAAC,UAAC,CAAC,EAAE,CAAC;YACrB,KAAI,CAAC,WAAW,CAAC,YAAY,CAC3B,UAAG,CAAC,CAAE,EACN,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CACzC,CAAC;QACJ,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2DAAW,GAAX,UACE,WAAmB,EACnB,IAAY;QAEZ,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAE/D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+DAAe,GAAf,UACE,OAAoB;QAEpB,IAAI,IAAA,eAAO,EAAC,OAAO,CAAC,EAAE;YACpB,MAAM,IAAI,4BAAkB,CAC1B,sEAAsE,CACvE,CAAC;SACH;QACD,IAAI,CAAC,WAAW,CAAC,oBAAoB,CACnC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EACvB,kBAAkB,CACnB,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;IACH,4CAAC;AAAD,CAAC,AAlDD,IAkDC;AAlDY,sFAAqC;AAoDlD;IAGE,8CACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB;QAFnB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;IAC5B,CAAC;IAEJ,0DAAW,GAAX,UACE,eAAsD;QAEtD,OAAO,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IACxE,CAAC;IAED,6DAAc,GAAd,UACE,SAAiB,EACjB,OAAe,EAAE,yBAAyB;IAC1C,MAAgB;QAEhB,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,mCAAmC,CACxD,OAAO,EACP,SAAS,EACT,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CACrC,CAAC;QAEF,OAAO,IAAI,+BAA+B,CACxC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,EACT,IAAI,EACJ,OAAO,CACR,CAAC;IACJ,CAAC;IACH,2CAAC;AAAD,CAAC,AAlCD,IAkCC;AAlCY,oFAAoC;AAoCjD;IAGE,yCACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB,EACnB,IAAY,EACZ,OAAe;QAJf,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;QACnB,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAAQ;IACxB,CAAC;IAEJ,2GAA2G;IAC3G,oEAAoE;IAC9D,qDAAW,GAAjB,UACE,eAA2E;;;;;;;wBAMnE,qBAAM,eAAe,CACzB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAC1C,EAAwB,CACzB,EAAA;;wBAHD,GAAG,GAAG,SAGL,CAAC;;;;wBAEF,KAAK,GAAG,GAAC,CAAC;;;wBAGN,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC5D,MAAM,GAAG,IAAA,kCAAwB,EAAC,eAAe,CAAC,CAAC;wBACnD,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAEnE,mCAAmC;wBACnC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC7B,YAAY,GAAG,wCAAwC,CAAC;4BAC5D,YAAY,IAAI,gBAAS,IAAA,iCAAuB,EAAC,eAAe,EAAE,IAAI,CAAC,CAAE,CAAC;4BAE1E,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;4BAEtD,4EAA4E;4BAC5E,8EAA8E;4BAC9E,wEAAwE;4BACxE,qCAAqC;4BACrC,IAAI,KAAK,EAAE;gCACT,gBAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gCAC3B,MAAM,KAAK,CAAC;6BACb;4BAED,yDAAyD;4BACzD,sBAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,EAAC;yBAChD;wBAED,sFAAsF;wBACtF,IAAI,KAAK,EAAE;4BACT,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;4BACtD,MAAM,KAAK,CAAC;yBACb;wBAED,kFAAkF;wBAClF,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBAErD,sBAAO,GAAG,EAAC;;;;KACZ;IACH,sCAAC;AAAD,CAAC,AA/DD,IA+DC;AA/DY,0EAA+B;AAiE5C;IAGE,wCACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB;QAFnB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;IAC5B,CAAC;IAEJ,oDAAW,GAAX,UACE,eAAsD;QAEtD,OAAO,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IACxE,CAAC;IACH,qCAAC;AAAD,CAAC,AAdD,IAcC;AAdY,wEAA8B;AAgB3C,IAAM,OAAO,GAAG,UACd,OAAgB,EAChB,IAAkB,EAClB,IAAmB,EACnB,IAAa,EACb,SAAiB;IAAjB,0BAAA,EAAA,iBAAiB;IAEjB,IAAI,OAAO,EAAE;QACX,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,cAAc,EAAE,IAAI,CAAC,CAAC;SAC3E;aAAM;YACL,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,cAAc,CAAC,CAAC;SAChD;KACF;IACD,IAAI,IAAI,EAAE;QACR,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;KAC9B;IACD,IAAI,CAAC,cAAc,EAAE,CAAC;AACxB,CAAC,CAAC;AAEF,IAAM,uBAAuB,GAAG,UAC9B,IAAkB,EAClB,IAAmB,EACnB,eAAsD;;;;;;gBAM9C,qBAAM,eAAe,CAAC,EAAwB,CAAC,EAAA;;gBAArD,GAAG,GAAG,SAA+C,CAAC;;;;gBAEtD,KAAK,GAAG,GAAC,CAAC;;;gBAGZ,sFAAsF;gBACtF,IAAI,KAAK,EAAE;oBACT,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;oBAE3B,MAAM,KAAK,CAAC;iBACb;gBAED,kFAAkF;gBAClF,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBAE1B,sBAAO,GAAG,EAAC;;;KACZ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v4/message/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,+BAAmD;AACnD,uFAAiE;AACjE,4CAG0B;AAC1B,+DAAyC;AAEzC,IAAM,cAAc,GAAG,SAAS,CAAC;AAEjC;IAGE,wCACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB,EACnB,SAAqB;QAHrB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;QACnB,cAAS,GAAT,SAAS,CAAY;IAC9B,CAAC;IAEJ,8CAAK,GAAL,UAAM,KAAa,EAAE,UAAoB;QAAzC,iBAUC;QATC,IAAI,UAAU,EAAE;YACd,IAAA,yBAAiB,EAAC,UAAC,CAAC,EAAE,CAAC;gBACrB,KAAI,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,EAAE,UAAG,CAAC,CAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,CAAC,EAAE,UAAU,CAAC,CAAC;SAChB;aAAM;YACL,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAC/B;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oDAAW,GAAX,UAAY,MAAoB;QAC9B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnD,OAAO,IAAI,4BAA4B,CACrC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IAED,oDAAW,GAAX,UACE,CAAoC;QAEpC,OAAO,IAAI,6BAA6B,CACtC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IACH,qCAAC;AAAD,CAAC,AA3CD,IA2CC;AA3CY,wEAA8B;AA6C3C;IAGE,sCACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB,EACnB,SAAqB;QAHrB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;QACnB,cAAS,GAAT,SAAS,CAAY;IAC9B,CAAC;IAEJ,kDAAW,GAAX,UAAY,MAAoB;QAC9B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yDAAkB,GAAlB,UACE,QAAgB,EAChB,WAAmB;QAEnB,IAAI,CAAC,WAAW,CAAC,4CAA4C,CAC3D,WAAW,EACX,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,oCAAoC,CAC7C,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IACH,mCAAC;AAAD,CAAC,AAhCD,IAgCC;AAhCY,oEAA4B;AAkCzC;IAGE,8CACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB;QAFnB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;IAC5B,CAAC;IAEJ,0DAAW,GAAX,UACE,WAAmB,EACnB,IAAY;QAEZ,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAE9D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8DAAe,GAAf,UACE,OAAoB;QAEpB,IAAI,IAAA,eAAO,EAAC,OAAO,CAAC,EAAE;YACpB,MAAM,IAAI,4BAAkB,CAC1B,sEAAsE,CACvE,CAAC;SACH;QACD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAClC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EACvB,kBAAkB,CACnB,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;IACH,2CAAC;AAAD,CAAC,AAjCD,IAiCC;AAjCY,oFAAoC;AAmCjD;IAGE,uCACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB,EACnB,SAAqB;QAHrB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;QACnB,cAAS,GAAT,SAAS,CAAY;IAC9B,CAAC;IAEJ,oDAAY,GAAZ,UACE,OAA2C;QAE3C,OAAO,CACL,IAAI,qCAAqC,CACvC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,CACV,CACF,CAAC;QAEF,OAAO,IAAI,8BAA8B,CACvC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IACH,oCAAC;AAAD,CAAC,AA5BD,IA4BC;AA5BY,sEAA6B;AA8B1C;IAGE,+CACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB;QAFnB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;IAC5B,CAAC;IAEJ,4DAAY,GAAZ,UAAa,QAAkB;QAA/B,iBAeC;QAdC,IAAI,IAAA,eAAO,EAAC,QAAQ,CAAC,EAAE;YACrB,MAAM,IAAI,4BAAkB,CAC1B,iEAAiE,CAClE,CAAC;SACH;QAED,IAAA,yBAAiB,EAAC,UAAC,CAAC,EAAE,CAAC;YACrB,KAAI,CAAC,WAAW,CAAC,YAAY,CAC3B,UAAG,CAAC,CAAE,EACN,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CACzC,CAAC;QACJ,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2DAAW,GAAX,UACE,WAAmB,EACnB,IAAY;QAEZ,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAE/D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+DAAe,GAAf,UACE,OAAoB;QAEpB,IAAI,IAAA,eAAO,EAAC,OAAO,CAAC,EAAE;YACpB,MAAM,IAAI,4BAAkB,CAC1B,sEAAsE,CACvE,CAAC;SACH;QACD,IAAI,CAAC,WAAW,CAAC,oBAAoB,CACnC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EACvB,kBAAkB,CACnB,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;IACH,4CAAC;AAAD,CAAC,AAlDD,IAkDC;AAlDY,sFAAqC;AAoDlD;IAGE,8CACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB,EACnB,SAAqB;QAHrB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;QACnB,cAAS,GAAT,SAAS,CAAY;IAC9B,CAAC;IAEJ,0DAAW,GAAX,UACE,eAAsD;QAEtD,OAAO,uBAAuB,CAC5B,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,IAAI,EACT,eAAe,EACf,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IAED,6DAAc,GAAd,UACE,SAAiB,EACjB,OAAe,EAAE,yBAAyB;IAC1C,MAAgB;QAEhB,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,mCAAmC,CACxD,OAAO,EACP,SAAS,EACT,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CACrC,CAAC;QAEF,OAAO,IAAI,+BAA+B,CACxC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,EACT,IAAI,EACJ,OAAO,EACP,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IACH,2CAAC;AAAD,CAAC,AAzCD,IAyCC;AAzCY,oFAAoC;AA2CjD;IAGE,yCACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB,EACnB,IAAY,EACZ,OAAe,EACf,SAAqB;QALrB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;QACnB,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAAQ;QACf,cAAS,GAAT,SAAS,CAAY;IAC9B,CAAC;IAEJ,2GAA2G;IAC3G,oEAAoE;IAC9D,qDAAW,GAAjB,UACE,eAA2E;;;;;;;wBAMnE,qBAAM,eAAe,CACzB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAC1C,EAAwB,CACzB,EAAA;;wBAHD,GAAG,GAAG,SAGL,CAAC;;;;wBAEF,KAAK,GAAG,GAAC,CAAC;;;wBAGN,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC5D,MAAM,GAAG,IAAA,kCAAwB,EAAC,eAAe,CAAC,CAAC;wBACnD,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAEnE,mCAAmC;wBACnC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC7B,YAAY,GAAG,wCAAwC,CAAC;4BAC5D,YAAY,IAAI,gBAAS,IAAA,iCAAuB,EAAC,eAAe,EAAE,IAAI,CAAC,CAAE,CAAC;4BAE1E,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;4BAEtE,4EAA4E;4BAC5E,8EAA8E;4BAC9E,wEAAwE;4BACxE,qCAAqC;4BACrC,IAAI,KAAK,EAAE;gCACT,gBAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gCAC3B,MAAM,KAAK,CAAC;6BACb;4BAED,yDAAyD;4BACzD,sBAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,EAAC;yBAChD;wBAED,sFAAsF;wBACtF,IAAI,KAAK,EAAE;4BACT,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;4BACtE,MAAM,KAAK,CAAC;yBACb;wBAED,kFAAkF;wBAClF,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBAErE,sBAAO,GAAG,EAAC;;;;KACZ;IACH,sCAAC;AAAD,CAAC,AAhED,IAgEC;AAhEY,0EAA+B;AAkE5C;IAGE,wCACY,IAAkB,EAClB,WAAuC,EACvC,IAAmB,EACnB,SAAqB;QAHrB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAA4B;QACvC,SAAI,GAAJ,IAAI,CAAe;QACnB,cAAS,GAAT,SAAS,CAAY;IAC9B,CAAC;IAEJ,oDAAW,GAAX,UACE,eAAsD;QAEtD,IAAM,GAAG,GAAG,uBAAuB,CACjC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,IAAI,EACT,eAAe,EACf,IAAI,CAAC,SAAS,CACf,CAAC;QACF,IAAI,CAAC,SAAS,EAAE,CAAC;QAEjB,OAAO,GAAG,CAAC;IACb,CAAC;IACH,qCAAC;AAAD,CAAC,AAvBD,IAuBC;AAvBY,wEAA8B;AAyB3C,IAAM,OAAO,GAAG,UACd,OAAgB,EAChB,IAAkB,EAClB,IAAmB,EACnB,SAAqB,EACrB,IAAa,EACb,SAAiB;IAAjB,0BAAA,EAAA,iBAAiB;IAEjB,IAAI,OAAO,EAAE;QACX,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,cAAc,EAAE,IAAI,CAAC,CAAC;SAC3E;aAAM;YACL,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,cAAc,CAAC,CAAC;SAChD;KACF;IACD,IAAI,IAAI,EAAE;QACR,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;KAC9B;IACD,IAAI,CAAC,cAAc,EAAE,CAAC;IACtB,SAAS,EAAE,CAAC;AACd,CAAC,CAAC;AAEF,IAAM,uBAAuB,GAAG,UAC9B,IAAkB,EAClB,IAAmB,EACnB,eAAsD,EACtD,SAAqB;;;;;;gBAMb,qBAAM,eAAe,CAAC,EAAwB,CAAC,EAAA;;gBAArD,GAAG,GAAG,SAA+C,CAAC;;;;gBAEtD,KAAK,GAAG,GAAC,CAAC;;;gBAGZ,sFAAsF;gBACtF,IAAI,KAAK,EAAE;oBACT,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;oBAEtC,MAAM,KAAK,CAAC;iBACb;gBAED,kFAAkF;gBAClF,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;gBAErC,sBAAO,GAAG,EAAC;;;KACZ,CAAC"}