@pact-foundation/pact 7.3.0 → 8.0.2

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 (97) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/CONTRIBUTING.md +22 -9
  3. package/LICENSE +1 -2
  4. package/README.md +253 -157
  5. package/common/logger.js +10 -5
  6. package/common/logger.js.map +1 -1
  7. package/common/metadata.js.map +1 -1
  8. package/common/net.js +3 -2
  9. package/common/net.js.map +1 -1
  10. package/common/net.spec.d.ts +1 -0
  11. package/common/net.spec.js +47 -0
  12. package/common/net.spec.js.map +1 -0
  13. package/common/request.js +1 -2
  14. package/common/request.js.map +1 -1
  15. package/common/request.spec.d.ts +1 -0
  16. package/common/request.spec.js +71 -0
  17. package/common/request.spec.js.map +1 -0
  18. package/common/utils.js +1 -2
  19. package/common/utils.js.map +1 -1
  20. package/dsl/apolloGraphql.d.ts +1 -1
  21. package/dsl/apolloGraphql.js +6 -3
  22. package/dsl/apolloGraphql.js.map +1 -1
  23. package/dsl/apolloGraphql.spec.d.ts +1 -0
  24. package/dsl/apolloGraphql.spec.js +47 -0
  25. package/dsl/apolloGraphql.spec.js.map +1 -0
  26. package/dsl/graphql.js +19 -9
  27. package/dsl/graphql.js.map +1 -1
  28. package/dsl/graphql.spec.d.ts +1 -0
  29. package/dsl/graphql.spec.js +141 -0
  30. package/dsl/graphql.spec.js.map +1 -0
  31. package/dsl/interaction.js +9 -7
  32. package/dsl/interaction.js.map +1 -1
  33. package/dsl/interaction.spec.d.ts +1 -0
  34. package/dsl/interaction.spec.js +172 -0
  35. package/dsl/interaction.spec.js.map +1 -0
  36. package/dsl/matchers.d.ts +25 -25
  37. package/dsl/matchers.js +57 -55
  38. package/dsl/matchers.js.map +1 -1
  39. package/dsl/matchers.spec.d.ts +1 -0
  40. package/dsl/matchers.spec.js +537 -0
  41. package/dsl/matchers.spec.js.map +1 -0
  42. package/dsl/message.d.ts +29 -3
  43. package/dsl/mockService.d.ts +6 -0
  44. package/dsl/mockService.js +10 -4
  45. package/dsl/mockService.js.map +1 -1
  46. package/dsl/mockService.spec.d.ts +1 -0
  47. package/dsl/mockService.spec.js +126 -0
  48. package/dsl/mockService.spec.js.map +1 -0
  49. package/dsl/verifier.d.ts +48 -2
  50. package/dsl/verifier.js +142 -3
  51. package/dsl/verifier.js.map +1 -1
  52. package/dsl/verifier.spec.d.ts +1 -0
  53. package/dsl/verifier.spec.js +299 -0
  54. package/dsl/verifier.spec.js.map +1 -0
  55. package/errors/configurationError.d.ts +2 -0
  56. package/errors/configurationError.js +24 -0
  57. package/errors/configurationError.js.map +1 -0
  58. package/errors/graphQLQueryError.d.ts +2 -0
  59. package/errors/graphQLQueryError.js +24 -0
  60. package/errors/graphQLQueryError.js.map +1 -0
  61. package/errors/matcherError.d.ts +2 -0
  62. package/errors/matcherError.js +24 -0
  63. package/errors/matcherError.js.map +1 -0
  64. package/errors/verificationError.d.ts +2 -0
  65. package/errors/verificationError.js +24 -0
  66. package/errors/verificationError.js.map +1 -0
  67. package/httpPact.d.ts +69 -0
  68. package/httpPact.js +206 -0
  69. package/httpPact.js.map +1 -0
  70. package/httpPact.spec.d.ts +1 -0
  71. package/httpPact.spec.js +337 -0
  72. package/httpPact.spec.js.map +1 -0
  73. package/messageConsumerPact.d.ts +3 -3
  74. package/messageConsumerPact.js +5 -4
  75. package/messageConsumerPact.js.map +1 -1
  76. package/messageConsumerPact.spec.d.ts +1 -0
  77. package/messageConsumerPact.spec.js +161 -0
  78. package/messageConsumerPact.spec.js.map +1 -0
  79. package/messageProviderPact.d.ts +0 -1
  80. package/messageProviderPact.js +11 -11
  81. package/messageProviderPact.js.map +1 -1
  82. package/messageProviderPact.spec.d.ts +1 -0
  83. package/messageProviderPact.spec.js +146 -0
  84. package/messageProviderPact.spec.js.map +1 -0
  85. package/package.json +24 -26
  86. package/pact-web.d.ts +2 -2
  87. package/pact-web.js +20 -10
  88. package/pact-web.js.map +1 -1
  89. package/pact-web.spec.d.ts +1 -0
  90. package/pact-web.spec.js +205 -0
  91. package/pact-web.spec.js.map +1 -0
  92. package/pact.d.ts +28 -65
  93. package/pact.integration.spec.d.ts +0 -0
  94. package/pact.integration.spec.js +292 -0
  95. package/pact.integration.spec.js.map +1 -0
  96. package/pact.js +21 -189
  97. package/pact.js.map +1 -1
package/httpPact.js ADDED
@@ -0,0 +1,206 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ var pact_node_1 = require("@pact-foundation/pact-node");
15
+ var path = require("path");
16
+ var clc = require("cli-color");
17
+ var process = require("process");
18
+ var interaction_1 = require("./dsl/interaction");
19
+ var lodash_1 = require("lodash");
20
+ var net_1 = require("./common/net");
21
+ var logger_1 = require("./common/logger");
22
+ var mockService_1 = require("./dsl/mockService");
23
+ var verificationError_1 = require("./errors/verificationError");
24
+ var configurationError_1 = require("./errors/configurationError");
25
+ /**
26
+ * Creates a new {@link PactProvider}.
27
+ * @memberof Pact
28
+ * @name create
29
+ * @param {PactOptions} opts
30
+ * @return {@link PactProvider}
31
+ */
32
+ var Pact = /** @class */ (function () {
33
+ function Pact(config) {
34
+ this.opts = Pact.createOptionsWithDefaults(config);
35
+ if (lodash_1.isEmpty(this.opts.consumer)) {
36
+ throw new configurationError_1.default("You must specify a Consumer for this pact.");
37
+ }
38
+ if (lodash_1.isEmpty(this.opts.provider)) {
39
+ throw new configurationError_1.default("You must specify a Provider for this pact.");
40
+ }
41
+ logger_1.default.level(this.opts.logLevel);
42
+ pact_node_1.default.logLevel(this.opts.logLevel);
43
+ this.createServer(config);
44
+ }
45
+ Pact.createOptionsWithDefaults = function (opts) {
46
+ return __assign({}, Pact.defaults, opts);
47
+ };
48
+ /**
49
+ * Setup the pact framework, including start the
50
+ * underlying mock server
51
+ * @returns {Promise}
52
+ */
53
+ Pact.prototype.setup = function () {
54
+ var _this = this;
55
+ return this.checkPort()
56
+ .then(function () { return _this.startServer(); })
57
+ .then(function (opts) {
58
+ _this.setupMockService();
59
+ return Promise.resolve(opts);
60
+ });
61
+ };
62
+ /**
63
+ * Add an interaction to the {@link MockService}.
64
+ * @memberof PactProvider
65
+ * @instance
66
+ * @param {Interaction} interactionObj
67
+ * @returns {Promise}
68
+ */
69
+ Pact.prototype.addInteraction = function (interactionObj) {
70
+ if (interactionObj instanceof interaction_1.Interaction) {
71
+ return this.mockService.addInteraction(interactionObj);
72
+ }
73
+ var interaction = new interaction_1.Interaction();
74
+ if (interactionObj.state) {
75
+ interaction.given(interactionObj.state);
76
+ }
77
+ interaction
78
+ .uponReceiving(interactionObj.uponReceiving)
79
+ .withRequest(interactionObj.withRequest)
80
+ .willRespondWith(interactionObj.willRespondWith);
81
+ return this.mockService.addInteraction(interaction);
82
+ };
83
+ /**
84
+ * Checks with the Mock Service if the expected interactions have been exercised.
85
+ * @memberof PactProvider
86
+ * @instance
87
+ * @returns {Promise}
88
+ */
89
+ Pact.prototype.verify = function () {
90
+ var _this = this;
91
+ return this.mockService
92
+ .verify()
93
+ .then(function () { return _this.mockService.removeInteractions(); })
94
+ .catch(function (e) {
95
+ // Properly format the error
96
+ /* tslint:disable: no-console */
97
+ console.error("");
98
+ console.error(clc.red("Pact verification failed!"));
99
+ console.error(clc.red(e));
100
+ /* tslint:enable: */
101
+ return _this.mockService.removeInteractions().then(function () {
102
+ throw new verificationError_1.default("Pact verification failed - expected interactions did not match actual.");
103
+ });
104
+ });
105
+ };
106
+ /**
107
+ * Writes the Pact and clears any interactions left behind and shutdown the
108
+ * mock server
109
+ * @memberof PactProvider
110
+ * @instance
111
+ * @returns {Promise}
112
+ */
113
+ Pact.prototype.finalize = function () {
114
+ var _this = this;
115
+ if (this.finalized) {
116
+ logger_1.default.warn("finalize() has already been called, this is probably a logic error in your test setup. " +
117
+ "In the future this will be an error.");
118
+ }
119
+ this.finalized = true;
120
+ return this.mockService
121
+ .writePact()
122
+ .then(function () { return logger_1.default.info("Pact File Written"); }, function (e) {
123
+ return Promise.reject(e);
124
+ })
125
+ .then(function () {
126
+ return new Promise(function (resolve, reject) {
127
+ return _this.server.delete().then(function () { return resolve(); }, function (e) { return reject(e); });
128
+ });
129
+ })
130
+ .catch(function (e) {
131
+ return new Promise(function (resolve, reject) {
132
+ return _this.server.delete().finally(function () { return reject(e); });
133
+ });
134
+ });
135
+ };
136
+ /**
137
+ * Writes the pact file out to file. Should be called when all tests have been performed for a
138
+ * given Consumer <-> Provider pair. It will write out the Pact to the
139
+ * configured file.
140
+ * @memberof PactProvider
141
+ * @instance
142
+ * @returns {Promise}
143
+ */
144
+ Pact.prototype.writePact = function () {
145
+ return this.mockService.writePact();
146
+ };
147
+ /**
148
+ * Clear up any interactions in the Provider Mock Server.
149
+ * @memberof PactProvider
150
+ * @instance
151
+ * @returns {Promise}
152
+ */
153
+ Pact.prototype.removeInteractions = function () {
154
+ return this.mockService.removeInteractions();
155
+ };
156
+ Pact.prototype.checkPort = function () {
157
+ if (this.server && this.server.options.port) {
158
+ return net_1.isPortAvailable(this.server.options.port, this.opts.host);
159
+ }
160
+ return Promise.resolve();
161
+ };
162
+ Pact.prototype.setupMockService = function () {
163
+ logger_1.default.info("Setting up Pact with Consumer \"" + this.opts.consumer + "\" and Provider \"" + this.opts.provider + "\"\n using mock service on Port: \"" + this.opts.port + "\"");
164
+ this.mockService = new mockService_1.MockService(undefined, undefined, this.opts.port, this.opts.host, this.opts.ssl, this.opts.pactfileWriteMode);
165
+ };
166
+ Pact.prototype.startServer = function () {
167
+ var _this = this;
168
+ return new Promise(function (resolve, reject) {
169
+ return _this.server.start().then(function () {
170
+ _this.opts.port = _this.server.options.port || _this.opts.port;
171
+ resolve(_this.opts);
172
+ }, function (e) { return reject(e); });
173
+ });
174
+ };
175
+ Pact.prototype.createServer = function (config) {
176
+ this.server = pact_node_1.default.createServer({
177
+ consumer: this.opts.consumer,
178
+ cors: this.opts.cors,
179
+ dir: this.opts.dir,
180
+ host: this.opts.host,
181
+ log: this.opts.log,
182
+ pactFileWriteMode: this.opts.pactfileWriteMode,
183
+ port: config.port,
184
+ provider: this.opts.provider,
185
+ spec: this.opts.spec,
186
+ ssl: this.opts.ssl,
187
+ sslcert: this.opts.sslcert,
188
+ sslkey: this.opts.sslkey,
189
+ });
190
+ };
191
+ Pact.defaults = {
192
+ consumer: "",
193
+ cors: false,
194
+ dir: path.resolve(process.cwd(), "pacts"),
195
+ host: "127.0.0.1",
196
+ log: path.resolve(process.cwd(), "logs", "pact.log"),
197
+ logLevel: "info",
198
+ pactfileWriteMode: "overwrite",
199
+ provider: "",
200
+ spec: 2,
201
+ ssl: false,
202
+ };
203
+ return Pact;
204
+ }());
205
+ exports.Pact = Pact;
206
+ //# sourceMappingURL=httpPact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpPact.js","sourceRoot":"","sources":["../src/httpPact.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,wDAAuD;AACvD,2BAA4B;AAC5B,+BAAgC;AAChC,iCAAkC;AAClC,iDAAkE;AAClE,iCAAgC;AAChC,oCAA8C;AAC9C,0CAAoC;AAEpC,iDAA+C;AAG/C,gEAA0D;AAC1D,kEAA4D;AAE5D;;;;;;GAMG;AACH;IAyBE,cAAY,MAAmB;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAA;QAElD,IAAI,gBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC/B,MAAM,IAAI,4BAAkB,CAAC,4CAA4C,CAAC,CAAA;SAC3E;QAED,IAAI,gBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC/B,MAAM,IAAI,4BAAkB,CAAC,4CAA4C,CAAC,CAAA;SAC3E;QAED,gBAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAqB,CAAC,CAAA;QAC7C,mBAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAE3C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;IAC3B,CAAC;IA1Ba,8BAAyB,GAAvC,UACE,IAAiB;QAEjB,OAAO,aAAK,IAAI,CAAC,QAAQ,EAAK,IAAI,CAAyB,CAAA;IAC7D,CAAC;IAwBD;;;;OAIG;IACI,oBAAK,GAAZ;QAAA,iBAOC;QANC,OAAO,IAAI,CAAC,SAAS,EAAE;aACpB,IAAI,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,EAAE,EAAlB,CAAkB,CAAC;aAC9B,IAAI,CAAC,UAAA,IAAI;YACR,KAAI,CAAC,gBAAgB,EAAE,CAAA;YACvB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC,CAAC,CAAA;IACN,CAAC;IAED;;;;;;OAMG;IACI,6BAAc,GAArB,UACE,cAA+C;QAE/C,IAAI,cAAc,YAAY,yBAAW,EAAE;YACzC,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;SACvD;QACD,IAAM,WAAW,GAAG,IAAI,yBAAW,EAAE,CAAA;QACrC,IAAI,cAAc,CAAC,KAAK,EAAE;YACxB,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;SACxC;QAED,WAAW;aACR,aAAa,CAAC,cAAc,CAAC,aAAa,CAAC;aAC3C,WAAW,CAAC,cAAc,CAAC,WAAW,CAAC;aACvC,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;QAElD,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;IACrD,CAAC;IAED;;;;;OAKG;IACI,qBAAM,GAAb;QAAA,iBAkBC;QAjBC,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,EAAE;aACR,IAAI,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,EAArC,CAAqC,CAAC;aACjD,KAAK,CAAC,UAAC,CAAM;YACZ,4BAA4B;YAC5B,gCAAgC;YAChC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACjB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAA;YACnD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACzB,oBAAoB;YAEpB,OAAO,KAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAC,IAAI,CAAC;gBAChD,MAAM,IAAI,2BAAiB,CACzB,wEAAwE,CACzE,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACN,CAAC;IAED;;;;;;OAMG;IACI,uBAAQ,GAAf;QAAA,iBA6BC;QA5BC,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,gBAAM,CAAC,IAAI,CACT,yFAAyF;gBACvF,sCAAsC,CACzC,CAAA;SACF;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QAErB,OAAO,IAAI,CAAC,WAAW;aACpB,SAAS,EAAE;aACX,IAAI,CACH,cAAM,OAAA,gBAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAhC,CAAgC,EACtC,UAAA,CAAC;YACC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC1B,CAAC,CACF;aACA,IAAI,CACH;YACE,OAAA,IAAI,OAAO,CAAO,UAAC,OAAO,EAAE,MAAM;gBAChC,OAAA,KAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,cAAM,OAAA,OAAO,EAAE,EAAT,CAAS,EAAE,UAAA,CAAC,IAAI,OAAA,MAAM,CAAC,CAAC,CAAC,EAAT,CAAS,CAAC;YAA1D,CAA0D,CAC3D;QAFD,CAEC,CACJ;aACA,KAAK,CACJ,UAAC,CAAQ;YACP,OAAA,IAAI,OAAO,CAAO,UAAC,OAAO,EAAE,MAAM;gBAChC,OAAO,KAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,cAAM,OAAA,MAAM,CAAC,CAAC,CAAC,EAAT,CAAS,CAAC,CAAA;YACtD,CAAC,CAAC;QAFF,CAEE,CACL,CAAA;IACL,CAAC;IAED;;;;;;;OAOG;IACI,wBAAS,GAAhB;QACE,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAA;IACrC,CAAC;IAED;;;;;OAKG;IACI,iCAAkB,GAAzB;QACE,OAAO,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAA;IAC9C,CAAC;IAEO,wBAAS,GAAjB;QACE,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE;YAC3C,OAAO,qBAAe,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SACjE;QACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;IAEO,+BAAgB,GAAxB;QACE,gBAAM,CAAC,IAAI,CAAC,qCACV,IAAI,CAAC,IAAI,CAAC,QAAQ,0BACD,IAAI,CAAC,IAAI,CAAC,QAAQ,8CACN,IAAI,CAAC,IAAI,CAAC,IAAI,OAAG,CAAC,CAAA;QAEjD,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAW,CAChC,SAAS,EACT,SAAS,EACT,IAAI,CAAC,IAAI,CAAC,IAAI,EACd,IAAI,CAAC,IAAI,CAAC,IAAI,EACd,IAAI,CAAC,IAAI,CAAC,GAAG,EACb,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAC5B,CAAA;IACH,CAAC;IAEO,0BAAW,GAAnB;QAAA,iBAUC;QATC,OAAO,IAAI,OAAO,CAAsB,UAAC,OAAO,EAAE,MAAM;YACtD,OAAA,KAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,IAAI,CACtB;gBACE,KAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,KAAI,CAAC,IAAI,CAAC,IAAI,CAAA;gBAC3D,OAAO,CAAC,KAAI,CAAC,IAAI,CAAC,CAAA;YACpB,CAAC,EACD,UAAC,CAAM,IAAK,OAAA,MAAM,CAAC,CAAC,CAAC,EAAT,CAAS,CACtB;QAND,CAMC,CACF,CAAA;IACH,CAAC;IAEO,2BAAY,GAApB,UAAqB,MAAmB;QACtC,IAAI,CAAC,MAAM,GAAG,mBAAc,CAAC,YAAY,CAAC;YACxC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC5B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;YACpB,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG;YAClB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;YACpB,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG;YAClB,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAC9C,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC5B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;YACpB,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG;YAClB,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;YAC1B,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;SACzB,CAAC,CAAA;IACJ,CAAC;IAzNa,aAAQ,GAAG;QACvB,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC;QACzC,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC;QACpD,QAAQ,EAAE,MAAM;QAChB,iBAAiB,EAAE,WAAW;QAC9B,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,CAAC;QACP,GAAG,EAAE,KAAK;KACI,CAAA;IA+MlB,WAAC;CAAA,AA3ND,IA2NC;AA3NY,oBAAI"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,337 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (_) try {
17
+ 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;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ var _this = this;
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ /* tslint:disable:no-unused-expression object-literal-sort-keys max-classes-per-file no-empty no-console no-string-literal*/
40
+ var chai = require("chai");
41
+ var chaiAsPromised = require("chai-as-promised");
42
+ var sinon = require("sinon");
43
+ var sinonChai = require("sinon-chai");
44
+ var request_1 = require("./common/request");
45
+ var interaction_1 = require("./dsl/interaction");
46
+ var mockService_1 = require("./dsl/mockService");
47
+ var pact_node_1 = require("@pact-foundation/pact-node");
48
+ var httpPact_1 = require("./httpPact");
49
+ var ts_mock_imports_1 = require("ts-mock-imports");
50
+ // Mock out the PactNode interfaces
51
+ var PactServer = /** @class */ (function () {
52
+ function PactServer() {
53
+ }
54
+ PactServer.prototype.start = function () { };
55
+ PactServer.prototype.delete = function () { };
56
+ return PactServer;
57
+ }());
58
+ chai.use(sinonChai);
59
+ chai.use(chaiAsPromised);
60
+ var expect = chai.expect;
61
+ describe("Pact", function () {
62
+ var pact;
63
+ var fullOpts = {
64
+ consumer: "A",
65
+ provider: "B",
66
+ port: 1234,
67
+ host: "127.0.0.1",
68
+ ssl: false,
69
+ logLevel: "info",
70
+ spec: 2,
71
+ cors: false,
72
+ pactfileWriteMode: "overwrite",
73
+ };
74
+ before(function () {
75
+ // Stub out pact-node
76
+ var manager = ts_mock_imports_1.ImportMock.mockClass(pact_node_1.default, "createServer");
77
+ manager.mock("createServer", function () { });
78
+ });
79
+ beforeEach(function () {
80
+ pact = Object.create(httpPact_1.Pact.prototype);
81
+ pact.opts = fullOpts;
82
+ });
83
+ afterEach(function () {
84
+ sinon.restore();
85
+ // return serviceFactory.removeAllServers()
86
+ });
87
+ describe("#constructor", function () {
88
+ it("throws Error when consumer not provided", function () {
89
+ expect(function () {
90
+ new httpPact_1.Pact({ consumer: "", provider: "provider" });
91
+ }).to.throw(Error, "You must specify a Consumer for this pact.");
92
+ });
93
+ it("throws Error when provider not provided", function () {
94
+ expect(function () {
95
+ new httpPact_1.Pact({ consumer: "someconsumer", provider: "" });
96
+ }).to.throw(Error, "You must specify a Provider for this pact.");
97
+ });
98
+ });
99
+ describe("#createOptionsWithDefault", function () {
100
+ var constructorOpts = {
101
+ consumer: "A",
102
+ provider: "B",
103
+ };
104
+ it("merges options with sensible defaults", function () {
105
+ var opts = httpPact_1.Pact.createOptionsWithDefaults(constructorOpts);
106
+ expect(opts.consumer).to.eq("A");
107
+ expect(opts.provider).to.eq("B");
108
+ expect(opts.cors).to.eq(false);
109
+ expect(opts.host).to.eq("127.0.0.1");
110
+ expect(opts.logLevel).to.eq("info");
111
+ expect(opts.spec).to.eq(2);
112
+ expect(opts.dir).not.to.be.empty;
113
+ expect(opts.log).not.to.be.empty;
114
+ expect(opts.pactfileWriteMode).to.eq("overwrite");
115
+ expect(opts.ssl).to.eq(false);
116
+ expect(opts.sslcert).to.eq(undefined);
117
+ expect(opts.sslkey).to.eq(undefined);
118
+ });
119
+ });
120
+ describe("#setup", function () {
121
+ var serverMock = {
122
+ start: function () { return Promise.resolve(); },
123
+ options: { port: 1234 },
124
+ logLevel: function (a) { },
125
+ };
126
+ describe("when server is not properly configured", function () {
127
+ describe("and pact-node is unable to start the server", function () {
128
+ it("returns a rejected promise", function () { return __awaiter(_this, void 0, void 0, function () {
129
+ var p;
130
+ return __generator(this, function (_a) {
131
+ p = new httpPact_1.Pact(fullOpts);
132
+ p.server = {
133
+ start: function () { return Promise.reject("pact-node error"); },
134
+ options: { port: 1234 },
135
+ };
136
+ return [2 /*return*/, expect(p.setup()).to.eventually.be.rejectedWith("pact-node error")];
137
+ });
138
+ }); });
139
+ });
140
+ });
141
+ describe("when server is properly configured", function () {
142
+ it("starts the mock server in the background", function () {
143
+ var p = new httpPact_1.Pact(fullOpts);
144
+ p.server = serverMock;
145
+ return expect(p.setup()).to.eventually.be.fulfilled;
146
+ });
147
+ });
148
+ describe("when server is properly configured", function () {
149
+ it("returns the current configuration", function () {
150
+ var p = new httpPact_1.Pact(fullOpts);
151
+ p.server = serverMock;
152
+ return expect(p.setup()).to.eventually.include({
153
+ consumer: "A",
154
+ provider: "B",
155
+ port: 1234,
156
+ host: "127.0.0.1",
157
+ ssl: false,
158
+ logLevel: "info",
159
+ spec: 2,
160
+ cors: false,
161
+ pactfileWriteMode: "overwrite",
162
+ });
163
+ });
164
+ });
165
+ });
166
+ describe("#addInteraction", function () {
167
+ var interaction = {
168
+ state: "i have a list of projects",
169
+ uponReceiving: "a request for projects",
170
+ withRequest: {
171
+ method: request_1.HTTPMethod.GET,
172
+ path: "/projects",
173
+ headers: { Accept: "application/json" },
174
+ },
175
+ willRespondWith: {
176
+ status: 200,
177
+ headers: { "Content-Type": "application/json" },
178
+ body: {},
179
+ },
180
+ };
181
+ describe("when given a provider state", function () {
182
+ it("creates interaction with state", function () {
183
+ pact.mockService = {
184
+ addInteraction: function (int) { return Promise.resolve(int.state); },
185
+ };
186
+ return expect(pact.addInteraction(interaction)).to.eventually.have.property("providerState");
187
+ });
188
+ });
189
+ describe("when not given a provider state", function () {
190
+ it("creates interaction with no state", function () {
191
+ pact.mockService = {
192
+ addInteraction: function (int) { return Promise.resolve(int.state); },
193
+ };
194
+ interaction.state = undefined;
195
+ return expect(pact.addInteraction(interaction)).to.eventually.not.have.property("providerState");
196
+ });
197
+ describe("when given an Interaction as a builder", function () {
198
+ it("creates interaction", function () {
199
+ var interaction2 = new interaction_1.Interaction()
200
+ .given("i have a list of projects")
201
+ .uponReceiving("a request for projects")
202
+ .withRequest({
203
+ method: request_1.HTTPMethod.GET,
204
+ path: "/projects",
205
+ headers: { Accept: "application/json" },
206
+ })
207
+ .willRespondWith({
208
+ status: 200,
209
+ headers: { "Content-Type": "application/json" },
210
+ body: {},
211
+ });
212
+ pact.mockService = {
213
+ addInteraction: function (int) {
214
+ return Promise.resolve(int);
215
+ },
216
+ };
217
+ return expect(pact.addInteraction(interaction2)).to.eventually.have.property("given");
218
+ });
219
+ });
220
+ });
221
+ });
222
+ describe("#verify", function () {
223
+ describe("when pact verification is successful", function () {
224
+ it("returns a successful promise and remove interactions", function () {
225
+ pact.mockService = {
226
+ verify: function () { return Promise.resolve("verified!"); },
227
+ removeInteractions: function () { return Promise.resolve("removeInteractions"); },
228
+ };
229
+ var verifyPromise = pact.verify();
230
+ return Promise.all([
231
+ expect(verifyPromise).to.eventually.eq("removeInteractions"),
232
+ expect(verifyPromise).to.eventually.be.fulfilled,
233
+ ]);
234
+ });
235
+ });
236
+ describe("when pact verification is unsuccessful", function () {
237
+ it("throws an error", function () {
238
+ var removeInteractionsStub = sinon
239
+ .stub(mockService_1.MockService.prototype, "removeInteractions")
240
+ .resolves("removeInteractions");
241
+ pact.mockService = {
242
+ verify: function () { return Promise.reject("not verified!"); },
243
+ removeInteractions: removeInteractionsStub,
244
+ };
245
+ var verifyPromise = pact.verify();
246
+ return Promise.all([
247
+ expect(verifyPromise).to.eventually.be.rejectedWith(Error),
248
+ verifyPromise.catch(function () {
249
+ return expect(removeInteractionsStub).to.callCount(1);
250
+ }),
251
+ ]);
252
+ });
253
+ });
254
+ describe("when pact verification is successful", function () {
255
+ describe("and an error is thrown in the cleanup", function () {
256
+ it("throws an error", function () {
257
+ pact.mockService = {
258
+ verify: function () { return Promise.resolve("verified!"); },
259
+ removeInteractions: function () {
260
+ throw new Error("error removing interactions");
261
+ },
262
+ };
263
+ return expect(pact.verify()).to.eventually.be.rejectedWith(Error);
264
+ });
265
+ });
266
+ });
267
+ });
268
+ describe("#finalize", function () {
269
+ describe("when writing Pact is successful", function () {
270
+ it("returns a successful promise and shuts down down the mock server", function () {
271
+ pact.mockService = {
272
+ writePact: function () { return Promise.resolve("pact file written!"); },
273
+ removeInteractions: sinon.stub(),
274
+ };
275
+ pact.server = {
276
+ delete: function () { return Promise.resolve(); },
277
+ };
278
+ return expect(pact.finalize()).to.eventually.be.fulfilled;
279
+ });
280
+ });
281
+ describe("when writing Pact is unsuccessful", function () {
282
+ it("throws an error and shuts down the server", function () {
283
+ pact.mockService = {
284
+ writePact: function () { return Promise.reject(new Error("pact not file written!")); },
285
+ removeInteractions: sinon.stub(),
286
+ };
287
+ var deleteStub = sinon.stub(PactServer.prototype, "delete").resolves();
288
+ pact.server = { delete: deleteStub };
289
+ return expect(pact.finalize()).to.eventually.be.rejected.then(function () {
290
+ return expect(deleteStub).to.callCount(1);
291
+ });
292
+ });
293
+ });
294
+ describe("when writing pact is successful and shutting down the mock server is unsuccessful", function () {
295
+ it("throws an error", function () {
296
+ pact.mockService = {
297
+ writePact: sinon.stub(),
298
+ removeInteractions: sinon.stub(),
299
+ };
300
+ pact.server = {
301
+ delete: function () { return Promise.reject(); },
302
+ };
303
+ return expect(pact.finalize).to.throw(Error);
304
+ });
305
+ });
306
+ });
307
+ describe("#writePact", function () {
308
+ describe("when writing Pact is successful", function () {
309
+ it("returns a successful promise", function () {
310
+ pact.mockService = {
311
+ writePact: function () { return Promise.resolve("pact file written!"); },
312
+ removeInteractions: sinon.stub(),
313
+ };
314
+ var writePactPromise = pact.writePact();
315
+ return Promise.all([
316
+ expect(writePactPromise).to.eventually.eq("pact file written!"),
317
+ expect(writePactPromise).to.eventually.be.fulfilled,
318
+ ]);
319
+ });
320
+ });
321
+ });
322
+ describe("#removeInteractions", function () {
323
+ describe("when removing interactions is successful", function () {
324
+ it("returns a successful promise", function () {
325
+ pact.mockService = {
326
+ removeInteractions: function () { return Promise.resolve("interactions removed!"); },
327
+ };
328
+ var removeInteractionsPromise = pact.removeInteractions();
329
+ return Promise.all([
330
+ expect(removeInteractionsPromise).to.eventually.eq("interactions removed!"),
331
+ expect(removeInteractionsPromise).to.eventually.be.fulfilled,
332
+ ]);
333
+ });
334
+ });
335
+ });
336
+ });
337
+ //# sourceMappingURL=httpPact.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpPact.spec.js","sourceRoot":"","sources":["../src/httpPact.spec.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @module Message
3
3
  */
4
- import { Metadata, Message, MessageProvider, MessageConsumer } from "./dsl/message";
4
+ import { Metadata, Message, MessageConsumer } from "./dsl/message";
5
5
  import { MessageConsumerOptions } from "./dsl/options";
6
6
  /**
7
7
  * A Message Consumer is analagous to a Provider in the HTTP Interaction model.
@@ -63,5 +63,5 @@ export declare class MessageConsumerPact {
63
63
  validate(): Promise<any>;
64
64
  private getServiceFactory;
65
65
  }
66
- export declare function synchronousBodyHandler(handler: (body: any) => any): MessageProvider;
67
- export declare function asynchronousBodyHandler(handler: (body: any) => Promise<any>): MessageProvider;
66
+ export declare function synchronousBodyHandler(handler: (body: any) => any): MessageConsumer;
67
+ export declare function asynchronousBodyHandler(handler: (body: any) => Promise<any>): MessageConsumer;
@@ -8,6 +8,7 @@ var matchers_1 = require("./dsl/matchers");
8
8
  var utils_1 = require("./common/utils");
9
9
  var logger_1 = require("./common/logger");
10
10
  var pact_node_1 = require("@pact-foundation/pact-node");
11
+ var configurationError_1 = require("./errors/configurationError");
11
12
  /**
12
13
  * A Message Consumer is analagous to a Provider in the HTTP Interaction model.
13
14
  * It is the receiver of an interaction, and needs to be able to handle whatever
@@ -49,7 +50,7 @@ var MessageConsumerPact = /** @class */ (function () {
49
50
  */
50
51
  MessageConsumerPact.prototype.expectsToReceive = function (description) {
51
52
  if (lodash_1.isEmpty(description)) {
52
- throw new Error("You must provide a description for the Message.");
53
+ throw new configurationError_1.default("You must provide a description for the Message.");
53
54
  }
54
55
  this.state.description = description;
55
56
  return this;
@@ -64,7 +65,7 @@ var MessageConsumerPact = /** @class */ (function () {
64
65
  */
65
66
  MessageConsumerPact.prototype.withContent = function (content) {
66
67
  if (lodash_1.isEmpty(content)) {
67
- throw new Error("You must provide a valid JSON document or primitive for the Message.");
68
+ throw new configurationError_1.default("You must provide a valid JSON document or primitive for the Message.");
68
69
  }
69
70
  this.state.contents = content;
70
71
  return this;
@@ -77,7 +78,7 @@ var MessageConsumerPact = /** @class */ (function () {
77
78
  */
78
79
  MessageConsumerPact.prototype.withMetadata = function (metadata) {
79
80
  if (lodash_1.isEmpty(metadata)) {
80
- throw new Error("You must provide valid metadata for the Message, or none at all");
81
+ throw new configurationError_1.default("You must provide valid metadata for the Message, or none at all");
81
82
  }
82
83
  this.state.metadata = metadata;
83
84
  return this;
@@ -132,7 +133,7 @@ exports.MessageConsumerPact = MessageConsumerPact;
132
133
  var isMessage = function (x) {
133
134
  return x.contents !== undefined;
134
135
  };
135
- // TODO: create basic adapters for API handlers, e.g.
136
+ // TODO: create more basic adapters for API handlers
136
137
  // bodyHandler takes a synchronous function and returns
137
138
  // a wrapped function that accepts a Message and returns a Promise
138
139
  function synchronousBodyHandler(handler) {
@@ -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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"}
@@ -0,0 +1 @@
1
+ export {};