@pact-foundation/pact 16.3.0 → 16.4.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 (216) hide show
  1. package/CHANGELOG.md +16 -3
  2. package/CONTRIBUTING.md +2 -2
  3. package/README.md +6 -2
  4. package/package.json +25 -28
  5. package/src/common/graphQL/configurationError.js +2 -22
  6. package/src/common/graphQL/configurationError.js.map +1 -1
  7. package/src/common/graphQL/graphQL.d.ts +2 -2
  8. package/src/common/graphQL/graphQL.js +11 -14
  9. package/src/common/graphQL/graphQL.js.map +1 -1
  10. package/src/common/graphQL/graphQLQueryError.js +2 -22
  11. package/src/common/graphQL/graphQLQueryError.js.map +1 -1
  12. package/src/common/logger.js +9 -9
  13. package/src/common/logger.js.map +1 -1
  14. package/src/common/matchingRules.d.ts +1 -1
  15. package/src/common/matchingRules.js +21 -21
  16. package/src/common/matchingRules.js.map +1 -1
  17. package/src/common/net.js +36 -42
  18. package/src/common/net.js.map +1 -1
  19. package/src/common/net.spec.js +41 -53
  20. package/src/common/net.spec.js.map +1 -1
  21. package/src/common/request.js +33 -82
  22. package/src/common/request.js.map +1 -1
  23. package/src/common/request.spec.js +26 -26
  24. package/src/common/request.spec.js.map +1 -1
  25. package/src/common/spec.js +3 -4
  26. package/src/common/spec.js.map +1 -1
  27. package/src/dsl/apolloGraphql.js +7 -25
  28. package/src/dsl/apolloGraphql.js.map +1 -1
  29. package/src/dsl/apolloGraphql.spec.js +21 -18
  30. package/src/dsl/apolloGraphql.spec.js.map +1 -1
  31. package/src/dsl/graphql.d.ts +2 -2
  32. package/src/dsl/graphql.js +29 -48
  33. package/src/dsl/graphql.js.map +1 -1
  34. package/src/dsl/graphql.spec.js +81 -66
  35. package/src/dsl/graphql.spec.js.map +1 -1
  36. package/src/dsl/interaction.d.ts +2 -2
  37. package/src/dsl/interaction.js +41 -48
  38. package/src/dsl/interaction.js.map +1 -1
  39. package/src/dsl/interaction.spec.js +77 -70
  40. package/src/dsl/interaction.spec.js.map +1 -1
  41. package/src/dsl/matchers.d.ts +1 -1
  42. package/src/dsl/matchers.js +19 -31
  43. package/src/dsl/matchers.js.map +1 -1
  44. package/src/dsl/matchers.spec.js +199 -208
  45. package/src/dsl/matchers.spec.js.map +1 -1
  46. package/src/dsl/message.d.ts +3 -3
  47. package/src/dsl/options.d.ts +3 -3
  48. package/src/dsl/verifier/proxy/hooks.d.ts +2 -2
  49. package/src/dsl/verifier/proxy/hooks.js +42 -112
  50. package/src/dsl/verifier/proxy/hooks.js.map +1 -1
  51. package/src/dsl/verifier/proxy/hooks.spec.js +84 -199
  52. package/src/dsl/verifier/proxy/hooks.spec.js.map +1 -1
  53. package/src/dsl/verifier/proxy/messages.d.ts +2 -2
  54. package/src/dsl/verifier/proxy/messages.js +88 -106
  55. package/src/dsl/verifier/proxy/messages.js.map +1 -1
  56. package/src/dsl/verifier/proxy/parseBody.d.ts +1 -1
  57. package/src/dsl/verifier/proxy/parseBody.js +2 -2
  58. package/src/dsl/verifier/proxy/parseBody.js.map +1 -1
  59. package/src/dsl/verifier/proxy/parseBody.spec.js +31 -76
  60. package/src/dsl/verifier/proxy/parseBody.spec.js.map +1 -1
  61. package/src/dsl/verifier/proxy/proxy.d.ts +2 -2
  62. package/src/dsl/verifier/proxy/proxy.js +22 -26
  63. package/src/dsl/verifier/proxy/proxy.js.map +1 -1
  64. package/src/dsl/verifier/proxy/proxy.spec.js +14 -14
  65. package/src/dsl/verifier/proxy/proxy.spec.js.map +1 -1
  66. package/src/dsl/verifier/proxy/proxyRequest.d.ts +3 -3
  67. package/src/dsl/verifier/proxy/proxyRequest.js +7 -7
  68. package/src/dsl/verifier/proxy/proxyRequest.js.map +1 -1
  69. package/src/dsl/verifier/proxy/proxyRequest.spec.js +49 -64
  70. package/src/dsl/verifier/proxy/proxyRequest.spec.js.map +1 -1
  71. package/src/dsl/verifier/proxy/stateHandler/setupStates.d.ts +3 -3
  72. package/src/dsl/verifier/proxy/stateHandler/setupStates.js +14 -18
  73. package/src/dsl/verifier/proxy/stateHandler/setupStates.js.map +1 -1
  74. package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js +76 -159
  75. package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js.map +1 -1
  76. package/src/dsl/verifier/proxy/stateHandler/stateHandler.d.ts +2 -2
  77. package/src/dsl/verifier/proxy/stateHandler/stateHandler.js +23 -72
  78. package/src/dsl/verifier/proxy/stateHandler/stateHandler.js.map +1 -1
  79. package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js +37 -85
  80. package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js.map +1 -1
  81. package/src/dsl/verifier/proxy/tracer.d.ts +1 -1
  82. package/src/dsl/verifier/proxy/tracer.js +42 -35
  83. package/src/dsl/verifier/proxy/tracer.js.map +1 -1
  84. package/src/dsl/verifier/proxy/types.d.ts +5 -5
  85. package/src/dsl/verifier/types.d.ts +3 -3
  86. package/src/dsl/verifier/verifier.d.ts +1 -1
  87. package/src/dsl/verifier/verifier.js +49 -56
  88. package/src/dsl/verifier/verifier.js.map +1 -1
  89. package/src/dsl/verifier/verifier.spec.js +76 -93
  90. package/src/dsl/verifier/verifier.spec.js.map +1 -1
  91. package/src/errors/configurationError.js +2 -22
  92. package/src/errors/configurationError.js.map +1 -1
  93. package/src/errors/graphQLQueryError.js +2 -22
  94. package/src/errors/graphQLQueryError.js.map +1 -1
  95. package/src/errors/matcherError.js +2 -22
  96. package/src/errors/matcherError.js.map +1 -1
  97. package/src/errors/verificationError.js +2 -22
  98. package/src/errors/verificationError.js.map +1 -1
  99. package/src/httpPact/ffi.d.ts +2 -2
  100. package/src/httpPact/ffi.js +28 -29
  101. package/src/httpPact/ffi.js.map +1 -1
  102. package/src/httpPact/ffi.spec.js +30 -31
  103. package/src/httpPact/ffi.spec.js.map +1 -1
  104. package/src/httpPact/index.d.ts +3 -3
  105. package/src/httpPact/index.js +92 -149
  106. package/src/httpPact/index.js.map +1 -1
  107. package/src/httpPact/index.spec.js +75 -125
  108. package/src/httpPact/index.spec.js.map +1 -1
  109. package/src/httpPact/tracing.js +20 -28
  110. package/src/httpPact/tracing.js.map +1 -1
  111. package/src/index.js +1 -1
  112. package/src/index.js.map +1 -1
  113. package/src/messageConsumerPact.d.ts +3 -3
  114. package/src/messageConsumerPact.js +50 -51
  115. package/src/messageConsumerPact.js.map +1 -1
  116. package/src/messageConsumerPact.spec.js +50 -49
  117. package/src/messageConsumerPact.spec.js.map +1 -1
  118. package/src/messageProviderPact.d.ts +3 -3
  119. package/src/messageProviderPact.js +68 -85
  120. package/src/messageProviderPact.js.map +1 -1
  121. package/src/messageProviderPact.spec.js +75 -66
  122. package/src/messageProviderPact.spec.js.map +1 -1
  123. package/src/pact.integration.spec.js +250 -268
  124. package/src/pact.integration.spec.js.map +1 -1
  125. package/src/v3/display.d.ts +1 -1
  126. package/src/v3/display.js +44 -58
  127. package/src/v3/display.js.map +1 -1
  128. package/src/v3/ffi.d.ts +2 -2
  129. package/src/v3/ffi.js +18 -16
  130. package/src/v3/ffi.js.map +1 -1
  131. package/src/v3/ffi.spec.d.ts +1 -0
  132. package/src/v3/ffi.spec.js +50 -0
  133. package/src/v3/ffi.spec.js.map +1 -0
  134. package/src/v3/graphql/graphQL.d.ts +4 -4
  135. package/src/v3/graphql/graphQL.js +50 -75
  136. package/src/v3/graphql/graphQL.js.map +1 -1
  137. package/src/v3/matchers.d.ts +2 -2
  138. package/src/v3/matchers.js +112 -147
  139. package/src/v3/matchers.js.map +1 -1
  140. package/src/v3/matchers.spec.js +168 -187
  141. package/src/v3/matchers.spec.js.map +1 -1
  142. package/src/v3/pact.d.ts +2 -2
  143. package/src/v3/pact.js +103 -151
  144. package/src/v3/pact.js.map +1 -1
  145. package/src/v3/types.d.ts +1 -1
  146. package/src/v3/xml/xmlBuilder.d.ts +1 -3
  147. package/src/v3/xml/xmlBuilder.js +7 -9
  148. package/src/v3/xml/xmlBuilder.js.map +1 -1
  149. package/src/v3/xml/xmlElement.d.ts +2 -2
  150. package/src/v3/xml/xmlElement.js +24 -41
  151. package/src/v3/xml/xmlElement.js.map +1 -1
  152. package/src/v3/xml/xmlElement.spec.js +23 -25
  153. package/src/v3/xml/xmlElement.spec.js.map +1 -1
  154. package/src/v3/xml/xmlNode.js +2 -5
  155. package/src/v3/xml/xmlNode.js.map +1 -1
  156. package/src/v3/xml/xmlText.d.ts +1 -1
  157. package/src/v3/xml/xmlText.js +9 -25
  158. package/src/v3/xml/xmlText.js.map +1 -1
  159. package/src/v4/graphql/graphQLInteractionWithRequest.d.ts +4 -4
  160. package/src/v4/graphql/graphQLInteractionWithRequest.js +21 -17
  161. package/src/v4/graphql/graphQLInteractionWithRequest.js.map +1 -1
  162. package/src/v4/graphql/graphQLRequestBuilder.d.ts +3 -3
  163. package/src/v4/graphql/graphQLRequestBuilder.js +18 -20
  164. package/src/v4/graphql/graphQLRequestBuilder.js.map +1 -1
  165. package/src/v4/graphql/index.d.ts +6 -6
  166. package/src/v4/graphql/index.js +21 -17
  167. package/src/v4/graphql/index.js.map +1 -1
  168. package/src/v4/graphql/types.d.ts +5 -5
  169. package/src/v4/http/index.d.ts +2 -2
  170. package/src/v4/http/index.js +48 -93
  171. package/src/v4/http/index.js.map +1 -1
  172. package/src/v4/http/interactionWithCompleteRequest.d.ts +4 -7
  173. package/src/v4/http/interactionWithCompleteRequest.js +6 -10
  174. package/src/v4/http/interactionWithCompleteRequest.js.map +1 -1
  175. package/src/v4/http/interactionWithPlugin.d.ts +3 -3
  176. package/src/v4/http/interactionWithPlugin.js +14 -11
  177. package/src/v4/http/interactionWithPlugin.js.map +1 -1
  178. package/src/v4/http/interactionWithPluginRequest.d.ts +2 -2
  179. package/src/v4/http/interactionWithPluginRequest.js +11 -8
  180. package/src/v4/http/interactionWithPluginRequest.js.map +1 -1
  181. package/src/v4/http/interactionWithPluginResponse.d.ts +2 -2
  182. package/src/v4/http/interactionWithPluginResponse.js +10 -48
  183. package/src/v4/http/interactionWithPluginResponse.js.map +1 -1
  184. package/src/v4/http/interactionWithRequest.d.ts +2 -2
  185. package/src/v4/http/interactionWithRequest.js +11 -8
  186. package/src/v4/http/interactionWithRequest.js.map +1 -1
  187. package/src/v4/http/interactionWithResponse.d.ts +2 -2
  188. package/src/v4/http/interactionWithResponse.js +10 -48
  189. package/src/v4/http/interactionWithResponse.js.map +1 -1
  190. package/src/v4/http/requestBuilder.d.ts +3 -3
  191. package/src/v4/http/requestBuilder.js +32 -34
  192. package/src/v4/http/requestBuilder.js.map +1 -1
  193. package/src/v4/http/requestWithPluginBuilder.d.ts +2 -2
  194. package/src/v4/http/requestWithPluginBuilder.js +26 -46
  195. package/src/v4/http/requestWithPluginBuilder.js.map +1 -1
  196. package/src/v4/http/responseBuilder.d.ts +3 -3
  197. package/src/v4/http/responseBuilder.js +24 -25
  198. package/src/v4/http/responseBuilder.js.map +1 -1
  199. package/src/v4/http/responseWithPluginBuilder.d.ts +1 -1
  200. package/src/v4/http/responseWithPluginBuilder.js +5 -25
  201. package/src/v4/http/responseWithPluginBuilder.js.map +1 -1
  202. package/src/v4/http/types.d.ts +3 -2
  203. package/src/v4/http/unconfiguredInteraction.d.ts +6 -5
  204. package/src/v4/http/unconfiguredInteraction.js +31 -26
  205. package/src/v4/http/unconfiguredInteraction.js.map +1 -1
  206. package/src/v4/index.d.ts +4 -4
  207. package/src/v4/index.js +31 -35
  208. package/src/v4/index.js.map +1 -1
  209. package/src/v4/message/asynchronousMessage.d.ts +7 -6
  210. package/src/v4/message/asynchronousMessage.js +157 -190
  211. package/src/v4/message/asynchronousMessage.js.map +1 -1
  212. package/src/v4/message/index.d.ts +7 -6
  213. package/src/v4/message/index.js +188 -217
  214. package/src/v4/message/index.js.map +1 -1
  215. package/src/v4/message/types.d.ts +5 -3
  216. package/src/v4/types.d.ts +3 -3
@@ -1,52 +1,51 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RequestBuilder = void 0;
4
- var ramda_1 = require("ramda");
5
- var matchers_1 = require("../../v3/matchers");
6
- var _1 = require(".");
7
- var matchingRules_1 = require("../../common/matchingRules");
8
- var RequestBuilder = /** @class */ (function () {
4
+ const ramda_1 = require("ramda");
5
+ const matchers_1 = require("../../v3/matchers");
6
+ const _1 = require(".");
7
+ const matchingRules_1 = require("../../common/matchingRules");
8
+ class RequestBuilder {
9
+ interaction;
9
10
  // tslint:disable:no-empty-function
10
- function RequestBuilder(interaction) {
11
+ constructor(interaction) {
11
12
  this.interaction = interaction;
12
13
  }
13
- RequestBuilder.prototype.query = function (query) {
14
- var _this = this;
15
- (0, ramda_1.forEachObjIndexed)(function (v, k) {
14
+ query(query) {
15
+ (0, ramda_1.forEachObjIndexed)((v, k) => {
16
16
  if (Array.isArray(v)) {
17
- v.forEach(function (vv, i) {
18
- _this.interaction.withQuery(k, i, (0, matchers_1.matcherValueOrString)(vv));
17
+ v.forEach((vv, i) => {
18
+ this.interaction.withQuery(k, i, (0, matchers_1.matcherValueOrString)(vv));
19
19
  });
20
20
  }
21
21
  else {
22
- _this.interaction.withQuery(k, 0, (0, matchers_1.matcherValueOrString)(v));
22
+ this.interaction.withQuery(k, 0, (0, matchers_1.matcherValueOrString)(v));
23
23
  }
24
24
  }, query);
25
25
  return this;
26
- };
27
- RequestBuilder.prototype.headers = function (headers) {
28
- var _this = this;
29
- (0, ramda_1.forEachObjIndexed)(function (v, k) {
26
+ }
27
+ headers(headers) {
28
+ (0, ramda_1.forEachObjIndexed)((v, k) => {
30
29
  if (Array.isArray(v)) {
31
- v.forEach(function (header, index) {
32
- _this.interaction.withRequestHeader("".concat(k), index, (0, matchers_1.matcherValueOrString)(header));
30
+ v.forEach((header, index) => {
31
+ this.interaction.withRequestHeader(`${k}`, index, (0, matchers_1.matcherValueOrString)(header));
33
32
  });
34
33
  }
35
34
  else {
36
- _this.interaction.withRequestHeader("".concat(k), 0, (0, matchers_1.matcherValueOrString)(v));
35
+ this.interaction.withRequestHeader(`${k}`, 0, (0, matchers_1.matcherValueOrString)(v));
37
36
  }
38
37
  }, headers);
39
38
  return this;
40
- };
41
- RequestBuilder.prototype.jsonBody = function (body) {
39
+ }
40
+ jsonBody(body) {
42
41
  this.interaction.withRequestBody((0, matchers_1.matcherValueOrString)(body), 'application/json');
43
42
  return this;
44
- };
45
- RequestBuilder.prototype.binaryFile = function (contentType, file) {
46
- var body = (0, _1.readBinaryData)(file);
43
+ }
44
+ binaryFile(contentType, file) {
45
+ const body = (0, _1.readBinaryData)(file);
47
46
  this.interaction.withRequestBinaryBody(body, contentType);
48
47
  return this;
49
- };
48
+ }
50
49
  /**
51
50
  * Sets the request body as multipart/form-data content.
52
51
  * This is useful for testing APIs that accept file uploads or multipart form submissions.
@@ -57,10 +56,10 @@ var RequestBuilder = /** @class */ (function () {
57
56
  * @param boundary - Optional boundary string for the multipart content. If not provided, will be passed as undefined.
58
57
  * @returns The V4RequestBuilder instance for method chaining
59
58
  */
60
- RequestBuilder.prototype.multipartBody = function (contentType, file, mimePartName, boundary) {
59
+ multipartBody(contentType, file, mimePartName, boundary) {
61
60
  this.interaction.withRequestMultipartBody(contentType, file, mimePartName, boundary);
62
61
  return this;
63
- };
62
+ }
64
63
  /**
65
64
  * Applies matching rules to the consumer request.
66
65
  * Matching rules allow you to define flexible matching criteria for request attributes
@@ -69,17 +68,16 @@ var RequestBuilder = /** @class */ (function () {
69
68
  * @param rules - The matching rules as a strongly typed Rules object. Rules should follow the Pact matching rules format.
70
69
  * @returns The V4RequestBuilder instance for method chaining
71
70
  */
72
- RequestBuilder.prototype.matchingRules = function (rules) {
71
+ matchingRules(rules) {
73
72
  (0, matchingRules_1.validateRules)(rules);
74
- var ffiRules = (0, matchingRules_1.convertRulesToFFI)(rules);
73
+ const ffiRules = (0, matchingRules_1.convertRulesToFFI)(rules);
75
74
  this.interaction.withRequestMatchingRules(JSON.stringify(ffiRules));
76
75
  return this;
77
- };
78
- RequestBuilder.prototype.body = function (contentType, body) {
76
+ }
77
+ body(contentType, body) {
79
78
  this.interaction.withRequestBinaryBody(body, contentType);
80
79
  return this;
81
- };
82
- return RequestBuilder;
83
- }());
80
+ }
81
+ }
84
82
  exports.RequestBuilder = RequestBuilder;
85
83
  //# sourceMappingURL=requestBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"requestBuilder.js","sourceRoot":"","sources":["../../../../src/v4/http/requestBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"requestBuilder.js","sourceRoot":"","sources":["../../../../src/v4/http/requestBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { Rules, TemplateHeaders, TemplateQuery } from '../../v3';
1
+ import type { Rules, TemplateHeaders, TemplateQuery } from '../../v3';
2
2
  import { RequestBuilder } from './requestBuilder';
3
- import { V4RequestWithPluginBuilder } from './types';
3
+ import type { V4RequestWithPluginBuilder } from './types';
4
4
  export declare class RequestWithPluginBuilder extends RequestBuilder implements V4RequestWithPluginBuilder {
5
5
  pluginContents(contentType: string, contents: string): V4RequestWithPluginBuilder;
6
6
  query(query: TemplateQuery): V4RequestWithPluginBuilder;
@@ -1,47 +1,28 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
2
  Object.defineProperty(exports, "__esModule", { value: true });
18
3
  exports.RequestWithPluginBuilder = void 0;
19
- var requestBuilder_1 = require("./requestBuilder");
20
- var RequestWithPluginBuilder = /** @class */ (function (_super) {
21
- __extends(RequestWithPluginBuilder, _super);
22
- function RequestWithPluginBuilder() {
23
- return _super !== null && _super.apply(this, arguments) || this;
24
- }
25
- RequestWithPluginBuilder.prototype.pluginContents = function (contentType, contents) {
4
+ const requestBuilder_1 = require("./requestBuilder");
5
+ class RequestWithPluginBuilder extends requestBuilder_1.RequestBuilder {
6
+ pluginContents(contentType, contents) {
26
7
  this.interaction.withPluginRequestInteractionContents(contentType, contents);
27
8
  return this;
28
- };
29
- RequestWithPluginBuilder.prototype.query = function (query) {
30
- _super.prototype.query.call(this, query);
9
+ }
10
+ query(query) {
11
+ super.query(query);
31
12
  return this;
32
- };
33
- RequestWithPluginBuilder.prototype.headers = function (headers) {
34
- _super.prototype.headers.call(this, headers);
13
+ }
14
+ headers(headers) {
15
+ super.headers(headers);
35
16
  return this;
36
- };
37
- RequestWithPluginBuilder.prototype.jsonBody = function (body) {
38
- _super.prototype.jsonBody.call(this, body);
17
+ }
18
+ jsonBody(body) {
19
+ super.jsonBody(body);
39
20
  return this;
40
- };
41
- RequestWithPluginBuilder.prototype.binaryFile = function (contentType, file) {
42
- _super.prototype.binaryFile.call(this, contentType, file);
21
+ }
22
+ binaryFile(contentType, file) {
23
+ super.binaryFile(contentType, file);
43
24
  return this;
44
- };
25
+ }
45
26
  /**
46
27
  * Sets the request body as multipart/form-data content for plugin-based interactions.
47
28
  * This is useful for testing APIs that accept file uploads or multipart form submissions.
@@ -52,10 +33,10 @@ var RequestWithPluginBuilder = /** @class */ (function (_super) {
52
33
  * @param boundary - Optional boundary string for the multipart content. If not provided, will be passed as undefined.
53
34
  * @returns The V4RequestWithPluginBuilder instance for method chaining
54
35
  */
55
- RequestWithPluginBuilder.prototype.multipartBody = function (contentType, file, mimePartName, boundary) {
56
- _super.prototype.multipartBody.call(this, contentType, file, mimePartName, boundary);
36
+ multipartBody(contentType, file, mimePartName, boundary) {
37
+ super.multipartBody(contentType, file, mimePartName, boundary);
57
38
  return this;
58
- };
39
+ }
59
40
  /**
60
41
  * Applies matching rules to the consumer request.
61
42
  * Matching rules allow you to define flexible matching criteria for request attributes
@@ -64,15 +45,14 @@ var RequestWithPluginBuilder = /** @class */ (function (_super) {
64
45
  * @param rules - The matching rules as a strongly typed Rules object. Rules should follow the Pact matching rules format.
65
46
  * @returns The V4RequestWithPluginBuilder instance for method chaining
66
47
  */
67
- RequestWithPluginBuilder.prototype.matchingRules = function (rules) {
68
- _super.prototype.matchingRules.call(this, rules);
48
+ matchingRules(rules) {
49
+ super.matchingRules(rules);
69
50
  return this;
70
- };
71
- RequestWithPluginBuilder.prototype.body = function (contentType, body) {
72
- _super.prototype.body.call(this, contentType, body);
51
+ }
52
+ body(contentType, body) {
53
+ super.body(contentType, body);
73
54
  return this;
74
- };
75
- return RequestWithPluginBuilder;
76
- }(requestBuilder_1.RequestBuilder));
55
+ }
56
+ }
77
57
  exports.RequestWithPluginBuilder = RequestWithPluginBuilder;
78
58
  //# sourceMappingURL=requestWithPluginBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"requestWithPluginBuilder.js","sourceRoot":"","sources":["../../../../src/v4/http/requestWithPluginBuilder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,mDAAkD;AAGlD;IACU,4CAAc;IADxB;;IA+EA,CAAC;IA3EC,iDAAc,GAAd,UACE,WAAmB,EACnB,QAAgB;QAEhB,IAAI,CAAC,WAAW,CAAC,oCAAoC,CACnD,WAAW,EACX,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wCAAK,GAAL,UAAM,KAAoB;QACxB,gBAAK,CAAC,KAAK,YAAC,KAAK,CAAC,CAAC;QAEnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0CAAO,GAAP,UAAQ,OAAwB;QAC9B,gBAAK,CAAC,OAAO,YAAC,OAAO,CAAC,CAAC;QAEvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2CAAQ,GAAR,UAAS,IAAa;QACpB,gBAAK,CAAC,QAAQ,YAAC,IAAI,CAAC,CAAC;QAErB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6CAAU,GAAV,UAAW,WAAmB,EAAE,IAAY;QAC1C,gBAAK,CAAC,UAAU,YAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAEpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;OASG;IACH,gDAAa,GAAb,UACE,WAAmB,EACnB,IAAY,EACZ,YAAoB,EACpB,QAAiB;QAEjB,gBAAK,CAAC,aAAa,YAAC,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAE/D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,gDAAa,GAAb,UAAc,KAAY;QACxB,gBAAK,CAAC,aAAa,YAAC,KAAK,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uCAAI,GAAJ,UAAK,WAAmB,EAAE,IAAY;QACpC,gBAAK,CAAC,IAAI,YAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAE9B,OAAO,IAAI,CAAC;IACd,CAAC;IACH,+BAAC;AAAD,CAAC,AA/ED,CACU,+BAAc,GA8EvB;AA/EY,4DAAwB"}
1
+ {"version":3,"file":"requestWithPluginBuilder.js","sourceRoot":"","sources":["../../../../src/v4/http/requestWithPluginBuilder.ts"],"names":[],"mappings":";;;AACA,qDAAkD;AAGlD,MAAa,wBACX,SAAQ,+BAAc;IAGtB,cAAc,CACZ,WAAmB,EACnB,QAAgB;QAEhB,IAAI,CAAC,WAAW,CAAC,oCAAoC,CACnD,WAAW,EACX,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAoB;QACxB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,OAAwB;QAC9B,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,IAAa;QACpB,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAErB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,UAAU,CAAC,WAAmB,EAAE,IAAY;QAC1C,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAEpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;OASG;IACH,aAAa,CACX,WAAmB,EACnB,IAAY,EACZ,YAAoB,EACpB,QAAiB;QAEjB,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAE/D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,aAAa,CAAC,KAAY;QACxB,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,WAAmB,EAAE,IAAY;QACpC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAE9B,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA/ED,4DA+EC"}
@@ -1,6 +1,6 @@
1
- import { ConsumerInteraction } from '@pact-foundation/pact-core';
2
- import { TemplateHeaders, Rules } from '../../v3';
3
- import { V4ResponseBuilder } from './types';
1
+ import type { ConsumerInteraction } from '@pact-foundation/pact-core';
2
+ import type { TemplateHeaders, Rules } from '../../v3';
3
+ import type { V4ResponseBuilder } from './types';
4
4
  export declare class ResponseBuilder implements V4ResponseBuilder {
5
5
  protected interaction: ConsumerInteraction;
6
6
  constructor(interaction: ConsumerInteraction);
@@ -1,30 +1,30 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ResponseBuilder = void 0;
4
- var ramda_1 = require("ramda");
5
- var _1 = require(".");
6
- var matchers_1 = require("../../v3/matchers");
7
- var matchingRules_1 = require("../../common/matchingRules");
8
- var ResponseBuilder = /** @class */ (function () {
9
- function ResponseBuilder(interaction) {
4
+ const ramda_1 = require("ramda");
5
+ const _1 = require(".");
6
+ const matchers_1 = require("../../v3/matchers");
7
+ const matchingRules_1 = require("../../common/matchingRules");
8
+ class ResponseBuilder {
9
+ interaction;
10
+ constructor(interaction) {
10
11
  this.interaction = interaction;
11
12
  }
12
- ResponseBuilder.prototype.headers = function (headers) {
13
- var _this = this;
14
- (0, ramda_1.forEachObjIndexed)(function (v, k) {
15
- _this.interaction.withResponseHeader("".concat(k), 0, (0, matchers_1.matcherValueOrString)(v));
13
+ headers(headers) {
14
+ (0, ramda_1.forEachObjIndexed)((v, k) => {
15
+ this.interaction.withResponseHeader(`${k}`, 0, (0, matchers_1.matcherValueOrString)(v));
16
16
  }, headers);
17
17
  return this;
18
- };
19
- ResponseBuilder.prototype.jsonBody = function (body) {
18
+ }
19
+ jsonBody(body) {
20
20
  this.interaction.withResponseBody((0, matchers_1.matcherValueOrString)(body), 'application/json');
21
21
  return this;
22
- };
23
- ResponseBuilder.prototype.binaryFile = function (contentType, file) {
24
- var body = (0, _1.readBinaryData)(file);
22
+ }
23
+ binaryFile(contentType, file) {
24
+ const body = (0, _1.readBinaryData)(file);
25
25
  this.interaction.withResponseBinaryBody(body, contentType);
26
26
  return this;
27
- };
27
+ }
28
28
  /**
29
29
  * Sets the response body as multipart/form-data content.
30
30
  * This is useful for testing APIs that respond with multipart/form-data.
@@ -35,10 +35,10 @@ var ResponseBuilder = /** @class */ (function () {
35
35
  * @param boundary - Optional boundary string for the multipart content. If not provided, will be passed as undefined.
36
36
  * @returns The V4ResponseBuilder instance for method chaining
37
37
  */
38
- ResponseBuilder.prototype.multipartBody = function (contentType, file, mimePartName, boundary) {
38
+ multipartBody(contentType, file, mimePartName, boundary) {
39
39
  this.interaction.withResponseMultipartBody(contentType, file, mimePartName, boundary);
40
40
  return this;
41
- };
41
+ }
42
42
  /**
43
43
  * Applies matching rules to the provider response.
44
44
  * Matching rules allow you to define flexible matching criteria for response attributes
@@ -47,17 +47,16 @@ var ResponseBuilder = /** @class */ (function () {
47
47
  * @param rules - The matching rules as a strongly typed Rules object. Rules should follow the Pact matching rules format.
48
48
  * @returns The V4ResponseBuilder instance for method chaining
49
49
  */
50
- ResponseBuilder.prototype.matchingRules = function (rules) {
50
+ matchingRules(rules) {
51
51
  (0, matchingRules_1.validateRules)(rules);
52
- var ffiRules = (0, matchingRules_1.convertRulesToFFI)(rules);
52
+ const ffiRules = (0, matchingRules_1.convertRulesToFFI)(rules);
53
53
  this.interaction.withResponseMatchingRules(JSON.stringify(ffiRules));
54
54
  return this;
55
- };
56
- ResponseBuilder.prototype.body = function (contentType, body) {
55
+ }
56
+ body(contentType, body) {
57
57
  this.interaction.withResponseBinaryBody(body, contentType);
58
58
  return this;
59
- };
60
- return ResponseBuilder;
61
- }());
59
+ }
60
+ }
62
61
  exports.ResponseBuilder = ResponseBuilder;
63
62
  //# sourceMappingURL=responseBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"responseBuilder.js","sourceRoot":"","sources":["../../../../src/v4/http/responseBuilder.ts"],"names":[],"mappings":";;;AACA,+BAA0C;AAC1C,sBAAmC;AAEnC,8CAAyD;AAEzD,4DAA8E;AAE9E;IAGE,yBAAY,WAAgC;QAC1C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,iCAAO,GAAP,UAAQ,OAAwB;QAAhC,iBAMC;QALC,IAAA,yBAAiB,EAAC,UAAC,CAAC,EAAE,CAAC;YACrB,KAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,UAAG,CAAC,CAAE,EAAE,CAAC,EAAE,IAAA,+BAAoB,EAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kCAAQ,GAAR,UAAS,IAAa;QACpB,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAC/B,IAAA,+BAAoB,EAAC,IAAI,CAAC,EAC1B,kBAAkB,CACnB,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oCAAU,GAAV,UAAW,WAAmB,EAAE,IAAY;QAC1C,IAAM,IAAI,GAAG,IAAA,iBAAc,EAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;OASG;IACH,uCAAa,GAAb,UACE,WAAmB,EACnB,IAAY,EACZ,YAAoB,EACpB,QAAiB;QAEjB,IAAI,CAAC,WAAW,CAAC,yBAAyB,CACxC,WAAW,EACX,IAAI,EACJ,YAAY,EACZ,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,uCAAa,GAAb,UAAc,KAAY;QACxB,IAAA,6BAAa,EAAC,KAAK,CAAC,CAAC;QACrB,IAAM,QAAQ,GAAG,IAAA,iCAAiB,EAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8BAAI,GAAJ,UAAK,WAAmB,EAAE,IAAY;QACpC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC;IACd,CAAC;IACH,sBAAC;AAAD,CAAC,AA5ED,IA4EC;AA5EY,0CAAe"}
1
+ {"version":3,"file":"responseBuilder.js","sourceRoot":"","sources":["../../../../src/v4/http/responseBuilder.ts"],"names":[],"mappings":";;;AACA,iCAA0C;AAC1C,wBAAmC;AAEnC,gDAAyD;AAEzD,8DAA8E;AAE9E,MAAa,eAAe;IAChB,WAAW,CAAsB;IAE3C,YAAY,WAAgC;QAC1C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,OAAO,CAAC,OAAwB;QAC9B,IAAA,yBAAiB,EAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACzB,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,IAAA,+BAAoB,EAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,IAAa;QACpB,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAC/B,IAAA,+BAAoB,EAAC,IAAI,CAAC,EAC1B,kBAAkB,CACnB,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,UAAU,CAAC,WAAmB,EAAE,IAAY;QAC1C,MAAM,IAAI,GAAG,IAAA,iBAAc,EAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;OASG;IACH,aAAa,CACX,WAAmB,EACnB,IAAY,EACZ,YAAoB,EACpB,QAAiB;QAEjB,IAAI,CAAC,WAAW,CAAC,yBAAyB,CACxC,WAAW,EACX,IAAI,EACJ,YAAY,EACZ,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,aAAa,CAAC,KAAY;QACxB,IAAA,6BAAa,EAAC,KAAK,CAAC,CAAC;QACrB,MAAM,QAAQ,GAAG,IAAA,iCAAiB,EAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,WAAmB,EAAE,IAAY;QACpC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA5ED,0CA4EC"}
@@ -1,5 +1,5 @@
1
1
  import { ResponseBuilder } from './responseBuilder';
2
- import { V4ResponseWithPluginBuilder, V4ResponseBuilder } from './types';
2
+ import type { V4ResponseWithPluginBuilder, V4ResponseBuilder } from './types';
3
3
  export declare class ResponseWithPluginBuilder extends ResponseBuilder implements V4ResponseWithPluginBuilder {
4
4
  pluginContents(contentType: string, contents: string): V4ResponseBuilder;
5
5
  }
@@ -1,32 +1,12 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
2
  Object.defineProperty(exports, "__esModule", { value: true });
18
3
  exports.ResponseWithPluginBuilder = void 0;
19
- var responseBuilder_1 = require("./responseBuilder");
20
- var ResponseWithPluginBuilder = /** @class */ (function (_super) {
21
- __extends(ResponseWithPluginBuilder, _super);
22
- function ResponseWithPluginBuilder() {
23
- return _super !== null && _super.apply(this, arguments) || this;
24
- }
25
- ResponseWithPluginBuilder.prototype.pluginContents = function (contentType, contents) {
4
+ const responseBuilder_1 = require("./responseBuilder");
5
+ class ResponseWithPluginBuilder extends responseBuilder_1.ResponseBuilder {
6
+ pluginContents(contentType, contents) {
26
7
  this.interaction.withPluginResponseInteractionContents(contentType, contents);
27
8
  return this;
28
- };
29
- return ResponseWithPluginBuilder;
30
- }(responseBuilder_1.ResponseBuilder));
9
+ }
10
+ }
31
11
  exports.ResponseWithPluginBuilder = ResponseWithPluginBuilder;
32
12
  //# sourceMappingURL=responseWithPluginBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"responseWithPluginBuilder.js","sourceRoot":"","sources":["../../../../src/v4/http/responseWithPluginBuilder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,qDAAoD;AAGpD;IACU,6CAAe;IADzB;;IAWA,CAAC;IAPC,kDAAc,GAAd,UAAe,WAAmB,EAAE,QAAgB;QAClD,IAAI,CAAC,WAAW,CAAC,qCAAqC,CACpD,WAAW,EACX,QAAQ,CACT,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACH,gCAAC;AAAD,CAAC,AAXD,CACU,iCAAe,GAUxB;AAXY,8DAAyB"}
1
+ {"version":3,"file":"responseWithPluginBuilder.js","sourceRoot":"","sources":["../../../../src/v4/http/responseWithPluginBuilder.ts"],"names":[],"mappings":";;;AAAA,uDAAoD;AAGpD,MAAa,yBACX,SAAQ,iCAAe;IAGvB,cAAc,CAAC,WAAmB,EAAE,QAAgB;QAClD,IAAI,CAAC,WAAW,CAAC,qCAAqC,CACpD,WAAW,EACX,QAAQ,CACT,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAXD,8DAWC"}
@@ -1,5 +1,5 @@
1
- import { JsonMap } from '../../common/jsonTypes';
2
- import { Matcher, Path, Rules, SpecificationVersion, TemplateHeaders, TemplateQuery, V3MockServer, V3ProviderState, V3Request, V3Response } from '../../v3';
1
+ import type { JsonMap } from '../../common/jsonTypes';
2
+ import type { Matcher, Path, Rules, SpecificationVersion, TemplateHeaders, TemplateQuery, V3MockServer, V3ProviderState, V3Request, V3Response } from '../../v3';
3
3
  export type V4ProviderState = V3ProviderState;
4
4
  export type V4MockServer = V3MockServer;
5
5
  export type V4Request = V3Request;
@@ -50,6 +50,7 @@ export interface V4UnconfiguredInteraction {
50
50
  pending(pending?: boolean): V4UnconfiguredInteraction;
51
51
  comment(comment: Comment | CustomComment): V4UnconfiguredInteraction;
52
52
  testName(name: string): V4UnconfiguredInteraction;
53
+ reference(group: string, name: string, value: string): V4UnconfiguredInteraction;
53
54
  withCompleteRequest(request: V4Request): V4InteractionWithCompleteRequest;
54
55
  withRequest(method: string, path: Path, builder?: V4RequestBuilderFunc): V4InteractionWithRequest;
55
56
  usingPlugin(config: PluginConfig): V4InteractionWithPlugin;
@@ -1,7 +1,7 @@
1
- import { ConsumerPact, ConsumerInteraction } from '@pact-foundation/pact-core';
2
- import { JsonMap } from '../../common/jsonTypes';
3
- import { Path } from '../../v3';
4
- import { V4UnconfiguredInteraction, PactV4Options, V4Request, V4InteractionWithCompleteRequest, V4RequestBuilderFunc, V4InteractionWithRequest, PluginConfig, V4InteractionWithPlugin, Comment, CustomComment } from './types';
1
+ import type { ConsumerPact, ConsumerInteraction } from '@pact-foundation/pact-core';
2
+ import type { JsonMap } from '../../common/jsonTypes';
3
+ import type { Path } from '../../v3';
4
+ import type { V4UnconfiguredInteraction, PactV4Options, V4Request, V4InteractionWithCompleteRequest, V4RequestBuilderFunc, V4InteractionWithRequest, PluginConfig, V4InteractionWithPlugin, Comment, CustomComment } from './types';
5
5
  export declare class UnconfiguredInteraction implements V4UnconfiguredInteraction {
6
6
  protected pact: ConsumerPact;
7
7
  protected interaction: ConsumerInteraction;
@@ -13,7 +13,8 @@ export declare class UnconfiguredInteraction implements V4UnconfiguredInteractio
13
13
  pending(pending?: boolean): V4UnconfiguredInteraction;
14
14
  comment(comment: Comment | CustomComment): V4UnconfiguredInteraction;
15
15
  testName(name: string): V4UnconfiguredInteraction;
16
- withCompleteRequest(request: V4Request): V4InteractionWithCompleteRequest;
16
+ reference(group: string, name: string, value: string): V4UnconfiguredInteraction;
17
+ withCompleteRequest(_request: V4Request): V4InteractionWithCompleteRequest;
17
18
  withRequest(method: string, path: Path, builder?: V4RequestBuilderFunc): V4InteractionWithRequest;
18
19
  usingPlugin(config: PluginConfig): V4InteractionWithPlugin;
19
20
  }
@@ -1,23 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.UnconfiguredInteraction = void 0;
4
- var interactionWithPlugin_1 = require("./interactionWithPlugin");
5
- var requestBuilder_1 = require("./requestBuilder");
6
- var interactionWithRequest_1 = require("./interactionWithRequest");
7
- var matchers_1 = require("../../v3/matchers");
8
- var UnconfiguredInteraction = /** @class */ (function () {
4
+ const interactionWithPlugin_1 = require("./interactionWithPlugin");
5
+ const requestBuilder_1 = require("./requestBuilder");
6
+ const interactionWithRequest_1 = require("./interactionWithRequest");
7
+ const matchers_1 = require("../../v3/matchers");
8
+ class UnconfiguredInteraction {
9
+ pact;
10
+ interaction;
11
+ opts;
12
+ cleanupFn;
9
13
  // tslint:disable:no-empty-function
10
- function UnconfiguredInteraction(pact, interaction, opts, cleanupFn) {
14
+ constructor(pact, interaction, opts, cleanupFn) {
11
15
  this.pact = pact;
12
16
  this.interaction = interaction;
13
17
  this.opts = opts;
14
18
  this.cleanupFn = cleanupFn;
15
19
  }
16
- UnconfiguredInteraction.prototype.uponReceiving = function (description) {
20
+ uponReceiving(description) {
17
21
  this.interaction.uponReceiving(description);
18
22
  return this;
19
- };
20
- UnconfiguredInteraction.prototype.given = function (state, parameters) {
23
+ }
24
+ given(state, parameters) {
21
25
  if (parameters) {
22
26
  this.interaction.givenWithParams(state, JSON.stringify(parameters));
23
27
  }
@@ -25,40 +29,41 @@ var UnconfiguredInteraction = /** @class */ (function () {
25
29
  this.interaction.given(state);
26
30
  }
27
31
  return this;
28
- };
29
- UnconfiguredInteraction.prototype.pending = function (pending) {
30
- if (pending === void 0) { pending = true; }
32
+ }
33
+ pending(pending = true) {
31
34
  this.interaction.setPending(pending);
32
35
  return this;
33
- };
34
- UnconfiguredInteraction.prototype.comment = function (comment) {
36
+ }
37
+ comment(comment) {
35
38
  if (typeof comment === 'string') {
36
39
  this.interaction.addTextComment(comment);
37
40
  return this;
38
41
  }
39
42
  this.interaction.setComment(comment.key, comment.value);
40
43
  return this;
41
- };
42
- UnconfiguredInteraction.prototype.testName = function (name) {
44
+ }
45
+ testName(name) {
43
46
  this.interaction.setInteractionTestName(name);
44
47
  return this;
45
- };
46
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
47
- UnconfiguredInteraction.prototype.withCompleteRequest = function (request) {
48
+ }
49
+ reference(group, name, value) {
50
+ this.interaction.addInteractionReference(group, name, value);
51
+ return this;
52
+ }
53
+ withCompleteRequest(_request) {
48
54
  throw new Error('withCompleteRequest is not implemented');
49
- };
50
- UnconfiguredInteraction.prototype.withRequest = function (method, path, builder) {
55
+ }
56
+ withRequest(method, path, builder) {
51
57
  this.interaction.withRequest(method, (0, matchers_1.matcherValueOrString)(path));
52
58
  if (builder) {
53
59
  builder(new requestBuilder_1.RequestBuilder(this.interaction));
54
60
  }
55
61
  return new interactionWithRequest_1.InteractionWithRequest(this.pact, this.interaction, this.opts, this.cleanupFn);
56
- };
57
- UnconfiguredInteraction.prototype.usingPlugin = function (config) {
62
+ }
63
+ usingPlugin(config) {
58
64
  this.pact.addPlugin(config.plugin, config.version);
59
65
  return new interactionWithPlugin_1.InteractionWithPlugin(this.pact, this.interaction, this.opts, this.cleanupFn);
60
- };
61
- return UnconfiguredInteraction;
62
- }());
66
+ }
67
+ }
63
68
  exports.UnconfiguredInteraction = UnconfiguredInteraction;
64
69
  //# sourceMappingURL=unconfiguredInteraction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"unconfiguredInteraction.js","sourceRoot":"","sources":["../../../../src/v4/http/unconfiguredInteraction.ts"],"names":[],"mappings":";;;AACA,iEAAgE;AAChE,mDAAkD;AAClD,mEAAkE;AAGlE,8CAAyD;AAczD;IACE,mCAAmC;IACnC,iCACY,IAAkB,EAClB,WAAgC,EAChC,IAAmB,EACnB,SAAqB;QAHrB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAAqB;QAChC,SAAI,GAAJ,IAAI,CAAe;QACnB,cAAS,GAAT,SAAS,CAAY;IAC9B,CAAC;IAEJ,+CAAa,GAAb,UAAc,WAAmB;QAC/B,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAE5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uCAAK,GAAL,UAAM,KAAa,EAAE,UAAoB;QACvC,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yCAAO,GAAP,UAAQ,OAAc;QAAd,wBAAA,EAAA,cAAc;QACpB,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAErC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yCAAO,GAAP,UAAQ,OAAgC;QACtC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAExD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0CAAQ,GAAR,UAAS,IAAY;QACnB,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAE9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6DAA6D;IAC7D,qDAAmB,GAAnB,UAAoB,OAAkB;QACpC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,6CAAW,GAAX,UACE,MAAc,EACd,IAAU,EACV,OAA8B;QAE9B,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,EAAE,IAAA,+BAAoB,EAAC,IAAI,CAAC,CAAC,CAAC;QAEjE,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,+BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,+CAAsB,CAC/B,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IAED,6CAAW,GAAX,UAAY,MAAoB;QAC9B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnD,OAAO,IAAI,6CAAqB,CAC9B,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IACH,8BAAC;AAAD,CAAC,AAjFD,IAiFC;AAjFY,0DAAuB"}
1
+ {"version":3,"file":"unconfiguredInteraction.js","sourceRoot":"","sources":["../../../../src/v4/http/unconfiguredInteraction.ts"],"names":[],"mappings":";;;AAIA,mEAAgE;AAChE,qDAAkD;AAClD,qEAAkE;AAGlE,gDAAyD;AAczD,MAAa,uBAAuB;IAGtB;IACA;IACA;IACA;IALZ,mCAAmC;IACnC,YACY,IAAkB,EAClB,WAAgC,EAChC,IAAmB,EACnB,SAAqB;QAHrB,SAAI,GAAJ,IAAI,CAAc;QAClB,gBAAW,GAAX,WAAW,CAAqB;QAChC,SAAI,GAAJ,IAAI,CAAe;QACnB,cAAS,GAAT,SAAS,CAAY;IAC9B,CAAC;IAEJ,aAAa,CAAC,WAAmB;QAC/B,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAE5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAa,EAAE,UAAoB;QACvC,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,OAAO,GAAG,IAAI;QACpB,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAErC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,OAAgC;QACtC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAExD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAE9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CACP,KAAa,EACb,IAAY,EACZ,KAAa;QAEb,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAE7D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB,CAAC,QAAmB;QACrC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,WAAW,CACT,MAAc,EACd,IAAU,EACV,OAA8B;QAE9B,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,EAAE,IAAA,+BAAoB,EAAC,IAAI,CAAC,CAAC,CAAC;QAEjE,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,+BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,+CAAsB,CAC/B,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,MAAoB;QAC9B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnD,OAAO,IAAI,6CAAqB,CAC9B,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;CACF;AA1FD,0DA0FC"}
package/src/v4/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { PactV4Options, V4UnconfiguredInteraction } from './http/types';
2
- import { V4ConsumerPact } from './types';
3
- import { V4UnconfiguredAsynchronousMessage, V4UnconfiguredSynchronousMessage } from './message/types';
4
- import { V4UnconfiguredGraphQLInteraction } from './graphql/types';
1
+ import { PactV4Options, type V4UnconfiguredInteraction } from './http/types';
2
+ import type { V4ConsumerPact } from './types';
3
+ import type { V4UnconfiguredAsynchronousMessage, V4UnconfiguredSynchronousMessage } from './message/types';
4
+ import type { V4UnconfiguredGraphQLInteraction } from './graphql/types';
5
5
  export declare class PactV4 implements V4ConsumerPact {
6
6
  private opts;
7
7
  private pact;