@pact-foundation/pact 16.4.0 → 17.0.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 (205) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/README.md +41 -12
  3. package/package.json +19 -31
  4. package/scripts/ci/build-and-test.sh +0 -3
  5. package/scripts/install-plugins.js +104 -0
  6. package/src/common/graphQL/graphQL.js +1 -1
  7. package/src/common/graphQL/graphQL.js.map +1 -1
  8. package/src/common/matchingRules.d.ts +7 -1
  9. package/src/common/matchingRules.js +21 -1
  10. package/src/common/matchingRules.js.map +1 -1
  11. package/src/common/net.spec.js +27 -63
  12. package/src/common/net.spec.js.map +1 -1
  13. package/src/common/request.js +1 -1
  14. package/src/common/request.js.map +1 -1
  15. package/src/common/request.spec.js +14 -58
  16. package/src/common/request.spec.js.map +1 -1
  17. package/src/dsl/apolloGraphql.spec.js +3 -43
  18. package/src/dsl/apolloGraphql.spec.js.map +1 -1
  19. package/src/dsl/graphql.d.ts +1 -1
  20. package/src/dsl/graphql.js +4 -4
  21. package/src/dsl/graphql.js.map +1 -1
  22. package/src/dsl/graphql.spec.js +22 -62
  23. package/src/dsl/graphql.spec.js.map +1 -1
  24. package/src/dsl/interaction.d.ts +2 -2
  25. package/src/dsl/interaction.js +1 -1
  26. package/src/dsl/interaction.js.map +1 -1
  27. package/src/dsl/interaction.spec.js +40 -70
  28. package/src/dsl/interaction.spec.js.map +1 -1
  29. package/src/dsl/matchers.d.ts +1 -2
  30. package/src/dsl/matchers.js.map +1 -1
  31. package/src/dsl/matchers.spec.js +95 -96
  32. package/src/dsl/matchers.spec.js.map +1 -1
  33. package/src/dsl/message.d.ts +1 -1
  34. package/src/dsl/options.d.ts +1 -1
  35. package/src/dsl/verifier/proxy/hooks.spec.js +16 -14
  36. package/src/dsl/verifier/proxy/hooks.spec.js.map +1 -1
  37. package/src/dsl/verifier/proxy/messages.js +1 -1
  38. package/src/dsl/verifier/proxy/messages.js.map +1 -1
  39. package/src/dsl/verifier/proxy/parseBody.js +1 -1
  40. package/src/dsl/verifier/proxy/parseBody.js.map +1 -1
  41. package/src/dsl/verifier/proxy/parseBody.spec.js +14 -47
  42. package/src/dsl/verifier/proxy/parseBody.spec.js.map +1 -1
  43. package/src/dsl/verifier/proxy/proxy.js +4 -4
  44. package/src/dsl/verifier/proxy/proxy.js.map +1 -1
  45. package/src/dsl/verifier/proxy/proxy.spec.js +6 -48
  46. package/src/dsl/verifier/proxy/proxy.spec.js.map +1 -1
  47. package/src/dsl/verifier/proxy/proxyRequest.d.ts +1 -1
  48. package/src/dsl/verifier/proxy/proxyRequest.js +1 -1
  49. package/src/dsl/verifier/proxy/proxyRequest.js.map +1 -1
  50. package/src/dsl/verifier/proxy/proxyRequest.spec.js +18 -53
  51. package/src/dsl/verifier/proxy/proxyRequest.spec.js.map +1 -1
  52. package/src/dsl/verifier/proxy/stateHandler/setupStates.d.ts +1 -1
  53. package/src/dsl/verifier/proxy/stateHandler/setupStates.js.map +1 -1
  54. package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js +16 -50
  55. package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js.map +1 -1
  56. package/src/dsl/verifier/proxy/stateHandler/stateHandler.js +1 -1
  57. package/src/dsl/verifier/proxy/stateHandler/stateHandler.js.map +1 -1
  58. package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js +12 -49
  59. package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js.map +1 -1
  60. package/src/dsl/verifier/proxy/types.d.ts +2 -2
  61. package/src/dsl/verifier/verifier.d.ts +4 -0
  62. package/src/dsl/verifier/verifier.js +6 -6
  63. package/src/dsl/verifier/verifier.js.map +1 -1
  64. package/src/dsl/verifier/verifier.spec.js +46 -96
  65. package/src/dsl/verifier/verifier.spec.js.map +1 -1
  66. package/src/httpPact/ffi.d.ts +1 -1
  67. package/src/httpPact/ffi.js +1 -1
  68. package/src/httpPact/ffi.js.map +1 -1
  69. package/src/httpPact/ffi.spec.js +18 -60
  70. package/src/httpPact/ffi.spec.js.map +1 -1
  71. package/src/httpPact/index.d.ts +1 -1
  72. package/src/httpPact/index.js +7 -7
  73. package/src/httpPact/index.js.map +1 -1
  74. package/src/httpPact/index.spec.js +46 -89
  75. package/src/httpPact/index.spec.js.map +1 -1
  76. package/src/index.d.ts +25 -25
  77. package/src/index.js +28 -28
  78. package/src/index.js.map +1 -1
  79. package/src/messageConsumerPact.d.ts +3 -3
  80. package/src/messageConsumerPact.js +12 -5
  81. package/src/messageConsumerPact.js.map +1 -1
  82. package/src/messageConsumerPact.spec.js +15 -58
  83. package/src/messageConsumerPact.spec.js.map +1 -1
  84. package/src/messageProviderPact.js +3 -3
  85. package/src/messageProviderPact.js.map +1 -1
  86. package/src/messageProviderPact.spec.js +48 -84
  87. package/src/messageProviderPact.spec.js.map +1 -1
  88. package/src/pact.integration.spec.js +12 -51
  89. package/src/pact.integration.spec.js.map +1 -1
  90. package/src/v3/display.d.ts +1 -1
  91. package/src/v3/display.js.map +1 -1
  92. package/src/v3/ffi.js +5 -1
  93. package/src/v3/ffi.js.map +1 -1
  94. package/src/v3/ffi.spec.js +1 -36
  95. package/src/v3/ffi.spec.js.map +1 -1
  96. package/src/v3/graphql/graphQL.d.ts +2 -2
  97. package/src/v3/graphql/graphQL.js +2 -2
  98. package/src/v3/graphql/graphQL.js.map +1 -1
  99. package/src/v3/graphql/index.d.ts +1 -1
  100. package/src/v3/graphql/index.js +1 -1
  101. package/src/v3/graphql/index.js.map +1 -1
  102. package/src/v3/index.d.ts +4 -12
  103. package/src/v3/index.js +4 -12
  104. package/src/v3/index.js.map +1 -1
  105. package/src/v3/matchers.d.ts +14 -2
  106. package/src/v3/matchers.js +19 -1
  107. package/src/v3/matchers.js.map +1 -1
  108. package/src/v3/matchers.spec.js +125 -57
  109. package/src/v3/matchers.spec.js.map +1 -1
  110. package/src/v3/pact.js +10 -5
  111. package/src/v3/pact.js.map +1 -1
  112. package/src/v3/pact.spec.js +94 -0
  113. package/src/v3/pact.spec.js.map +1 -0
  114. package/src/v3/types.d.ts +18 -2
  115. package/src/v3/types.js +22 -1
  116. package/src/v3/types.js.map +1 -1
  117. package/src/v4/graphql/graphQLInteractionWithRequest.d.ts +2 -2
  118. package/src/v4/graphql/graphQLInteractionWithRequest.js +1 -1
  119. package/src/v4/graphql/graphQLInteractionWithRequest.js.map +1 -1
  120. package/src/v4/graphql/graphQLRequestBuilder.d.ts +1 -1
  121. package/src/v4/graphql/index.d.ts +3 -3
  122. package/src/v4/graphql/index.js +1 -1
  123. package/src/v4/graphql/index.js.map +1 -1
  124. package/src/v4/graphql/types.d.ts +1 -1
  125. package/src/v4/http/index.js +7 -2
  126. package/src/v4/http/index.js.map +1 -1
  127. package/src/v4/http/index.spec.d.ts +1 -0
  128. package/src/v4/http/index.spec.js +73 -0
  129. package/src/v4/http/index.spec.js.map +1 -0
  130. package/src/v4/http/interactionWithCompleteRequest.d.ts +2 -2
  131. package/src/v4/http/interactionWithPlugin.d.ts +2 -2
  132. package/src/v4/http/interactionWithPlugin.js +2 -2
  133. package/src/v4/http/interactionWithPlugin.js.map +1 -1
  134. package/src/v4/http/interactionWithPluginRequest.d.ts +4 -3
  135. package/src/v4/http/interactionWithPluginRequest.js +6 -1
  136. package/src/v4/http/interactionWithPluginRequest.js.map +1 -1
  137. package/src/v4/http/interactionWithPluginResponse.d.ts +1 -1
  138. package/src/v4/http/interactionWithRequest.d.ts +4 -3
  139. package/src/v4/http/interactionWithRequest.js +6 -1
  140. package/src/v4/http/interactionWithRequest.js.map +1 -1
  141. package/src/v4/http/interactionWithRequest.spec.d.ts +1 -0
  142. package/src/v4/http/interactionWithRequest.spec.js +82 -0
  143. package/src/v4/http/interactionWithRequest.spec.js.map +1 -0
  144. package/src/v4/http/interactionWithResponse.d.ts +1 -1
  145. package/src/v4/http/requestBuilder.d.ts +2 -1
  146. package/src/v4/http/requestBuilder.js +5 -1
  147. package/src/v4/http/requestBuilder.js.map +1 -1
  148. package/src/v4/http/requestBuilder.spec.d.ts +1 -0
  149. package/src/v4/http/requestBuilder.spec.js +42 -0
  150. package/src/v4/http/requestBuilder.spec.js.map +1 -0
  151. package/src/v4/http/requestWithPluginBuilder.d.ts +1 -0
  152. package/src/v4/http/requestWithPluginBuilder.js +4 -0
  153. package/src/v4/http/requestWithPluginBuilder.js.map +1 -1
  154. package/src/v4/http/requestWithPluginBuilder.spec.d.ts +1 -0
  155. package/src/v4/http/requestWithPluginBuilder.spec.js +34 -0
  156. package/src/v4/http/requestWithPluginBuilder.spec.js.map +1 -0
  157. package/src/v4/http/responseBuilder.d.ts +2 -1
  158. package/src/v4/http/responseBuilder.js +6 -2
  159. package/src/v4/http/responseBuilder.js.map +1 -1
  160. package/src/v4/http/responseBuilder.spec.d.ts +1 -0
  161. package/src/v4/http/responseBuilder.spec.js +42 -0
  162. package/src/v4/http/responseBuilder.spec.js.map +1 -0
  163. package/src/v4/http/responseWithPluginBuilder.d.ts +1 -1
  164. package/src/v4/http/responseWithPluginBuilder.spec.d.ts +1 -0
  165. package/src/v4/http/responseWithPluginBuilder.spec.js +34 -0
  166. package/src/v4/http/responseWithPluginBuilder.spec.js.map +1 -0
  167. package/src/v4/http/types.d.ts +11 -3
  168. package/src/v4/http/unconfiguredInteraction.d.ts +2 -2
  169. package/src/v4/http/unconfiguredInteraction.js +2 -2
  170. package/src/v4/http/unconfiguredInteraction.js.map +1 -1
  171. package/src/v4/index.d.ts +4 -3
  172. package/src/v4/index.js +3 -2
  173. package/src/v4/index.js.map +1 -1
  174. package/src/v4/message/asynchronousMessage.d.ts +4 -4
  175. package/src/v4/message/asynchronousMessage.js +2 -2
  176. package/src/v4/message/asynchronousMessage.js.map +1 -1
  177. package/src/v4/message/index.d.ts +4 -4
  178. package/src/v4/message/index.js +2 -2
  179. package/src/v4/message/index.js.map +1 -1
  180. package/src/v4/types.d.ts +1 -1
  181. package/src/xml/index.d.ts +4 -0
  182. package/src/xml/index.js +21 -0
  183. package/src/xml/index.js.map +1 -0
  184. package/src/xml/xmlBuilder.js.map +1 -0
  185. package/src/{v3/xml → xml}/xmlElement.d.ts +1 -1
  186. package/src/{v3/xml → xml}/xmlElement.js +1 -1
  187. package/src/xml/xmlElement.js.map +1 -0
  188. package/src/xml/xmlElement.spec.d.ts +1 -0
  189. package/src/{v3/xml → xml}/xmlElement.spec.js +41 -45
  190. package/src/xml/xmlElement.spec.js.map +1 -0
  191. package/src/xml/xmlNode.js.map +1 -0
  192. package/src/{v3/xml → xml}/xmlText.d.ts +1 -1
  193. package/src/xml/xmlText.js.map +1 -0
  194. package/scripts/install-plugins +0 -106
  195. package/src/v3/xml/xmlBuilder.js.map +0 -1
  196. package/src/v3/xml/xmlElement.js.map +0 -1
  197. package/src/v3/xml/xmlElement.spec.js.map +0 -1
  198. package/src/v3/xml/xmlNode.js.map +0 -1
  199. package/src/v3/xml/xmlText.js.map +0 -1
  200. /package/src/v3/{xml/xmlElement.spec.d.ts → pact.spec.d.ts} +0 -0
  201. /package/src/{v3/xml → xml}/xmlBuilder.d.ts +0 -0
  202. /package/src/{v3/xml → xml}/xmlBuilder.js +0 -0
  203. /package/src/{v3/xml → xml}/xmlNode.d.ts +0 -0
  204. /package/src/{v3/xml → xml}/xmlNode.js +0 -0
  205. /package/src/{v3/xml → xml}/xmlText.js +0 -0
package/src/index.js CHANGED
@@ -40,7 +40,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
40
40
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
41
41
  };
42
42
  Object.defineProperty(exports, "__esModule", { value: true });
43
- exports.providerWithMetadata = exports.MessageProviderPact = exports.PactV2 = exports.Matchers = exports.MatchersV2 = void 0;
43
+ exports.Matchers = exports.providerWithMetadata = exports.MessageProviderPact = exports.PactV2 = exports.MatchersV2 = void 0;
44
44
  /**
45
45
  * Exposes {@link Pact}
46
46
  * @memberof Pact
@@ -56,30 +56,23 @@ exports.providerWithMetadata = exports.MessageProviderPact = exports.PactV2 = ex
56
56
  const MatchersStar = __importStar(require("./dsl/matchers"));
57
57
  exports.MatchersV2 = MatchersStar;
58
58
  /**
59
- * Exposes {@link Matchers}
60
- * To avoid polluting the root module's namespace, re-export
61
- * Matchers as its own module
59
+ * Exposes {@link ApolloGraphQL}
62
60
  * @memberof Pact
63
61
  * @static
64
62
  */
65
- var v3_1 = require("./v3");
66
- Object.defineProperty(exports, "Matchers", { enumerable: true, get: function () { return v3_1.MatchersV3; } });
67
- var httpPact_1 = require("./httpPact");
68
- Object.defineProperty(exports, "PactV2", { enumerable: true, get: function () { return httpPact_1.Pact; } });
63
+ __exportStar(require("./dsl/apolloGraphql"), exports);
69
64
  /**
70
- * Exposes {@link MessageConsumerPact}
65
+ * Exposes {@link GraphQL}
71
66
  * @memberof Pact
72
67
  * @static
73
68
  */
74
- __exportStar(require("./messageConsumerPact"), exports);
69
+ __exportStar(require("./dsl/graphql"), exports);
75
70
  /**
76
- * Exposes {@link MessageProviderPact}
71
+ * Exposes {@link Interaction}
77
72
  * @memberof Pact
78
73
  * @static
79
74
  */
80
- var messageProviderPact_1 = require("./messageProviderPact");
81
- Object.defineProperty(exports, "MessageProviderPact", { enumerable: true, get: function () { return messageProviderPact_1.MessageProviderPact; } });
82
- Object.defineProperty(exports, "providerWithMetadata", { enumerable: true, get: function () { return messageProviderPact_1.providerWithMetadata; } });
75
+ __exportStar(require("./dsl/interaction"), exports);
83
76
  /**
84
77
  * Exposes {@link Message}
85
78
  * @memberof Pact
@@ -87,46 +80,53 @@ Object.defineProperty(exports, "providerWithMetadata", { enumerable: true, get:
87
80
  */
88
81
  __exportStar(require("./dsl/message"), exports);
89
82
  /**
90
- * Exposes {@link Verifier}
83
+ * Exposes {@link MockService}
91
84
  * @memberof Pact
92
85
  * @static
93
86
  */
94
- __exportStar(require("./dsl/verifier/verifier"), exports);
87
+ __exportStar(require("./dsl/mockService"), exports);
95
88
  /**
96
- * Exposes {@link GraphQL}
89
+ * Exposes {@link PactV2Options}
97
90
  * @memberof Pact
98
91
  * @static
99
92
  */
100
- __exportStar(require("./dsl/graphql"), exports);
93
+ __exportStar(require("./dsl/options"), exports);
101
94
  /**
102
- * Exposes {@link ApolloGraphQL}
95
+ * Exposes {@link Verifier}
103
96
  * @memberof Pact
104
97
  * @static
105
98
  */
106
- __exportStar(require("./dsl/apolloGraphql"), exports);
99
+ __exportStar(require("./dsl/verifier/verifier"), exports);
100
+ var httpPact_1 = require("./httpPact");
101
+ Object.defineProperty(exports, "PactV2", { enumerable: true, get: function () { return httpPact_1.Pact; } });
107
102
  /**
108
- * Exposes {@link Interaction}
103
+ * Exposes {@link MessageConsumerPact}
109
104
  * @memberof Pact
110
105
  * @static
111
106
  */
112
- __exportStar(require("./dsl/interaction"), exports);
107
+ __exportStar(require("./messageConsumerPact"), exports);
113
108
  /**
114
- * Exposes {@link MockService}
109
+ * Exposes {@link MessageProviderPact}
115
110
  * @memberof Pact
116
111
  * @static
117
112
  */
118
- __exportStar(require("./dsl/mockService"), exports);
113
+ var messageProviderPact_1 = require("./messageProviderPact");
114
+ Object.defineProperty(exports, "MessageProviderPact", { enumerable: true, get: function () { return messageProviderPact_1.MessageProviderPact; } });
115
+ Object.defineProperty(exports, "providerWithMetadata", { enumerable: true, get: function () { return messageProviderPact_1.providerWithMetadata; } });
119
116
  __exportStar(require("./v3"), exports);
120
117
  /**
121
- * Exposes {@link Pact}
118
+ * Exposes {@link Matchers}
119
+ * To avoid polluting the root module's namespace, re-export
120
+ * Matchers as its own module
122
121
  * @memberof Pact
123
122
  * @static
124
123
  */
125
- __exportStar(require("./v4"), exports);
124
+ var v3_1 = require("./v3");
125
+ Object.defineProperty(exports, "Matchers", { enumerable: true, get: function () { return v3_1.MatchersV3; } });
126
126
  /**
127
- * Exposes {@link PactV2Options}
127
+ * Exposes {@link Pact}
128
128
  * @memberof Pact
129
129
  * @static
130
130
  */
131
- __exportStar(require("./dsl/options"), exports);
131
+ __exportStar(require("./v4"), exports);
132
132
  //# sourceMappingURL=index.js.map
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AACH,6DAA+C;AAElC,QAAA,UAAU,GAAG,YAAY,CAAC;AAEvC;;;;;;GAMG;AACH,2BAA8C;AAArC,8FAAA,UAAU,OAAY;AAI/B,uCAA4C;AAAnC,kGAAA,IAAI,OAAU;AAEvB;;;;GAIG;AACH,wDAAsC;AAEtC;;;;GAIG;AACH,6DAG+B;AAF7B,0HAAA,mBAAmB,OAAA;AACnB,2HAAA,oBAAoB,OAAA;AAGtB;;;;GAIG;AACH,gDAA8B;AAE9B;;;;GAIG;AACH,0DAAwC;AAGxC;;;;GAIG;AACH,gDAA8B;AAC9B;;;;GAIG;AACH,sDAAoC;AAEpC;;;;GAIG;AACH,oDAAkC;AAElC;;;;GAIG;AACH,oDAAkC;AAElC,uCAAqB;AAErB;;;;GAIG;AACH,uCAAqB;AAErB;;;;GAIG;AACH,gDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH;;;;GAIG;AAEH;;;;;;GAMG;AACH,6DAA+C;AAElC,QAAA,UAAU,GAAG,YAAY,CAAC;AAEvC;;;;GAIG;AACH,sDAAoC;AACpC;;;;GAIG;AACH,gDAA8B;AAC9B;;;;GAIG;AACH,oDAAkC;AAElC;;;;GAIG;AACH,gDAA8B;AAC9B;;;;GAIG;AACH,oDAAkC;AAClC;;;;GAIG;AACH,gDAA8B;AAE9B;;;;GAIG;AACH,0DAAwC;AACxC,uCAA4C;AAAnC,kGAAA,IAAI,OAAU;AACvB;;;;GAIG;AACH,wDAAsC;AACtC;;;;GAIG;AACH,6DAG+B;AAF7B,0HAAA,mBAAmB,OAAA;AACnB,2HAAA,oBAAoB,OAAA;AAGtB,uCAAqB;AACrB;;;;;;GAMG;AACH,2BAA8C;AAArC,8FAAA,UAAU,OAAY;AAC/B;;;;GAIG;AACH,uCAAqB"}
@@ -2,7 +2,7 @@
2
2
  * @module Message
3
3
  */
4
4
  import type { AnyJson } from './common/jsonTypes';
5
- import type { Metadata, Message, MessageConsumer, ProviderState } from './dsl/message';
5
+ import type { Message, MessageConsumer, Metadata, ProviderState } from './dsl/message';
6
6
  import type { MessageConsumerOptions } from './dsl/options';
7
7
  /**
8
8
  * A Message Consumer is analogous to a Provider in the HTTP Interaction model.
@@ -80,5 +80,5 @@ export declare class MessageConsumerPact {
80
80
  */
81
81
  json(): Message;
82
82
  }
83
- export declare function synchronousBodyHandler<R>(handler: (body: AnyJson | Buffer) => R): MessageConsumer;
84
- export declare function asynchronousBodyHandler<R>(handler: (body: AnyJson | Buffer) => Promise<R>): MessageConsumer;
83
+ export declare function synchronousBodyHandler<R, B extends AnyJson | Buffer = AnyJson | Buffer>(handler: (body: B) => R): MessageConsumer;
84
+ export declare function asynchronousBodyHandler<R, B extends AnyJson | Buffer = AnyJson | Buffer>(handler: (body: B) => Promise<R>): MessageConsumer;
@@ -42,13 +42,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.MessageConsumerPact = void 0;
43
43
  exports.synchronousBodyHandler = synchronousBodyHandler;
44
44
  exports.asynchronousBodyHandler = asynchronousBodyHandler;
45
- const lodash_1 = require("lodash");
46
45
  const pact_core_1 = __importStar(require("@pact-foundation/pact-core"));
46
+ const lodash_1 = require("lodash");
47
47
  const ramda_1 = require("ramda");
48
- const logger_1 = __importStar(require("./common/logger"));
49
- const configurationError_1 = __importDefault(require("./errors/configurationError"));
50
48
  const package_json_1 = require("../package.json");
49
+ const logger_1 = __importStar(require("./common/logger"));
51
50
  const spec_1 = require("./common/spec");
51
+ const configurationError_1 = __importDefault(require("./errors/configurationError"));
52
52
  const v3_1 = require("./v3");
53
53
  const DEFAULT_PACT_DIR = './pacts';
54
54
  var ContentType;
@@ -203,7 +203,13 @@ class MessageConsumerPact {
203
203
  exports.MessageConsumerPact = MessageConsumerPact;
204
204
  // TODO: create more basic adapters for API handlers
205
205
  // bodyHandler takes a synchronous function and returns
206
- // a wrapped function that accepts a Message and returns a Promise
206
+ // a wrapped function that accepts a Message and returns a Promise.
207
+ //
208
+ // The body type defaults to `AnyJson | Buffer` (the runtime type of
209
+ // `m.contents`), but callers may narrow it to a custom shape (e.g. an
210
+ // interface describing the JSON they expect to receive) by supplying the
211
+ // `B` type parameter. The narrowing is a TypeScript-only assertion; the
212
+ // runtime value is still whatever the producer sent.
207
213
  function synchronousBodyHandler(handler) {
208
214
  return (m) => {
209
215
  const body = m.contents;
@@ -219,7 +225,8 @@ function synchronousBodyHandler(handler) {
219
225
  };
220
226
  }
221
227
  // bodyHandler takes an asynchronous (promisified) function and returns
222
- // a wrapped function that accepts a Message and returns a Promise
228
+ // a wrapped function that accepts a Message and returns a Promise.
229
+ // See `synchronousBodyHandler` for the rationale behind the `B` parameter.
223
230
  // TODO: move this into its own package and re-export?
224
231
  function asynchronousBodyHandler(handler) {
225
232
  return (m) => handler(m.contents);
@@ -1 +1 @@
1
- {"version":3,"file":"messageConsumerPact.js","sourceRoot":"","sources":["../../src/messageConsumerPact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messageConsumerPact.js","sourceRoot":"","sources":["../../src/messageConsumerPact.ts"],"names":[],"mappings":"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"}
@@ -1,48 +1,6 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
2
  Object.defineProperty(exports, "__esModule", { value: true });
39
- const chai = __importStar(require("chai"));
40
- const chai_as_promised_1 = __importDefault(require("chai-as-promised"));
41
- const sinon_chai_1 = __importDefault(require("sinon-chai"));
42
3
  const messageConsumerPact_1 = require("./messageConsumerPact");
43
- chai.use(sinon_chai_1.default);
44
- chai.use(chai_as_promised_1.default);
45
- const { expect } = chai;
46
4
  describe('MessageConsumer', () => {
47
5
  let consumer;
48
6
  beforeEach(() => {
@@ -58,8 +16,8 @@ describe('MessageConsumer', () => {
58
16
  };
59
17
  describe('#constructor', () => {
60
18
  it('creates a Consumer when all mandatory parameters are provided', () => {
61
- expect(consumer).to.be.a('object');
62
- expect(consumer).to.respondTo('verify');
19
+ expect(consumer).toBeTypeOf('object');
20
+ expect(typeof consumer.verify).toBe('function');
63
21
  });
64
22
  });
65
23
  describe('#dsl', () => {
@@ -67,27 +25,27 @@ describe('MessageConsumer', () => {
67
25
  it('it should throw an error', () => {
68
26
  expect(() => {
69
27
  consumer.expectsToReceive('');
70
- }).to.throw(Error);
28
+ }).toThrow(Error);
71
29
  });
72
30
  });
73
31
  describe('when an empty content object has been given', () => {
74
32
  it('it should throw an error', () => {
75
33
  expect(() => {
76
34
  consumer.withContent({});
77
- }).to.throw(Error);
35
+ }).toThrow(Error);
78
36
  });
79
37
  });
80
38
  describe('when an empty metadata object has been given', () => {
81
39
  it('it should throw an error', () => {
82
40
  expect(() => {
83
41
  consumer.withMetadata({});
84
- }).to.throw(Error);
42
+ }).toThrow(Error);
85
43
  });
86
44
  });
87
45
  });
88
46
  describe('#verify', () => {
89
47
  describe('when given a valid handler and message', () => {
90
- it('verifies the consumer message', () => {
48
+ it('verifies the consumer message', async () => {
91
49
  const stubbedConsumer = new messageConsumerPact_1.MessageConsumerPact({
92
50
  consumer: 'myconsumer',
93
51
  provider: 'myprovider',
@@ -103,45 +61,44 @@ describe('MessageConsumer', () => {
103
61
  .expectsToReceive('A message about something')
104
62
  .withContent({ foo: 'bar' })
105
63
  .withMetadata({ baz: 'bat' });
106
- return expect(stubbedConsumer.verify(() => Promise.resolve('yay!'))).to
107
- .eventually.be.fulfilled;
64
+ await stubbedConsumer.verify(() => Promise.resolve('yay!'));
108
65
  });
109
66
  });
110
67
  });
111
68
  describe('handler transformers', () => {
112
69
  describe('#asynchronousbodyHandler', () => {
113
70
  describe('when given a function that succeeds', () => {
114
- it('returns a Handler object that returns a completed promise', () => {
71
+ it('returns a Handler object that returns a completed promise', async () => {
115
72
  const failFn = () => Promise.resolve('yay!');
116
73
  const hFn = (0, messageConsumerPact_1.asynchronousBodyHandler)(failFn);
117
- return expect(hFn(testMessage)).to.eventually.be.fulfilled;
74
+ await hFn(testMessage);
118
75
  });
119
76
  });
120
77
  describe('when given a function that throws an Exception', () => {
121
- it('returns a Handler object that returns a rejected promise', () => {
78
+ it('returns a Handler object that returns a rejected promise', async () => {
122
79
  const failFn = () => Promise.reject(new Error('fail'));
123
80
  const hFn = (0, messageConsumerPact_1.asynchronousBodyHandler)(failFn);
124
- return expect(hFn(testMessage)).to.eventually.be.rejected;
81
+ await expect(hFn(testMessage)).rejects.toThrow();
125
82
  });
126
83
  });
127
84
  });
128
85
  describe('#synchronousbodyHandler', () => {
129
86
  describe('when given a function that succeeds', () => {
130
- it('returns a Handler object that returns a completed promise', () => {
87
+ it('returns a Handler object that returns a completed promise', async () => {
131
88
  const failFn = () => {
132
89
  /* do nothing! */
133
90
  };
134
91
  const hFn = (0, messageConsumerPact_1.synchronousBodyHandler)(failFn);
135
- return expect(hFn(testMessage)).to.eventually.be.fulfilled;
92
+ await hFn(testMessage);
136
93
  });
137
94
  });
138
95
  describe('when given a function that throws an Exception', () => {
139
- it('returns a Handler object that returns a rejected promise', () => {
96
+ it('returns a Handler object that returns a rejected promise', async () => {
140
97
  const failFn = () => {
141
98
  throw new Error('fail');
142
99
  };
143
100
  const hFn = (0, messageConsumerPact_1.synchronousBodyHandler)(failFn);
144
- return expect(hFn(testMessage)).to.eventually.be.rejected;
101
+ await expect(hFn(testMessage)).rejects.toThrow();
145
102
  });
146
103
  });
147
104
  });
@@ -1 +1 @@
1
- {"version":3,"file":"messageConsumerPact.spec.js","sourceRoot":"","sources":["../../src/messageConsumerPact.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messageConsumerPact.spec.js","sourceRoot":"","sources":["../../src/messageConsumerPact.spec.ts"],"names":[],"mappings":"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"}
@@ -40,12 +40,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
40
40
  };
41
41
  Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.MessageProviderPact = exports.providerWithMetadata = exports.setupProxyServer = exports.waitForServerReady = void 0;
43
- const lodash_1 = require("lodash");
44
- const pact_core_1 = __importDefault(require("@pact-foundation/pact-core"));
45
- const express_1 = __importDefault(require("express"));
46
43
  const node_http_1 = __importDefault(require("node:http"));
44
+ const pact_core_1 = __importDefault(require("@pact-foundation/pact-core"));
47
45
  const body_parser_1 = __importDefault(require("body-parser"));
46
+ const express_1 = __importDefault(require("express"));
48
47
  const js_base64_1 = require("js-base64");
48
+ const lodash_1 = require("lodash");
49
49
  const logger_1 = __importStar(require("./common/logger"));
50
50
  // Listens for the server start event
51
51
  // Converts event Emitter to a Promise
@@ -1 +1 @@
1
- {"version":3,"file":"messageProviderPact.js","sourceRoot":"","sources":["../../src/messageProviderPact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messageProviderPact.js","sourceRoot":"","sources":["../../src/messageProviderPact.ts"],"names":[],"mappings":"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"}
@@ -1,50 +1,11 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
36
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
4
  };
38
5
  Object.defineProperty(exports, "__esModule", { value: true });
39
- const chai = __importStar(require("chai"));
40
- const chai_as_promised_1 = __importDefault(require("chai-as-promised"));
41
- const sinon_chai_1 = __importDefault(require("sinon-chai"));
42
- const express_1 = __importDefault(require("express"));
43
6
  const node_http_1 = __importDefault(require("node:http"));
7
+ const express_1 = __importDefault(require("express"));
44
8
  const messageProviderPact_1 = require("./messageProviderPact");
45
- chai.use(sinon_chai_1.default);
46
- chai.use(chai_as_promised_1.default);
47
- const { expect } = chai;
48
9
  describe('MessageProvider', () => {
49
10
  let provider;
50
11
  const successfulRequest = 'successfulRequest';
@@ -80,103 +41,106 @@ describe('MessageProvider', () => {
80
41
  });
81
42
  describe('#constructor', () => {
82
43
  it('creates a Provider when all mandatory parameters are provided', () => {
83
- expect(provider).to.be.a('object');
84
- expect(provider).to.respondTo('verify');
44
+ expect(provider).toBeTypeOf('object');
45
+ expect(typeof provider.verify).toBe('function');
85
46
  });
86
47
  it('creates a Provider with default log level if not specified', () => {
87
48
  provider = new messageProviderPact_1.MessageProviderPact({
88
49
  messageProviders: {},
89
50
  provider: 'myprovider',
90
51
  });
91
- expect(provider).to.be.a('object');
92
- expect(provider).to.respondTo('verify');
52
+ expect(provider).toBeTypeOf('object');
53
+ expect(typeof provider.verify).toBe('function');
93
54
  });
94
55
  });
95
56
  describe('#setupVerificationHandler', () => {
96
57
  describe('when their is a valid setup', () => {
97
- it('creates a valid express handler', (done) => {
98
- const setupVerificationHandler =
99
- // biome-ignore lint/suspicious/noExplicitAny: accessing private method for test coverage
100
- provider.setupVerificationHandler.bind(provider)();
101
- const req = { body: successfulMessage };
102
- const res = {
103
- json: () => done(), // Expect a response
104
- };
105
- setupVerificationHandler(req, res);
58
+ it('creates a valid express handler', () => {
59
+ return new Promise((resolve) => {
60
+ const setupVerificationHandler =
61
+ // biome-ignore lint/suspicious/noExplicitAny: accessing private method for test coverage
62
+ provider.setupVerificationHandler.bind(provider)();
63
+ const req = { body: successfulMessage };
64
+ const res = {
65
+ json: () => resolve(),
66
+ };
67
+ setupVerificationHandler(req, res);
68
+ });
106
69
  });
107
70
  });
108
71
  describe('when their is an invalid setup', () => {
109
- it('creates a valid express handler that rejects the message', (done) => {
110
- const setupVerificationHandler =
111
- // biome-ignore lint/suspicious/noExplicitAny: accessing private method for test coverage
112
- provider.setupVerificationHandler.bind(provider)();
113
- const req = { body: nonExistentMessage };
114
- const res = {
115
- status: (status) => {
116
- expect(status).to.eq(500);
117
- return {
118
- send: () => done(), // Expect the status to be called with 500
119
- };
120
- },
121
- };
122
- setupVerificationHandler(req, res);
72
+ it('creates a valid express handler that rejects the message', () => {
73
+ return new Promise((resolve) => {
74
+ const setupVerificationHandler =
75
+ // biome-ignore lint/suspicious/noExplicitAny: accessing private method for test coverage
76
+ provider.setupVerificationHandler.bind(provider)();
77
+ const req = { body: nonExistentMessage };
78
+ const res = {
79
+ status: (status) => {
80
+ expect(status).toBe(500);
81
+ return {
82
+ send: () => resolve(),
83
+ };
84
+ },
85
+ };
86
+ setupVerificationHandler(req, res);
87
+ });
123
88
  });
124
89
  });
125
90
  });
126
91
  describe('#findHandler', () => {
127
92
  describe('when given a handler that exists', () => {
128
- it('returns a Handler object', () => {
93
+ it('returns a Handler object', async () => {
129
94
  // biome-ignore lint/suspicious/noExplicitAny: accessing private method for test coverage
130
95
  const findHandler = provider.findHandler.bind(provider);
131
- return expect(findHandler(successfulMessage)).to.eventually.be.a('function');
96
+ await expect(findHandler(successfulMessage)).resolves.toBeTypeOf('function');
132
97
  });
133
98
  });
134
99
  describe('when given a handler that does not exist', () => {
135
- it('returns a failed promise', () => {
100
+ it('returns a failed promise', async () => {
136
101
  // biome-ignore lint/suspicious/noExplicitAny: accessing private method for test coverage
137
102
  const findHandler = provider.findHandler.bind(provider);
138
- return expect(findHandler('doesnotexist')).to.eventually.be.rejected;
103
+ await expect(findHandler('doesnotexist')).rejects.toBeDefined();
139
104
  });
140
105
  });
141
106
  });
142
107
  describe('#setupStates', () => {
143
108
  describe('when given a handler that exists', () => {
144
- it('returns values of all resolved handlers', () => {
109
+ it('returns values of all resolved handlers', async () => {
145
110
  // biome-ignore lint/suspicious/noExplicitAny: accessing private method for test coverage
146
111
  const setupStates = provider.setupStates.bind(provider);
147
- return expect(setupStates(successfulMessage)).to.eventually.deep.equal([
148
- 'yay',
149
- ]);
112
+ await expect(setupStates(successfulMessage)).resolves.toEqual(['yay']);
150
113
  });
151
- it('passes params to the handler', () => {
114
+ it('passes params to the handler', async () => {
152
115
  // biome-ignore lint/suspicious/noExplicitAny: accessing private method for test coverage
153
116
  const setupStates = provider.setupStates.bind(provider);
154
- return expect(setupStates({
117
+ await expect(setupStates({
155
118
  providerStates: [
156
119
  { name: 'some state with params', params: { foo: 'bar' } },
157
120
  ],
158
- })).to.eventually.deep.equal([
121
+ })).resolves.toEqual([
159
122
  'name: some state with params, params: {"foo":"bar"}',
160
123
  ]);
161
124
  });
162
125
  });
163
126
  describe('when given a state that does not have a handler', () => {
164
- it('returns an empty promise', () => {
127
+ it('returns an empty promise', async () => {
165
128
  provider = new messageProviderPact_1.MessageProviderPact({
166
129
  messageProviders: {},
167
130
  provider: 'myprovider',
168
131
  });
169
132
  // biome-ignore lint/suspicious/noExplicitAny: accessing private method for test coverage
170
133
  const findStateHandler = provider.setupStates.bind(provider);
171
- return expect(findStateHandler(unsuccessfulMessage)).to.eventually.deep.equal([]);
134
+ await expect(findStateHandler(unsuccessfulMessage)).resolves.toEqual([]);
172
135
  });
173
136
  });
174
137
  });
175
138
  describe('#waitForServerReady', () => {
176
139
  describe('when the http server starts up', () => {
177
- it('returns a resolved promise', () => {
140
+ it('returns a resolved promise', async () => {
178
141
  const server = node_http_1.default.createServer(() => { }).listen();
179
- return expect((0, messageProviderPact_1.waitForServerReady)(server)).to.eventually.be.fulfilled;
142
+ await (0, messageProviderPact_1.waitForServerReady)(server);
143
+ server.close();
180
144
  });
181
145
  });
182
146
  });
@@ -184,7 +148,7 @@ describe('MessageProvider', () => {
184
148
  describe('when the http server starts up', () => {
185
149
  it('returns a resolved promise', () => {
186
150
  const app = (0, express_1.default)();
187
- expect((0, messageProviderPact_1.setupProxyServer)(app)).to.be.an.instanceOf(node_http_1.default.Server);
151
+ expect((0, messageProviderPact_1.setupProxyServer)(app)).toBeInstanceOf(node_http_1.default.Server);
188
152
  });
189
153
  });
190
154
  });
@@ -193,7 +157,7 @@ describe('MessageProvider', () => {
193
157
  const setupProxyApplication =
194
158
  // biome-ignore lint/suspicious/noExplicitAny: accessing private method for test coverage
195
159
  provider.setupProxyApplication.bind(provider);
196
- expect(setupProxyApplication().listen).to.be.a('function');
160
+ expect(setupProxyApplication().listen).toBeTypeOf('function');
197
161
  });
198
162
  });
199
163
  });