@pact-foundation/pact 13.1.3 → 13.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,22 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ### [13.1.5](https://github.com/pact-foundation/pact-js/compare/v13.1.4...v13.1.5) (2024-11-14)
6
+
7
+
8
+ ### Fixes and Improvements
9
+
10
+ * allow hooks to run only once per interaction ([#1243](https://github.com/pact-foundation/pact-js/issues/1243)) ([b238fd0](https://github.com/pact-foundation/pact-js/commit/b238fd040031107cdd700e4ff43ab18dedf69859))
11
+ * package.json & package-lock.json to reduce vulnerabilities ([99e101c](https://github.com/pact-foundation/pact-js/commit/99e101c3eebadab146c526770440f0d1df177195))
12
+ * replace basic auth pact broker with bearer token ([0c1af06](https://github.com/pact-foundation/pact-js/commit/0c1af06f664f73e9014b23dc6d58e97efebdfb7d))
13
+
14
+ ### [13.1.4](https://github.com/pact-foundation/pact-js/compare/v13.1.3...v13.1.4) (2024-10-08)
15
+
16
+
17
+ ### Fixes and Improvements
18
+
19
+ * support async afterEach hook ([8c7cef6](https://github.com/pact-foundation/pact-js/commit/8c7cef6cb73633dbc68996bf4ba4b0e7613682b6)), closes [#1241](https://github.com/pact-foundation/pact-js/issues/1241)
20
+
5
21
  ### [13.1.3](https://github.com/pact-foundation/pact-js/compare/v13.1.2...v13.1.3) (2024-09-12)
6
22
 
7
23
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pact-foundation/pact",
3
- "version": "13.1.3",
3
+ "version": "13.1.5",
4
4
  "description": "Pact for all things Javascript",
5
5
  "main": "./src/index.js",
6
6
  "types": "./src/index.d.ts",
@@ -21,10 +21,10 @@
21
21
  "pretest": "bash scripts/install-plugins.sh",
22
22
  "docker:alpine:build": "docker build --build-arg NODE_VERSION=${NODE_VERSION:-current} -f Dockerfile.alpine -t pact-js:alpine .",
23
23
  "docker:debian:build": "docker build --build-arg NODE_VERSION=${NODE_VERSION:-current} -f Dockerfile.debian -t pact-js:debian .",
24
- "docker:alpine:run": "docker run -e LOG_LEVEL=${LOG_LEVEL:-info} -e GIT_REF=${GIT_REF:-test} -e GITHUB_ACTIONS=${GITHUB_ACTIONS:-false} -e SKIP_EXAMPLES=${SKIP_EXAMPLES:-''} -w /home -v $(pwd):/home --rm pact-js:alpine",
25
- "docker:debian:run": "docker run -e LOG_LEVEL=${LOG_LEVEL:-info} -e GIT_REF=${GIT_REF:-test} -e GITHUB_ACTIONS=${GITHUB_ACTIONS:-false} -e SKIP_EXAMPLES=${SKIP_EXAMPLES:-''} -w /home -v $(pwd):/home --rm pact-js:debian",
26
- "docker:alpine:attach": "docker run -w /home -v $(pwd):/home --entrypoint /bin/bash --rm -it pact-js:alpine",
27
- "docker:debian:attach": "docker run -w /home -v $(pwd):/home --entrypoint /bin/bash --rm -it pact-js:debian"
24
+ "docker:alpine:run": "docker run -e LOG_LEVEL=${LOG_LEVEL:-info} -e GIT_REF=${GIT_REF:-test} -e GITHUB_ACTIONS=${GITHUB_ACTIONS:-false} -e SKIP_EXAMPLES=${SKIP_EXAMPLES:-''} -e PACT_BROKER_BASE_URL -e PACT_BROKER_TOKEN -w /home -v $(pwd):/home --rm pact-js:alpine",
25
+ "docker:debian:run": "docker run -e LOG_LEVEL=${LOG_LEVEL:-info} -e GIT_REF=${GIT_REF:-test} -e GITHUB_ACTIONS=${GITHUB_ACTIONS:-false} -e SKIP_EXAMPLES=${SKIP_EXAMPLES:-''} -e PACT_BROKER_BASE_URL -e PACT_BROKER_TOKEN -w /home -v $(pwd):/home --rm pact-js:debian",
26
+ "docker:alpine:attach": "docker run -e PACT_BROKER_BASE_URL -e PACT_BROKER_TOKEN -w /home -v $(pwd):/home --entrypoint /bin/bash --rm -it pact-js:alpine",
27
+ "docker:debian:attach": "docker run -e PACT_BROKER_BASE_URL -e PACT_BROKER_TOKEN -w /home -v $(pwd):/home --entrypoint /bin/bash --rm -it pact-js:debian"
28
28
  },
29
29
  "repository": {
30
30
  "type": "git",
@@ -106,7 +106,7 @@
106
106
  "axios": "^1.7.4",
107
107
  "body-parser": "^1.20.3",
108
108
  "cli-color": "^2.0.1",
109
- "express": "^4.21.0",
109
+ "express": "^4.21.1",
110
110
  "graphql": "^14.0.0",
111
111
  "graphql-tag": "^2.9.1",
112
112
  "http-proxy": "^1.18.1",
@@ -13,9 +13,6 @@ cp package.json ./dist
13
13
 
14
14
  export GIT_BRANCH=${GITHUB_HEAD_REF:-${GIT_REF#refs/heads/}}
15
15
 
16
- export PACT_BROKER_USERNAME="dXfltyFMgNOFZAxr8io9wJ37iUpY42M"
17
- export PACT_BROKER_PASSWORD="O5AIZWxelWbLvqMd8PkAVycBJh2Psyg1"
18
-
19
16
  "${SCRIPT_DIR}"/lib/prepare-release.sh
20
17
 
21
18
  echo "--> Running coverage checks"
@@ -1,4 +1,14 @@
1
- import express from 'express';
2
- import { ProxyOptions } from './types';
3
- export declare const registerBeforeHook: (app: express.Express, config: ProxyOptions, stateSetupPath: string) => void;
4
- export declare const registerAfterHook: (app: express.Express, config: ProxyOptions, stateSetupPath: string) => void;
1
+ /**
2
+ * These handlers assume that the number of "setup" and "teardown" requests to
3
+ * `/_pactSetup` are always sequential and balanced, i.e. if 3 "setup" actions
4
+ * are received prior to an interaction being executed, then 3 "teardown"
5
+ * actions will be received after that interaction has ended.
6
+ */
7
+ import { RequestHandler } from 'express';
8
+ import { Hook } from './types';
9
+ export type HooksState = {
10
+ setupCounter: number;
11
+ };
12
+ export declare const registerHookStateTracking: (hooksState: HooksState) => RequestHandler;
13
+ export declare const registerBeforeHook: (beforeEach: Hook, hooksState: HooksState) => RequestHandler;
14
+ export declare const registerAfterHook: (afterEach: Hook, hooksState: HooksState) => RequestHandler;
@@ -39,71 +39,93 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
39
39
  return (mod && mod.__esModule) ? mod : { "default": mod };
40
40
  };
41
41
  Object.defineProperty(exports, "__esModule", { value: true });
42
- exports.registerAfterHook = exports.registerBeforeHook = void 0;
42
+ exports.registerAfterHook = exports.registerBeforeHook = exports.registerHookStateTracking = void 0;
43
43
  var logger_1 = __importDefault(require("../../../common/logger"));
44
- var registerBeforeHook = function (app, config, stateSetupPath) {
45
- app.use(function (req, res, next) { return __awaiter(void 0, void 0, void 0, function () {
46
- var e_1;
47
- return __generator(this, function (_a) {
48
- switch (_a.label) {
49
- case 0:
50
- if (!(config.beforeEach !== undefined)) return [3 /*break*/, 4];
51
- logger_1.default.trace("registered 'beforeEach' hook");
52
- if (!(req.path === stateSetupPath)) return [3 /*break*/, 4];
53
- logger_1.default.debug("executing 'beforeEach' hook");
54
- _a.label = 1;
55
- case 1:
56
- _a.trys.push([1, 3, , 4]);
57
- return [4 /*yield*/, config.beforeEach()];
58
- case 2:
59
- _a.sent();
60
- return [3 /*break*/, 4];
61
- case 3:
62
- e_1 = _a.sent();
63
- logger_1.default.error("error executing 'beforeEach' hook: ".concat(e_1.message));
64
- logger_1.default.debug("Stack trace was: ".concat(e_1.stack));
65
- next(new Error("error executing 'beforeEach' hook: ".concat(e_1.message)));
66
- return [3 /*break*/, 4];
67
- case 4:
68
- next();
69
- return [2 /*return*/];
70
- }
44
+ var registerHookStateTracking = function (hooksState) {
45
+ return function (_a, res, next) {
46
+ var body = _a.body;
47
+ return __awaiter(void 0, void 0, void 0, function () {
48
+ return __generator(this, function (_b) {
49
+ if ((body === null || body === void 0 ? void 0 : body.action) === 'setup')
50
+ hooksState.setupCounter += 1;
51
+ if ((body === null || body === void 0 ? void 0 : body.action) === 'teardown')
52
+ hooksState.setupCounter -= 1;
53
+ logger_1.default.debug("hooks state counter is ".concat(hooksState.setupCounter, " after receiving \"").concat(body === null || body === void 0 ? void 0 : body.action, "\" action"));
54
+ next();
55
+ return [2 /*return*/];
56
+ });
57
+ });
58
+ };
59
+ };
60
+ exports.registerHookStateTracking = registerHookStateTracking;
61
+ var registerBeforeHook = function (beforeEach, hooksState) {
62
+ return function (_a, res, next) {
63
+ var body = _a.body;
64
+ return __awaiter(void 0, void 0, void 0, function () {
65
+ var e_1;
66
+ return __generator(this, function (_b) {
67
+ switch (_b.label) {
68
+ case 0:
69
+ if (!((body === null || body === void 0 ? void 0 : body.action) === 'setup' && hooksState.setupCounter === 1)) return [3 /*break*/, 5];
70
+ logger_1.default.debug("executing 'beforeEach' hook");
71
+ _b.label = 1;
72
+ case 1:
73
+ _b.trys.push([1, 3, , 4]);
74
+ return [4 /*yield*/, beforeEach()];
75
+ case 2:
76
+ _b.sent();
77
+ next();
78
+ return [3 /*break*/, 4];
79
+ case 3:
80
+ e_1 = _b.sent();
81
+ logger_1.default.error("error executing 'beforeEach' hook: ".concat(e_1.message));
82
+ logger_1.default.debug("Stack trace was: ".concat(e_1.stack));
83
+ next(new Error("error executing 'beforeEach' hook: ".concat(e_1.message)));
84
+ return [3 /*break*/, 4];
85
+ case 4: return [3 /*break*/, 6];
86
+ case 5:
87
+ next();
88
+ _b.label = 6;
89
+ case 6: return [2 /*return*/];
90
+ }
91
+ });
71
92
  });
72
- }); });
93
+ };
73
94
  };
74
95
  exports.registerBeforeHook = registerBeforeHook;
75
- var registerAfterHook = function (app, config, stateSetupPath) {
76
- app.use(function (req, res, next) { return __awaiter(void 0, void 0, void 0, function () {
77
- var e_2;
78
- return __generator(this, function (_a) {
79
- switch (_a.label) {
80
- case 0:
81
- if (!(config.afterEach !== undefined)) return [3 /*break*/, 5];
82
- logger_1.default.trace("registered 'afterEach' hook");
83
- next();
84
- if (!(req.path !== stateSetupPath)) return [3 /*break*/, 4];
85
- logger_1.default.debug("executing 'afterEach' hook");
86
- _a.label = 1;
87
- case 1:
88
- _a.trys.push([1, 3, , 4]);
89
- return [4 /*yield*/, config.afterEach()];
90
- case 2:
91
- _a.sent();
92
- return [3 /*break*/, 4];
93
- case 3:
94
- e_2 = _a.sent();
95
- logger_1.default.error("error executing 'afterEach' hook: ".concat(e_2.message));
96
- logger_1.default.debug("Stack trace was: ".concat(e_2.stack));
97
- next(new Error("error executing 'afterEach' hook: ".concat(e_2.message)));
98
- return [3 /*break*/, 4];
99
- case 4: return [3 /*break*/, 6];
100
- case 5:
101
- next();
102
- _a.label = 6;
103
- case 6: return [2 /*return*/];
104
- }
96
+ var registerAfterHook = function (afterEach, hooksState) {
97
+ return function (_a, res, next) {
98
+ var body = _a.body;
99
+ return __awaiter(void 0, void 0, void 0, function () {
100
+ var e_2;
101
+ return __generator(this, function (_b) {
102
+ switch (_b.label) {
103
+ case 0:
104
+ if (!((body === null || body === void 0 ? void 0 : body.action) === 'teardown' && hooksState.setupCounter === 0)) return [3 /*break*/, 5];
105
+ logger_1.default.debug("executing 'afterEach' hook");
106
+ _b.label = 1;
107
+ case 1:
108
+ _b.trys.push([1, 3, , 4]);
109
+ return [4 /*yield*/, afterEach()];
110
+ case 2:
111
+ _b.sent();
112
+ next();
113
+ return [3 /*break*/, 4];
114
+ case 3:
115
+ e_2 = _b.sent();
116
+ logger_1.default.error("error executing 'afterEach' hook: ".concat(e_2.message));
117
+ logger_1.default.debug("Stack trace was: ".concat(e_2.stack));
118
+ next(new Error("error executing 'afterEach' hook: ".concat(e_2.message)));
119
+ return [3 /*break*/, 4];
120
+ case 4: return [3 /*break*/, 6];
121
+ case 5:
122
+ next();
123
+ _b.label = 6;
124
+ case 6: return [2 /*return*/];
125
+ }
126
+ });
105
127
  });
106
- }); });
128
+ };
107
129
  };
108
130
  exports.registerAfterHook = registerAfterHook;
109
131
  //# sourceMappingURL=hooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../../src/dsl/verifier/proxy/hooks.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,kEAA4C;AAGrC,IAAM,kBAAkB,GAAG,UAChC,GAAoB,EACpB,MAAoB,EACpB,cAAsB;IAEtB,GAAG,CAAC,GAAG,CAAC,UAAO,GAAG,EAAE,GAAG,EAAE,IAAI;;;;;yBACvB,CAAA,MAAM,CAAC,UAAU,KAAK,SAAS,CAAA,EAA/B,wBAA+B;oBACjC,gBAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;yBACzC,CAAA,GAAG,CAAC,IAAI,KAAK,cAAc,CAAA,EAA3B,wBAA2B;oBAC7B,gBAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;;;;oBAE1C,qBAAM,MAAM,CAAC,UAAU,EAAE,EAAA;;oBAAzB,SAAyB,CAAC;;;;oBAE1B,gBAAM,CAAC,KAAK,CAAC,6CAAsC,GAAC,CAAC,OAAO,CAAE,CAAC,CAAC;oBAChE,gBAAM,CAAC,KAAK,CAAC,2BAAoB,GAAC,CAAC,KAAK,CAAE,CAAC,CAAC;oBAC5C,IAAI,CAAC,IAAI,KAAK,CAAC,6CAAsC,GAAC,CAAC,OAAO,CAAE,CAAC,CAAC,CAAC;;;oBAIzE,IAAI,EAAE,CAAC;;;;SACR,CAAC,CAAC;AACL,CAAC,CAAC;AArBW,QAAA,kBAAkB,sBAqB7B;AAEK,IAAM,iBAAiB,GAAG,UAC/B,GAAoB,EACpB,MAAoB,EACpB,cAAsB;IAEtB,GAAG,CAAC,GAAG,CAAC,UAAO,GAAG,EAAE,GAAG,EAAE,IAAI;;;;;yBACvB,CAAA,MAAM,CAAC,SAAS,KAAK,SAAS,CAAA,EAA9B,wBAA8B;oBAChC,gBAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;oBAC5C,IAAI,EAAE,CAAC;yBACH,CAAA,GAAG,CAAC,IAAI,KAAK,cAAc,CAAA,EAA3B,wBAA2B;oBAC7B,gBAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;;;;oBAEzC,qBAAM,MAAM,CAAC,SAAS,EAAE,EAAA;;oBAAxB,SAAwB,CAAC;;;;oBAEzB,gBAAM,CAAC,KAAK,CAAC,4CAAqC,GAAC,CAAC,OAAO,CAAE,CAAC,CAAC;oBAC/D,gBAAM,CAAC,KAAK,CAAC,2BAAoB,GAAC,CAAC,KAAK,CAAE,CAAC,CAAC;oBAC5C,IAAI,CAAC,IAAI,KAAK,CAAC,4CAAqC,GAAC,CAAC,OAAO,CAAE,CAAC,CAAC,CAAC;;;;oBAItE,IAAI,EAAE,CAAC;;;;;SAEV,CAAC,CAAC;AACL,CAAC,CAAC;AAvBW,QAAA,iBAAiB,qBAuB5B"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../../src/dsl/verifier/proxy/hooks.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,kEAA4C;AAOrC,IAAM,yBAAyB,GACpC,UAAC,UAAsB;IACvB,OAAA,UAAO,EAAQ,EAAE,GAAG,EAAE,IAAI;YAAjB,IAAI,UAAA;;;gBACX,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAK,OAAO;oBAAE,UAAU,CAAC,YAAY,IAAI,CAAC,CAAC;gBAC3D,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAK,UAAU;oBAAE,UAAU,CAAC,YAAY,IAAI,CAAC,CAAC;gBAE9D,gBAAM,CAAC,KAAK,CACV,iCAA0B,UAAU,CAAC,YAAY,gCAAqB,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,cAAU,CAC7F,CAAC;gBAEF,IAAI,EAAE,CAAC;;;;KACR;AATD,CASC,CAAC;AAXS,QAAA,yBAAyB,6BAWlC;AAEG,IAAM,kBAAkB,GAC7B,UAAC,UAAgB,EAAE,UAAsB;IACzC,OAAA,UAAO,EAAQ,EAAE,GAAG,EAAE,IAAI;YAAjB,IAAI,UAAA;;;;;;6BACP,CAAA,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAK,OAAO,IAAI,UAAU,CAAC,YAAY,KAAK,CAAC,CAAA,EAAzD,wBAAyD;wBAC3D,gBAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;;;;wBAE1C,qBAAM,UAAU,EAAE,EAAA;;wBAAlB,SAAkB,CAAC;wBACnB,IAAI,EAAE,CAAC;;;;wBAEP,gBAAM,CAAC,KAAK,CAAC,6CAAsC,GAAC,CAAC,OAAO,CAAE,CAAC,CAAC;wBAChE,gBAAM,CAAC,KAAK,CAAC,2BAAoB,GAAC,CAAC,KAAK,CAAE,CAAC,CAAC;wBAC5C,IAAI,CAAC,IAAI,KAAK,CAAC,6CAAsC,GAAC,CAAC,OAAO,CAAE,CAAC,CAAC,CAAC;;;;wBAGrE,IAAI,EAAE,CAAC;;;;;;KAEV;AAdD,CAcC,CAAC;AAhBS,QAAA,kBAAkB,sBAgB3B;AAEG,IAAM,iBAAiB,GAC5B,UAAC,SAAe,EAAE,UAAsB;IACxC,OAAA,UAAO,EAAQ,EAAE,GAAG,EAAE,IAAI;YAAjB,IAAI,UAAA;;;;;;6BACP,CAAA,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAK,UAAU,IAAI,UAAU,CAAC,YAAY,KAAK,CAAC,CAAA,EAA5D,wBAA4D;wBAC9D,gBAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;;;;wBAEzC,qBAAM,SAAS,EAAE,EAAA;;wBAAjB,SAAiB,CAAC;wBAClB,IAAI,EAAE,CAAC;;;;wBAEP,gBAAM,CAAC,KAAK,CAAC,4CAAqC,GAAC,CAAC,OAAO,CAAE,CAAC,CAAC;wBAC/D,gBAAM,CAAC,KAAK,CAAC,2BAAoB,GAAC,CAAC,KAAK,CAAE,CAAC,CAAC;wBAC5C,IAAI,CAAC,IAAI,KAAK,CAAC,4CAAqC,GAAC,CAAC,OAAO,CAAE,CAAC,CAAC,CAAC;;;;wBAGpE,IAAI,EAAE,CAAC;;;;;;KAEV;AAdD,CAcC,CAAC;AAhBS,QAAA,iBAAiB,qBAgB1B"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,214 @@
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;
13
+ return g = { next: verb(0), "throw": verb(1), "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
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ var chai_1 = require("chai");
40
+ var sinon_1 = require("sinon");
41
+ var hooks_1 = require("./hooks");
42
+ // This mimics the proxy setup (src/dsl/verifier/proxy/proxy.ts), whereby the
43
+ // state handling middleware is run regardless of whether a hook is registered
44
+ // or not.
45
+ var doRequest = function (action, hooksState, hookHandler) { return __awaiter(void 0, void 0, void 0, function () {
46
+ var hooksStateHandler, hookRequestHandler, request;
47
+ return __generator(this, function (_a) {
48
+ hooksStateHandler = (0, hooks_1.registerHookStateTracking)(hooksState);
49
+ hookRequestHandler = hookHandler || (function (req, res, next) { return next(); });
50
+ request = {
51
+ body: {
52
+ action: action,
53
+ },
54
+ };
55
+ return [2 /*return*/, new Promise(function (resolve) {
56
+ hooksStateHandler(request, null, function () {
57
+ hookRequestHandler(request, null, resolve);
58
+ });
59
+ })];
60
+ });
61
+ }); };
62
+ describe('Verifier', function () {
63
+ describe('#registerBeforeHook', function () {
64
+ describe('when the state setup routine is called multiple times before the next teardown', function () {
65
+ it('it executes the beforeEach hook only once', function () { return __awaiter(void 0, void 0, void 0, function () {
66
+ var hooksState, hook, hookHandler;
67
+ return __generator(this, function (_a) {
68
+ switch (_a.label) {
69
+ case 0:
70
+ hooksState = { setupCounter: 0 };
71
+ hook = (0, sinon_1.stub)().resolves();
72
+ hookHandler = (0, hooks_1.registerBeforeHook)(hook, hooksState);
73
+ return [4 /*yield*/, doRequest('setup', hooksState, hookHandler)];
74
+ case 1:
75
+ _a.sent();
76
+ return [4 /*yield*/, doRequest('setup', hooksState, hookHandler)];
77
+ case 2:
78
+ _a.sent();
79
+ return [4 /*yield*/, doRequest('teardown', hooksState)];
80
+ case 3:
81
+ _a.sent();
82
+ return [4 /*yield*/, doRequest('teardown', hooksState)];
83
+ case 4:
84
+ _a.sent();
85
+ (0, chai_1.expect)(hook).to.be.calledOnce;
86
+ return [2 /*return*/];
87
+ }
88
+ });
89
+ }); });
90
+ });
91
+ });
92
+ describe('#registerAfterHook', function () {
93
+ describe('when the state teardown routine is called multiple times before the next setup', function () {
94
+ it('it executes the afterEach hook only once', function () { return __awaiter(void 0, void 0, void 0, function () {
95
+ var hooksState, hook, hookHandler;
96
+ return __generator(this, function (_a) {
97
+ switch (_a.label) {
98
+ case 0:
99
+ hooksState = { setupCounter: 0 };
100
+ hook = (0, sinon_1.stub)().resolves();
101
+ hookHandler = (0, hooks_1.registerAfterHook)(hook, hooksState);
102
+ return [4 /*yield*/, doRequest('setup', hooksState)];
103
+ case 1:
104
+ _a.sent();
105
+ return [4 /*yield*/, doRequest('setup', hooksState)];
106
+ case 2:
107
+ _a.sent();
108
+ return [4 /*yield*/, doRequest('teardown', hooksState, hookHandler)];
109
+ case 3:
110
+ _a.sent();
111
+ return [4 /*yield*/, doRequest('teardown', hooksState, hookHandler)];
112
+ case 4:
113
+ _a.sent();
114
+ (0, chai_1.expect)(hook).to.be.calledOnce;
115
+ return [2 /*return*/];
116
+ }
117
+ });
118
+ }); });
119
+ });
120
+ });
121
+ describe('#registerBeforeHook and #registerAfterHook', function () {
122
+ describe('when the state teardown routine is called multiple times before the next setup', function () {
123
+ it('it executes the beforeEach and afterEach hooks only once', function () { return __awaiter(void 0, void 0, void 0, function () {
124
+ var hooksState, beforeHook, afterHook, beforeHookHandler, afterHookHandler;
125
+ return __generator(this, function (_a) {
126
+ switch (_a.label) {
127
+ case 0:
128
+ hooksState = { setupCounter: 0 };
129
+ beforeHook = (0, sinon_1.stub)().resolves();
130
+ afterHook = (0, sinon_1.stub)().resolves();
131
+ beforeHookHandler = (0, hooks_1.registerBeforeHook)(beforeHook, hooksState);
132
+ afterHookHandler = (0, hooks_1.registerAfterHook)(afterHook, hooksState);
133
+ return [4 /*yield*/, doRequest('setup', hooksState, beforeHookHandler)];
134
+ case 1:
135
+ _a.sent();
136
+ return [4 /*yield*/, doRequest('setup', hooksState, beforeHookHandler)];
137
+ case 2:
138
+ _a.sent();
139
+ return [4 /*yield*/, doRequest('teardown', hooksState, afterHookHandler)];
140
+ case 3:
141
+ _a.sent();
142
+ return [4 /*yield*/, doRequest('teardown', hooksState, afterHookHandler)];
143
+ case 4:
144
+ _a.sent();
145
+ (0, chai_1.expect)(beforeHook).to.be.calledOnce;
146
+ (0, chai_1.expect)(afterHook).to.be.calledOnce;
147
+ return [2 /*return*/];
148
+ }
149
+ });
150
+ }); });
151
+ });
152
+ describe('when multiple interactions are executed', function () {
153
+ it('it executes the beforeEach and afterEach hooks once for each interaction', function () { return __awaiter(void 0, void 0, void 0, function () {
154
+ var hooksState, beforeHook, afterHook, beforeHookHandler, afterHookHandler;
155
+ return __generator(this, function (_a) {
156
+ switch (_a.label) {
157
+ case 0:
158
+ hooksState = { setupCounter: 0 };
159
+ beforeHook = (0, sinon_1.stub)().resolves();
160
+ afterHook = (0, sinon_1.stub)().resolves();
161
+ beforeHookHandler = (0, hooks_1.registerBeforeHook)(beforeHook, hooksState);
162
+ afterHookHandler = (0, hooks_1.registerAfterHook)(afterHook, hooksState);
163
+ // Interaction 1 (two "given" states)
164
+ return [4 /*yield*/, doRequest('setup', hooksState, beforeHookHandler)];
165
+ case 1:
166
+ // Interaction 1 (two "given" states)
167
+ _a.sent();
168
+ return [4 /*yield*/, doRequest('setup', hooksState, beforeHookHandler)];
169
+ case 2:
170
+ _a.sent();
171
+ return [4 /*yield*/, doRequest('teardown', hooksState, afterHookHandler)];
172
+ case 3:
173
+ _a.sent();
174
+ return [4 /*yield*/, doRequest('teardown', hooksState, afterHookHandler)];
175
+ case 4:
176
+ _a.sent();
177
+ // Interaction 2 (one "given" state)
178
+ return [4 /*yield*/, doRequest('setup', hooksState, beforeHookHandler)];
179
+ case 5:
180
+ // Interaction 2 (one "given" state)
181
+ _a.sent();
182
+ return [4 /*yield*/, doRequest('teardown', hooksState, afterHookHandler)];
183
+ case 6:
184
+ _a.sent();
185
+ // Interaction 3 (three "given" states)
186
+ return [4 /*yield*/, doRequest('setup', hooksState, beforeHookHandler)];
187
+ case 7:
188
+ // Interaction 3 (three "given" states)
189
+ _a.sent();
190
+ return [4 /*yield*/, doRequest('setup', hooksState, beforeHookHandler)];
191
+ case 8:
192
+ _a.sent();
193
+ return [4 /*yield*/, doRequest('setup', hooksState, beforeHookHandler)];
194
+ case 9:
195
+ _a.sent();
196
+ return [4 /*yield*/, doRequest('teardown', hooksState, afterHookHandler)];
197
+ case 10:
198
+ _a.sent();
199
+ return [4 /*yield*/, doRequest('teardown', hooksState, afterHookHandler)];
200
+ case 11:
201
+ _a.sent();
202
+ return [4 /*yield*/, doRequest('teardown', hooksState, afterHookHandler)];
203
+ case 12:
204
+ _a.sent();
205
+ (0, chai_1.expect)(beforeHook).to.be.calledThrice;
206
+ (0, chai_1.expect)(afterHook).to.be.calledThrice;
207
+ return [2 /*return*/];
208
+ }
209
+ });
210
+ }); });
211
+ });
212
+ });
213
+ });
214
+ //# sourceMappingURL=hooks.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.spec.js","sourceRoot":"","sources":["../../../../../src/dsl/verifier/proxy/hooks.spec.ts"],"names":[],"mappings":"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"}
@@ -63,8 +63,19 @@ var createProxy = function (config, stateSetupPath, messageTransportPath) {
63
63
  }));
64
64
  app.use(body_parser_1.default.urlencoded({ extended: true }));
65
65
  app.use('/*', body_parser_1.default.raw({ type: '*/*' }));
66
- (0, hooks_1.registerBeforeHook)(app, config, stateSetupPath);
67
- (0, hooks_1.registerAfterHook)(app, config, stateSetupPath);
66
+ // Hooks
67
+ var hooksState = {
68
+ setupCounter: 0,
69
+ };
70
+ app.use(stateSetupPath, (0, hooks_1.registerHookStateTracking)(hooksState));
71
+ if (config.beforeEach) {
72
+ logger_1.default.trace("registered 'beforeEach' hook");
73
+ app.use(stateSetupPath, (0, hooks_1.registerBeforeHook)(config.beforeEach, hooksState));
74
+ }
75
+ if (config.afterEach) {
76
+ logger_1.default.trace("registered 'afterEach' hook");
77
+ app.use(stateSetupPath, (0, hooks_1.registerAfterHook)(config.afterEach, hooksState));
78
+ }
68
79
  // Trace req/res logging
69
80
  if (config.logLevel === 'debug' || config.logLevel === 'trace') {
70
81
  logger_1.default.info('debug request/response logging enabled');
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../../../src/dsl/verifier/proxy/proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../../../src/dsl/verifier/proxy/proxy.ts"],"names":[],"mappings":"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"}