@pact-foundation/pact 16.3.1 → 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 (213) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/CONTRIBUTING.md +2 -2
  3. package/package.json +16 -24
  4. package/src/common/graphQL/configurationError.js +2 -22
  5. package/src/common/graphQL/configurationError.js.map +1 -1
  6. package/src/common/graphQL/graphQL.d.ts +2 -2
  7. package/src/common/graphQL/graphQL.js +11 -14
  8. package/src/common/graphQL/graphQL.js.map +1 -1
  9. package/src/common/graphQL/graphQLQueryError.js +2 -22
  10. package/src/common/graphQL/graphQLQueryError.js.map +1 -1
  11. package/src/common/logger.js +9 -9
  12. package/src/common/logger.js.map +1 -1
  13. package/src/common/matchingRules.d.ts +1 -1
  14. package/src/common/matchingRules.js +21 -21
  15. package/src/common/matchingRules.js.map +1 -1
  16. package/src/common/net.js +36 -42
  17. package/src/common/net.js.map +1 -1
  18. package/src/common/net.spec.js +41 -53
  19. package/src/common/net.spec.js.map +1 -1
  20. package/src/common/request.js +33 -82
  21. package/src/common/request.js.map +1 -1
  22. package/src/common/request.spec.js +26 -26
  23. package/src/common/request.spec.js.map +1 -1
  24. package/src/common/spec.js +3 -4
  25. package/src/common/spec.js.map +1 -1
  26. package/src/dsl/apolloGraphql.js +7 -25
  27. package/src/dsl/apolloGraphql.js.map +1 -1
  28. package/src/dsl/apolloGraphql.spec.js +21 -18
  29. package/src/dsl/apolloGraphql.spec.js.map +1 -1
  30. package/src/dsl/graphql.d.ts +2 -2
  31. package/src/dsl/graphql.js +29 -48
  32. package/src/dsl/graphql.js.map +1 -1
  33. package/src/dsl/graphql.spec.js +81 -66
  34. package/src/dsl/graphql.spec.js.map +1 -1
  35. package/src/dsl/interaction.d.ts +2 -2
  36. package/src/dsl/interaction.js +41 -48
  37. package/src/dsl/interaction.js.map +1 -1
  38. package/src/dsl/interaction.spec.js +77 -70
  39. package/src/dsl/interaction.spec.js.map +1 -1
  40. package/src/dsl/matchers.d.ts +1 -1
  41. package/src/dsl/matchers.js +19 -31
  42. package/src/dsl/matchers.js.map +1 -1
  43. package/src/dsl/matchers.spec.js +199 -208
  44. package/src/dsl/matchers.spec.js.map +1 -1
  45. package/src/dsl/message.d.ts +3 -3
  46. package/src/dsl/options.d.ts +3 -3
  47. package/src/dsl/verifier/proxy/hooks.d.ts +2 -2
  48. package/src/dsl/verifier/proxy/hooks.js +42 -112
  49. package/src/dsl/verifier/proxy/hooks.js.map +1 -1
  50. package/src/dsl/verifier/proxy/hooks.spec.js +84 -199
  51. package/src/dsl/verifier/proxy/hooks.spec.js.map +1 -1
  52. package/src/dsl/verifier/proxy/messages.d.ts +2 -2
  53. package/src/dsl/verifier/proxy/messages.js +88 -106
  54. package/src/dsl/verifier/proxy/messages.js.map +1 -1
  55. package/src/dsl/verifier/proxy/parseBody.d.ts +1 -1
  56. package/src/dsl/verifier/proxy/parseBody.js +2 -2
  57. package/src/dsl/verifier/proxy/parseBody.js.map +1 -1
  58. package/src/dsl/verifier/proxy/parseBody.spec.js +31 -76
  59. package/src/dsl/verifier/proxy/parseBody.spec.js.map +1 -1
  60. package/src/dsl/verifier/proxy/proxy.d.ts +2 -2
  61. package/src/dsl/verifier/proxy/proxy.js +22 -26
  62. package/src/dsl/verifier/proxy/proxy.js.map +1 -1
  63. package/src/dsl/verifier/proxy/proxy.spec.js +14 -14
  64. package/src/dsl/verifier/proxy/proxy.spec.js.map +1 -1
  65. package/src/dsl/verifier/proxy/proxyRequest.d.ts +3 -3
  66. package/src/dsl/verifier/proxy/proxyRequest.js +7 -7
  67. package/src/dsl/verifier/proxy/proxyRequest.js.map +1 -1
  68. package/src/dsl/verifier/proxy/proxyRequest.spec.js +49 -64
  69. package/src/dsl/verifier/proxy/proxyRequest.spec.js.map +1 -1
  70. package/src/dsl/verifier/proxy/stateHandler/setupStates.d.ts +3 -3
  71. package/src/dsl/verifier/proxy/stateHandler/setupStates.js +14 -18
  72. package/src/dsl/verifier/proxy/stateHandler/setupStates.js.map +1 -1
  73. package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js +76 -159
  74. package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js.map +1 -1
  75. package/src/dsl/verifier/proxy/stateHandler/stateHandler.d.ts +2 -2
  76. package/src/dsl/verifier/proxy/stateHandler/stateHandler.js +23 -72
  77. package/src/dsl/verifier/proxy/stateHandler/stateHandler.js.map +1 -1
  78. package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js +37 -85
  79. package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js.map +1 -1
  80. package/src/dsl/verifier/proxy/tracer.d.ts +1 -1
  81. package/src/dsl/verifier/proxy/tracer.js +42 -35
  82. package/src/dsl/verifier/proxy/tracer.js.map +1 -1
  83. package/src/dsl/verifier/proxy/types.d.ts +5 -5
  84. package/src/dsl/verifier/types.d.ts +3 -3
  85. package/src/dsl/verifier/verifier.d.ts +1 -1
  86. package/src/dsl/verifier/verifier.js +49 -56
  87. package/src/dsl/verifier/verifier.js.map +1 -1
  88. package/src/dsl/verifier/verifier.spec.js +76 -93
  89. package/src/dsl/verifier/verifier.spec.js.map +1 -1
  90. package/src/errors/configurationError.js +2 -22
  91. package/src/errors/configurationError.js.map +1 -1
  92. package/src/errors/graphQLQueryError.js +2 -22
  93. package/src/errors/graphQLQueryError.js.map +1 -1
  94. package/src/errors/matcherError.js +2 -22
  95. package/src/errors/matcherError.js.map +1 -1
  96. package/src/errors/verificationError.js +2 -22
  97. package/src/errors/verificationError.js.map +1 -1
  98. package/src/httpPact/ffi.d.ts +2 -2
  99. package/src/httpPact/ffi.js +28 -29
  100. package/src/httpPact/ffi.js.map +1 -1
  101. package/src/httpPact/ffi.spec.js +30 -31
  102. package/src/httpPact/ffi.spec.js.map +1 -1
  103. package/src/httpPact/index.d.ts +3 -3
  104. package/src/httpPact/index.js +92 -149
  105. package/src/httpPact/index.js.map +1 -1
  106. package/src/httpPact/index.spec.js +75 -125
  107. package/src/httpPact/index.spec.js.map +1 -1
  108. package/src/httpPact/tracing.js +20 -28
  109. package/src/httpPact/tracing.js.map +1 -1
  110. package/src/index.js +1 -1
  111. package/src/index.js.map +1 -1
  112. package/src/messageConsumerPact.d.ts +3 -3
  113. package/src/messageConsumerPact.js +50 -51
  114. package/src/messageConsumerPact.js.map +1 -1
  115. package/src/messageConsumerPact.spec.js +50 -49
  116. package/src/messageConsumerPact.spec.js.map +1 -1
  117. package/src/messageProviderPact.d.ts +3 -3
  118. package/src/messageProviderPact.js +68 -85
  119. package/src/messageProviderPact.js.map +1 -1
  120. package/src/messageProviderPact.spec.js +75 -66
  121. package/src/messageProviderPact.spec.js.map +1 -1
  122. package/src/pact.integration.spec.js +243 -313
  123. package/src/pact.integration.spec.js.map +1 -1
  124. package/src/v3/display.d.ts +1 -1
  125. package/src/v3/display.js +44 -58
  126. package/src/v3/display.js.map +1 -1
  127. package/src/v3/ffi.js +15 -15
  128. package/src/v3/ffi.js.map +1 -1
  129. package/src/v3/ffi.spec.js +8 -8
  130. package/src/v3/ffi.spec.js.map +1 -1
  131. package/src/v3/graphql/graphQL.d.ts +4 -4
  132. package/src/v3/graphql/graphQL.js +50 -75
  133. package/src/v3/graphql/graphQL.js.map +1 -1
  134. package/src/v3/matchers.d.ts +2 -2
  135. package/src/v3/matchers.js +112 -147
  136. package/src/v3/matchers.js.map +1 -1
  137. package/src/v3/matchers.spec.js +168 -187
  138. package/src/v3/matchers.spec.js.map +1 -1
  139. package/src/v3/pact.d.ts +2 -2
  140. package/src/v3/pact.js +103 -151
  141. package/src/v3/pact.js.map +1 -1
  142. package/src/v3/types.d.ts +1 -1
  143. package/src/v3/xml/xmlBuilder.d.ts +1 -3
  144. package/src/v3/xml/xmlBuilder.js +7 -9
  145. package/src/v3/xml/xmlBuilder.js.map +1 -1
  146. package/src/v3/xml/xmlElement.d.ts +2 -2
  147. package/src/v3/xml/xmlElement.js +24 -41
  148. package/src/v3/xml/xmlElement.js.map +1 -1
  149. package/src/v3/xml/xmlElement.spec.js +23 -25
  150. package/src/v3/xml/xmlElement.spec.js.map +1 -1
  151. package/src/v3/xml/xmlNode.js +2 -5
  152. package/src/v3/xml/xmlNode.js.map +1 -1
  153. package/src/v3/xml/xmlText.d.ts +1 -1
  154. package/src/v3/xml/xmlText.js +9 -25
  155. package/src/v3/xml/xmlText.js.map +1 -1
  156. package/src/v4/graphql/graphQLInteractionWithRequest.d.ts +4 -4
  157. package/src/v4/graphql/graphQLInteractionWithRequest.js +21 -17
  158. package/src/v4/graphql/graphQLInteractionWithRequest.js.map +1 -1
  159. package/src/v4/graphql/graphQLRequestBuilder.d.ts +3 -3
  160. package/src/v4/graphql/graphQLRequestBuilder.js +18 -20
  161. package/src/v4/graphql/graphQLRequestBuilder.js.map +1 -1
  162. package/src/v4/graphql/index.d.ts +6 -6
  163. package/src/v4/graphql/index.js +21 -17
  164. package/src/v4/graphql/index.js.map +1 -1
  165. package/src/v4/graphql/types.d.ts +5 -5
  166. package/src/v4/http/index.d.ts +2 -2
  167. package/src/v4/http/index.js +48 -93
  168. package/src/v4/http/index.js.map +1 -1
  169. package/src/v4/http/interactionWithCompleteRequest.d.ts +4 -7
  170. package/src/v4/http/interactionWithCompleteRequest.js +6 -10
  171. package/src/v4/http/interactionWithCompleteRequest.js.map +1 -1
  172. package/src/v4/http/interactionWithPlugin.d.ts +3 -3
  173. package/src/v4/http/interactionWithPlugin.js +14 -11
  174. package/src/v4/http/interactionWithPlugin.js.map +1 -1
  175. package/src/v4/http/interactionWithPluginRequest.d.ts +2 -2
  176. package/src/v4/http/interactionWithPluginRequest.js +11 -8
  177. package/src/v4/http/interactionWithPluginRequest.js.map +1 -1
  178. package/src/v4/http/interactionWithPluginResponse.d.ts +2 -2
  179. package/src/v4/http/interactionWithPluginResponse.js +10 -48
  180. package/src/v4/http/interactionWithPluginResponse.js.map +1 -1
  181. package/src/v4/http/interactionWithRequest.d.ts +2 -2
  182. package/src/v4/http/interactionWithRequest.js +11 -8
  183. package/src/v4/http/interactionWithRequest.js.map +1 -1
  184. package/src/v4/http/interactionWithResponse.d.ts +2 -2
  185. package/src/v4/http/interactionWithResponse.js +10 -48
  186. package/src/v4/http/interactionWithResponse.js.map +1 -1
  187. package/src/v4/http/requestBuilder.d.ts +3 -3
  188. package/src/v4/http/requestBuilder.js +32 -34
  189. package/src/v4/http/requestBuilder.js.map +1 -1
  190. package/src/v4/http/requestWithPluginBuilder.d.ts +2 -2
  191. package/src/v4/http/requestWithPluginBuilder.js +26 -46
  192. package/src/v4/http/requestWithPluginBuilder.js.map +1 -1
  193. package/src/v4/http/responseBuilder.d.ts +3 -3
  194. package/src/v4/http/responseBuilder.js +24 -25
  195. package/src/v4/http/responseBuilder.js.map +1 -1
  196. package/src/v4/http/responseWithPluginBuilder.d.ts +1 -1
  197. package/src/v4/http/responseWithPluginBuilder.js +5 -25
  198. package/src/v4/http/responseWithPluginBuilder.js.map +1 -1
  199. package/src/v4/http/types.d.ts +3 -2
  200. package/src/v4/http/unconfiguredInteraction.d.ts +6 -5
  201. package/src/v4/http/unconfiguredInteraction.js +31 -26
  202. package/src/v4/http/unconfiguredInteraction.js.map +1 -1
  203. package/src/v4/index.d.ts +4 -4
  204. package/src/v4/index.js +31 -35
  205. package/src/v4/index.js.map +1 -1
  206. package/src/v4/message/asynchronousMessage.d.ts +7 -6
  207. package/src/v4/message/asynchronousMessage.js +157 -190
  208. package/src/v4/message/asynchronousMessage.js.map +1 -1
  209. package/src/v4/message/index.d.ts +7 -6
  210. package/src/v4/message/index.js +188 -217
  211. package/src/v4/message/index.js.map +1 -1
  212. package/src/v4/message/types.d.ts +5 -3
  213. package/src/v4/types.d.ts +3 -3
@@ -1,9 +1,9 @@
1
- import { Metadata } from '../../dsl/message';
2
- import { AnyJson, JsonMap } from '../../common/jsonTypes';
3
- import { PluginConfig, SynchronousMessage, AsynchronousMessage as ConcreteMessage, TransportConfig, V4MessageRequestBuilderFunc, V4MessageResponseBuilderFunc, V4SynchronousMessageWithPlugin, V4SynchronousMessageWithPluginContents, V4SynchronousMessageWithRequest, V4SynchronousMessageWithRequestBuilder, V4SynchronousMessageWithResponse, V4SynchronousMessageWithResponseBuilder, V4SynchronousMessageWithTransport, V4UnconfiguredSynchronousMessage, Comment, CustomComment } from './types';
4
- import { SynchronousMessage as PactCoreSynchronousMessage, ConsumerPact } from '@pact-foundation/pact-core';
5
- import { PactV4Options } from '../http/types';
6
- import { Rules } from '../../v3/types';
1
+ import type { Metadata } from '../../dsl/message';
2
+ import type { AnyJson, JsonMap } from '../../common/jsonTypes';
3
+ import type { PluginConfig, SynchronousMessage, AsynchronousMessage as ConcreteMessage, TransportConfig, V4MessageRequestBuilderFunc, V4MessageResponseBuilderFunc, V4SynchronousMessageWithPlugin, V4SynchronousMessageWithPluginContents, V4SynchronousMessageWithRequest, V4SynchronousMessageWithRequestBuilder, V4SynchronousMessageWithResponse, V4SynchronousMessageWithResponseBuilder, V4SynchronousMessageWithTransport, V4UnconfiguredSynchronousMessage, Comment, CustomComment } from './types';
4
+ import type { SynchronousMessage as PactCoreSynchronousMessage, ConsumerPact } from '@pact-foundation/pact-core';
5
+ import type { PactV4Options } from '../http/types';
6
+ import type { Rules } from '../../v3/types';
7
7
  export declare class UnconfiguredSynchronousMessage implements V4UnconfiguredSynchronousMessage {
8
8
  protected pact: ConsumerPact;
9
9
  protected interaction: PactCoreSynchronousMessage;
@@ -14,6 +14,7 @@ export declare class UnconfiguredSynchronousMessage implements V4UnconfiguredSyn
14
14
  pending(pending?: boolean): V4UnconfiguredSynchronousMessage;
15
15
  comment(comment: Comment | CustomComment): V4UnconfiguredSynchronousMessage;
16
16
  testName(name: string): V4UnconfiguredSynchronousMessage;
17
+ reference(group: string, name: string, value: string): V4UnconfiguredSynchronousMessage;
17
18
  usingPlugin(config: PluginConfig): V4SynchronousMessageWithPlugin;
18
19
  withRequest(builder: V4MessageRequestBuilderFunc): V4SynchronousMessageWithRequest;
19
20
  }
@@ -1,40 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
39
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
40
4
  };
@@ -42,20 +6,24 @@ Object.defineProperty(exports, "__esModule", { value: true });
42
6
  exports.SynchronousMessageWithResponse = exports.SynchronousMessageWithTransport = exports.SynchronousMessageWithPluginContents = exports.SynchronousMessageWithResponseBuilder = exports.SynchronousMessageWithRequest = exports.SynchronousMessageWithRequestBuilder = exports.SynchronousMessageWithPlugin = exports.UnconfiguredSynchronousMessage = void 0;
43
7
  exports.v4SynchronousBodyHandler = v4SynchronousBodyHandler;
44
8
  exports.v4AsynchronousBodyHandler = v4AsynchronousBodyHandler;
45
- var ramda_1 = require("ramda");
46
- var configurationError_1 = __importDefault(require("../../errors/configurationError"));
47
- var display_1 = require("../../v3/display");
48
- var matchingRules_1 = require("../../common/matchingRules");
49
- var logger_1 = __importDefault(require("../../common/logger"));
50
- var defaultPactDir = './pacts';
51
- var UnconfiguredSynchronousMessage = /** @class */ (function () {
52
- function UnconfiguredSynchronousMessage(pact, interaction, opts, cleanupFn) {
9
+ const ramda_1 = require("ramda");
10
+ const configurationError_1 = __importDefault(require("../../errors/configurationError"));
11
+ const display_1 = require("../../v3/display");
12
+ const matchingRules_1 = require("../../common/matchingRules");
13
+ const logger_1 = __importDefault(require("../../common/logger"));
14
+ const defaultPactDir = './pacts';
15
+ class UnconfiguredSynchronousMessage {
16
+ pact;
17
+ interaction;
18
+ opts;
19
+ cleanupFn;
20
+ constructor(pact, interaction, opts, cleanupFn) {
53
21
  this.pact = pact;
54
22
  this.interaction = interaction;
55
23
  this.opts = opts;
56
24
  this.cleanupFn = cleanupFn;
57
25
  }
58
- UnconfiguredSynchronousMessage.prototype.given = function (state, parameters) {
26
+ given(state, parameters) {
59
27
  if (parameters) {
60
28
  this.interaction.givenWithParams(state, JSON.stringify(parameters));
61
29
  }
@@ -63,149 +31,169 @@ var UnconfiguredSynchronousMessage = /** @class */ (function () {
63
31
  this.interaction.given(state);
64
32
  }
65
33
  return this;
66
- };
67
- UnconfiguredSynchronousMessage.prototype.pending = function (pending) {
68
- if (pending === void 0) { pending = true; }
34
+ }
35
+ pending(pending = true) {
69
36
  this.interaction.setPending(pending);
70
37
  return this;
71
- };
72
- UnconfiguredSynchronousMessage.prototype.comment = function (comment) {
38
+ }
39
+ comment(comment) {
73
40
  if (typeof comment === 'string') {
74
41
  this.interaction.addTextComment(comment);
75
42
  return this;
76
43
  }
77
44
  this.interaction.setComment(comment.key, comment.value);
78
45
  return this;
79
- };
80
- UnconfiguredSynchronousMessage.prototype.testName = function (name) {
46
+ }
47
+ testName(name) {
81
48
  this.interaction.setInteractionTestName(name);
82
49
  return this;
83
- };
84
- UnconfiguredSynchronousMessage.prototype.usingPlugin = function (config) {
50
+ }
51
+ reference(group, name, value) {
52
+ this.interaction.addInteractionReference(group, name, value);
53
+ return this;
54
+ }
55
+ usingPlugin(config) {
85
56
  this.pact.addPlugin(config.plugin, config.version);
86
57
  return new SynchronousMessageWithPlugin(this.pact, this.interaction, this.opts, this.cleanupFn);
87
- };
88
- UnconfiguredSynchronousMessage.prototype.withRequest = function (builder) {
58
+ }
59
+ withRequest(builder) {
89
60
  builder(new SynchronousMessageWithRequestBuilder(this.pact, this.interaction, this.opts));
90
61
  return new SynchronousMessageWithRequest(this.pact, this.interaction, this.opts, this.cleanupFn);
91
- };
92
- return UnconfiguredSynchronousMessage;
93
- }());
62
+ }
63
+ }
94
64
  exports.UnconfiguredSynchronousMessage = UnconfiguredSynchronousMessage;
95
- var SynchronousMessageWithPlugin = /** @class */ (function () {
96
- function SynchronousMessageWithPlugin(pact, interaction, opts, cleanupFn) {
65
+ class SynchronousMessageWithPlugin {
66
+ pact;
67
+ interaction;
68
+ opts;
69
+ cleanupFn;
70
+ constructor(pact, interaction, opts, cleanupFn) {
97
71
  this.pact = pact;
98
72
  this.interaction = interaction;
99
73
  this.opts = opts;
100
74
  this.cleanupFn = cleanupFn;
101
75
  }
102
- SynchronousMessageWithPlugin.prototype.usingPlugin = function (config) {
76
+ usingPlugin(config) {
103
77
  this.pact.addPlugin(config.plugin, config.version);
104
78
  return this;
105
- };
106
- SynchronousMessageWithPlugin.prototype.withPluginContents = function (contents, contentType) {
79
+ }
80
+ withPluginContents(contents, contentType) {
107
81
  this.interaction.withPluginRequestResponseInteractionContents(contentType, contents);
108
82
  return new SynchronousMessageWithPluginContents(this.pact, this.interaction, this.opts, this.cleanupFn);
109
- };
110
- return SynchronousMessageWithPlugin;
111
- }());
83
+ }
84
+ }
112
85
  exports.SynchronousMessageWithPlugin = SynchronousMessageWithPlugin;
113
- var SynchronousMessageWithRequestBuilder = /** @class */ (function () {
114
- function SynchronousMessageWithRequestBuilder(pact, interaction, opts) {
86
+ class SynchronousMessageWithRequestBuilder {
87
+ pact;
88
+ interaction;
89
+ opts;
90
+ constructor(pact, interaction, opts) {
115
91
  this.pact = pact;
116
92
  this.interaction = interaction;
117
93
  this.opts = opts;
118
94
  }
119
- SynchronousMessageWithRequestBuilder.prototype.withContent = function (contentType, body) {
95
+ withContent(contentType, body) {
120
96
  this.interaction.withRequestBinaryContents(body, contentType);
121
97
  return this;
122
- };
123
- SynchronousMessageWithRequestBuilder.prototype.withJSONContent = function (content) {
98
+ }
99
+ withJSONContent(content) {
124
100
  if ((0, ramda_1.isEmpty)(content)) {
125
101
  throw new configurationError_1.default('You must provide a valid JSON document or primitive for the Message.');
126
102
  }
127
103
  this.interaction.withRequestContents(JSON.stringify(content), 'application/json');
128
104
  return this;
129
- };
130
- SynchronousMessageWithRequestBuilder.prototype.withMatchingRules = function (rules) {
105
+ }
106
+ withMatchingRules(rules) {
131
107
  (0, matchingRules_1.validateRules)(rules);
132
- var ffiRules = (0, matchingRules_1.convertRulesToFFI)(rules);
108
+ const ffiRules = (0, matchingRules_1.convertRulesToFFI)(rules);
133
109
  this.interaction.withRequestMatchingRules(JSON.stringify(ffiRules));
134
110
  return this;
135
- };
136
- return SynchronousMessageWithRequestBuilder;
137
- }());
111
+ }
112
+ }
138
113
  exports.SynchronousMessageWithRequestBuilder = SynchronousMessageWithRequestBuilder;
139
- var SynchronousMessageWithRequest = /** @class */ (function () {
140
- function SynchronousMessageWithRequest(pact, interaction, opts, cleanupFn) {
114
+ class SynchronousMessageWithRequest {
115
+ pact;
116
+ interaction;
117
+ opts;
118
+ cleanupFn;
119
+ constructor(pact, interaction, opts, cleanupFn) {
141
120
  this.pact = pact;
142
121
  this.interaction = interaction;
143
122
  this.opts = opts;
144
123
  this.cleanupFn = cleanupFn;
145
124
  }
146
- SynchronousMessageWithRequest.prototype.withResponse = function (builder) {
125
+ withResponse(builder) {
147
126
  builder(new SynchronousMessageWithResponseBuilder(this.pact, this.interaction, this.opts));
148
127
  return new SynchronousMessageWithResponse(this.pact, this.interaction, this.opts, this.cleanupFn);
149
- };
150
- return SynchronousMessageWithRequest;
151
- }());
128
+ }
129
+ }
152
130
  exports.SynchronousMessageWithRequest = SynchronousMessageWithRequest;
153
- var SynchronousMessageWithResponseBuilder = /** @class */ (function () {
154
- function SynchronousMessageWithResponseBuilder(pact, interaction, opts) {
131
+ class SynchronousMessageWithResponseBuilder {
132
+ pact;
133
+ interaction;
134
+ opts;
135
+ constructor(pact, interaction, opts) {
155
136
  this.pact = pact;
156
137
  this.interaction = interaction;
157
138
  this.opts = opts;
158
139
  }
159
- SynchronousMessageWithResponseBuilder.prototype.withMetadata = function (metadata) {
160
- var _this = this;
140
+ withMetadata(metadata) {
161
141
  if ((0, ramda_1.isEmpty)(metadata)) {
162
142
  throw new configurationError_1.default('You must provide valid metadata for the Message, or none at all');
163
143
  }
164
- (0, ramda_1.forEachObjIndexed)(function (v, k) {
165
- _this.interaction.withMetadata("".concat(k), JSON.stringify(v));
144
+ (0, ramda_1.forEachObjIndexed)((v, k) => {
145
+ this.interaction.withMetadata(`${k}`, JSON.stringify(v));
166
146
  }, metadata);
167
147
  return this;
168
- };
169
- SynchronousMessageWithResponseBuilder.prototype.withContent = function (contentType, body) {
148
+ }
149
+ withContent(contentType, body) {
170
150
  this.interaction.withResponseBinaryContents(body, contentType);
171
151
  return this;
172
- };
173
- SynchronousMessageWithResponseBuilder.prototype.withJSONContent = function (content) {
152
+ }
153
+ withJSONContent(content) {
174
154
  if ((0, ramda_1.isEmpty)(content)) {
175
155
  throw new configurationError_1.default('You must provide a valid JSON document or primitive for the Message.');
176
156
  }
177
157
  this.interaction.withResponseContents(JSON.stringify(content), 'application/json');
178
158
  return this;
179
- };
180
- SynchronousMessageWithResponseBuilder.prototype.withMatchingRules = function (rules) {
159
+ }
160
+ withMatchingRules(rules) {
181
161
  (0, matchingRules_1.validateRules)(rules);
182
- var ffiRules = (0, matchingRules_1.convertRulesToFFI)(rules);
162
+ const ffiRules = (0, matchingRules_1.convertRulesToFFI)(rules);
183
163
  this.interaction.withResponseMatchingRules(JSON.stringify(ffiRules));
184
164
  return this;
185
- };
186
- return SynchronousMessageWithResponseBuilder;
187
- }());
165
+ }
166
+ }
188
167
  exports.SynchronousMessageWithResponseBuilder = SynchronousMessageWithResponseBuilder;
189
- var SynchronousMessageWithPluginContents = /** @class */ (function () {
190
- function SynchronousMessageWithPluginContents(pact, interaction, opts, cleanupFn) {
168
+ class SynchronousMessageWithPluginContents {
169
+ pact;
170
+ interaction;
171
+ opts;
172
+ cleanupFn;
173
+ constructor(pact, interaction, opts, cleanupFn) {
191
174
  this.pact = pact;
192
175
  this.interaction = interaction;
193
176
  this.opts = opts;
194
177
  this.cleanupFn = cleanupFn;
195
178
  }
196
- SynchronousMessageWithPluginContents.prototype.executeTest = function (integrationTest) {
179
+ executeTest(integrationTest) {
197
180
  return executeNonTransportTest(this.pact, this.opts, this.interaction, integrationTest, this.cleanupFn);
198
- };
199
- SynchronousMessageWithPluginContents.prototype.startTransport = function (transport, address, // IP Address or hostname
181
+ }
182
+ startTransport(transport, address, // IP Address or hostname
200
183
  config) {
201
- var port = this.pact.pactffiCreateMockServerForTransport(address, transport, config ? JSON.stringify(config) : '');
184
+ const port = this.pact.pactffiCreateMockServerForTransport(address, transport, config ? JSON.stringify(config) : '');
202
185
  return new SynchronousMessageWithTransport(this.pact, this.interaction, this.opts, port, address, this.cleanupFn);
203
- };
204
- return SynchronousMessageWithPluginContents;
205
- }());
186
+ }
187
+ }
206
188
  exports.SynchronousMessageWithPluginContents = SynchronousMessageWithPluginContents;
207
- var SynchronousMessageWithTransport = /** @class */ (function () {
208
- function SynchronousMessageWithTransport(pact, interaction, opts, port, address, cleanupFn) {
189
+ class SynchronousMessageWithTransport {
190
+ pact;
191
+ interaction;
192
+ opts;
193
+ port;
194
+ address;
195
+ cleanupFn;
196
+ constructor(pact, interaction, opts, port, address, cleanupFn) {
209
197
  this.pact = pact;
210
198
  this.interaction = interaction;
211
199
  this.opts = opts;
@@ -215,82 +203,73 @@ var SynchronousMessageWithTransport = /** @class */ (function () {
215
203
  }
216
204
  // TODO: this is basically the same as the HTTP variant, except only with a different test function wrapper
217
205
  // extract these into smaller, testable chunks and re-use them
218
- SynchronousMessageWithTransport.prototype.executeTest = function (integrationTest) {
219
- return __awaiter(this, void 0, void 0, function () {
220
- var val, error, request, response, e_1, matchingResults, errors, success, errorMessage;
221
- return __generator(this, function (_a) {
222
- switch (_a.label) {
223
- case 0:
224
- _a.trys.push([0, 2, , 3]);
225
- request = this.interaction.getRequestContents();
226
- response = this.interaction.getResponseContents();
227
- return [4 /*yield*/, integrationTest({ port: this.port, address: this.address }, {
228
- Request: {
229
- content: request,
230
- },
231
- Response: response.map(function (c) { return ({
232
- content: c,
233
- }); }),
234
- })];
235
- case 1:
236
- val = _a.sent();
237
- return [3 /*break*/, 3];
238
- case 2:
239
- e_1 = _a.sent();
240
- error = e_1;
241
- return [3 /*break*/, 3];
242
- case 3:
243
- matchingResults = this.pact.mockServerMismatches(this.port);
244
- errors = (0, display_1.filterMissingFeatureFlag)(matchingResults);
245
- success = this.pact.mockServerMatchedSuccessfully(this.port);
246
- // Scenario: Pact validation failed
247
- if (!success && errors.length > 0) {
248
- errorMessage = 'Test failed for the following reasons:';
249
- errorMessage += "\n\n ".concat((0, display_1.generateMockServerError)(matchingResults, '\t'));
250
- cleanup(false, this.pact, this.opts, this.cleanupFn, this.port, true);
251
- // If the tests throws an error, we need to rethrow the error, but print out
252
- // any additional mock server errors to help the user understand what happened
253
- // (The proximate cause here is often the HTTP 500 from the mock server,
254
- // where the HTTP client then throws)
255
- if (error) {
256
- logger_1.default.error(errorMessage);
257
- throw error;
258
- }
259
- // Test didn't throw, so we need to ensure the test fails
260
- return [2 /*return*/, Promise.reject(new Error(errorMessage))];
261
- }
262
- // Scenario: test threw an error, but Pact validation was OK (error in client or test)
263
- if (error) {
264
- cleanup(false, this.pact, this.opts, this.cleanupFn, this.port, true);
265
- throw error;
266
- }
267
- // Scenario: Pact validation passed, test didn't throw - return the callback value
268
- cleanup(true, this.pact, this.opts, this.cleanupFn, this.port, true);
269
- return [2 /*return*/, val];
270
- }
206
+ async executeTest(integrationTest) {
207
+ let val;
208
+ let error;
209
+ try {
210
+ const request = this.interaction.getRequestContents();
211
+ const response = this.interaction.getResponseContents();
212
+ val = await integrationTest({ port: this.port, address: this.address }, {
213
+ Request: {
214
+ content: request,
215
+ },
216
+ Response: response.map((c) => ({
217
+ content: c,
218
+ })),
271
219
  });
272
- });
273
- };
274
- return SynchronousMessageWithTransport;
275
- }());
220
+ }
221
+ catch (e) {
222
+ error = e instanceof Error ? e : new Error(String(e));
223
+ }
224
+ const matchingResults = this.pact.mockServerMismatches(this.port);
225
+ const errors = (0, display_1.filterMissingFeatureFlag)(matchingResults);
226
+ const success = this.pact.mockServerMatchedSuccessfully(this.port);
227
+ // Scenario: Pact validation failed
228
+ if (!success && errors.length > 0) {
229
+ let errorMessage = 'Test failed for the following reasons:';
230
+ errorMessage += `\n\n ${(0, display_1.generateMockServerError)(matchingResults, '\t')}`;
231
+ cleanup(false, this.pact, this.opts, this.cleanupFn, this.port, true);
232
+ // If the tests throws an error, we need to rethrow the error, but print out
233
+ // any additional mock server errors to help the user understand what happened
234
+ // (The proximate cause here is often the HTTP 500 from the mock server,
235
+ // where the HTTP client then throws)
236
+ if (error) {
237
+ logger_1.default.error(errorMessage);
238
+ throw error;
239
+ }
240
+ // Test didn't throw, so we need to ensure the test fails
241
+ return Promise.reject(new Error(errorMessage));
242
+ }
243
+ // Scenario: test threw an error, but Pact validation was OK (error in client or test)
244
+ if (error) {
245
+ cleanup(false, this.pact, this.opts, this.cleanupFn, this.port, true);
246
+ throw error;
247
+ }
248
+ // Scenario: Pact validation passed, test didn't throw - return the callback value
249
+ cleanup(true, this.pact, this.opts, this.cleanupFn, this.port, true);
250
+ return val;
251
+ }
252
+ }
276
253
  exports.SynchronousMessageWithTransport = SynchronousMessageWithTransport;
277
- var SynchronousMessageWithResponse = /** @class */ (function () {
278
- function SynchronousMessageWithResponse(pact, interaction, opts, cleanupFn) {
254
+ class SynchronousMessageWithResponse {
255
+ pact;
256
+ interaction;
257
+ opts;
258
+ cleanupFn;
259
+ constructor(pact, interaction, opts, cleanupFn) {
279
260
  this.pact = pact;
280
261
  this.interaction = interaction;
281
262
  this.opts = opts;
282
263
  this.cleanupFn = cleanupFn;
283
264
  }
284
- SynchronousMessageWithResponse.prototype.executeTest = function (integrationTest) {
285
- var res = executeNonTransportTest(this.pact, this.opts, this.interaction, integrationTest, this.cleanupFn);
265
+ executeTest(integrationTest) {
266
+ const res = executeNonTransportTest(this.pact, this.opts, this.interaction, integrationTest, this.cleanupFn);
286
267
  this.cleanupFn();
287
268
  return res;
288
- };
289
- return SynchronousMessageWithResponse;
290
- }());
269
+ }
270
+ }
291
271
  exports.SynchronousMessageWithResponse = SynchronousMessageWithResponse;
292
- var cleanup = function (success, pact, opts, cleanupFn, port, transport) {
293
- if (transport === void 0) { transport = false; }
272
+ const cleanup = (success, pact, opts, cleanupFn, port, transport = false) => {
294
273
  if (success) {
295
274
  if (transport && port) {
296
275
  pact.writePactFileForPluginServer(port, opts.dir || defaultPactDir, true);
@@ -305,49 +284,41 @@ var cleanup = function (success, pact, opts, cleanupFn, port, transport) {
305
284
  pact.cleanupPlugins();
306
285
  cleanupFn();
307
286
  };
308
- var executeNonTransportTest = function (pact, opts, interaction, integrationTest, cleanupFn) { return __awaiter(void 0, void 0, void 0, function () {
309
- var val, error, request, response, e_2;
310
- return __generator(this, function (_a) {
311
- switch (_a.label) {
312
- case 0:
313
- _a.trys.push([0, 2, , 3]);
314
- request = interaction.getRequestContents();
315
- response = interaction.getResponseContents();
316
- return [4 /*yield*/, integrationTest({
317
- Request: {
318
- content: request,
319
- },
320
- Response: response.map(function (c) { return ({
321
- content: c,
322
- }); }),
323
- })];
324
- case 1:
325
- val = _a.sent();
326
- return [3 /*break*/, 3];
327
- case 2:
328
- e_2 = _a.sent();
329
- error = e_2;
330
- return [3 /*break*/, 3];
331
- case 3:
332
- // Scenario: test threw an error, but Pact validation was OK (error in client or test)
333
- if (error) {
334
- cleanup(false, pact, opts, cleanupFn);
335
- throw error;
336
- }
337
- // Scenario: Pact validation passed, test didn't throw - return the callback value
338
- cleanup(true, pact, opts, cleanupFn);
339
- return [2 /*return*/, val];
340
- }
341
- });
342
- }); };
287
+ const executeNonTransportTest = async (pact, opts, interaction, integrationTest, cleanupFn) => {
288
+ let val;
289
+ let error;
290
+ try {
291
+ const request = interaction.getRequestContents();
292
+ const response = interaction.getResponseContents();
293
+ val = await integrationTest({
294
+ Request: {
295
+ content: request,
296
+ },
297
+ Response: response.map((c) => ({
298
+ content: c,
299
+ })),
300
+ });
301
+ }
302
+ catch (e) {
303
+ error = e instanceof Error ? e : new Error(String(e));
304
+ }
305
+ // Scenario: test threw an error, but Pact validation was OK (error in client or test)
306
+ if (error) {
307
+ cleanup(false, pact, opts, cleanupFn);
308
+ throw error;
309
+ }
310
+ // Scenario: Pact validation passed, test didn't throw - return the callback value
311
+ cleanup(true, pact, opts, cleanupFn);
312
+ return val;
313
+ };
343
314
  // bodyHandler takes a synchronous function and returns
344
315
  // a wrapped function that accepts a Message and returns a Promise
345
316
  function v4SynchronousBodyHandler(handler) {
346
- return function (m) {
347
- var body = m.contents.content;
348
- return new Promise(function (resolve, reject) {
317
+ return (m) => {
318
+ const body = m.contents.content;
319
+ return new Promise((resolve, reject) => {
349
320
  try {
350
- var res = handler(body);
321
+ const res = handler(body);
351
322
  resolve(res);
352
323
  }
353
324
  catch (e) {
@@ -359,6 +330,6 @@ function v4SynchronousBodyHandler(handler) {
359
330
  // bodyHandler takes an asynchronous (promisified) function and returns
360
331
  // a wrapped function that accepts a Message and returns a Promise
361
332
  function v4AsynchronousBodyHandler(handler) {
362
- return function (m) { return handler(m.contents.content); };
333
+ return (m) => handler(m.contents.content);
363
334
  }
364
335
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v4/message/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v4/message/index.ts"],"names":[],"mappings":"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"}