@pact-foundation/pact 10.0.0-beta.9 → 10.1.0-beta.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.
- package/CHANGELOG.md +2444 -1
- package/CODE_OF_CONDUCT.md +1 -1
- package/CONTRIBUTING.md +49 -12
- package/MIGRATION.md +77 -0
- package/README.md +180 -1274
- package/RELEASING.md +63 -59
- package/package.json +95 -97
- package/src/common/jsonTypes.d.ts +5 -0
- package/src/common/jsonTypes.js +3 -0
- package/src/common/jsonTypes.js.map +1 -0
- package/src/common/logger.d.ts +10 -0
- package/src/common/logger.js +32 -0
- package/src/common/logger.js.map +1 -0
- package/src/common/net.d.ts +9 -0
- package/src/common/net.js +82 -0
- package/src/common/net.js.map +1 -0
- package/{common → src/common}/net.spec.d.ts +0 -0
- package/src/common/net.spec.js +69 -0
- package/src/common/net.spec.js.map +1 -0
- package/src/common/request.d.ts +21 -0
- package/src/common/request.js +110 -0
- package/src/common/request.js.map +1 -0
- package/{common → src/common}/request.spec.d.ts +0 -0
- package/src/common/request.spec.js +69 -0
- package/src/common/request.spec.js.map +1 -0
- package/src/common/spec.d.ts +2 -0
- package/src/common/spec.js +22 -0
- package/src/common/spec.js.map +1 -0
- package/{dsl → src/dsl}/apolloGraphql.d.ts +1 -1
- package/{dsl → src/dsl}/apolloGraphql.js +4 -1
- package/src/dsl/apolloGraphql.js.map +1 -0
- package/{dsl → src/dsl}/apolloGraphql.spec.d.ts +0 -0
- package/src/dsl/apolloGraphql.spec.js +74 -0
- package/src/dsl/apolloGraphql.spec.js.map +1 -0
- package/{dsl → src/dsl}/graphql.d.ts +19 -8
- package/{dsl → src/dsl}/graphql.js +59 -31
- package/src/dsl/graphql.js.map +1 -0
- package/{dsl → src/dsl}/graphql.spec.d.ts +0 -0
- package/src/dsl/graphql.spec.js +229 -0
- package/src/dsl/graphql.spec.js.map +1 -0
- package/{dsl → src/dsl}/interaction.d.ts +22 -20
- package/src/dsl/interaction.js +144 -0
- package/src/dsl/interaction.js.map +1 -0
- package/{dsl → src/dsl}/interaction.spec.d.ts +0 -0
- package/src/dsl/interaction.spec.js +214 -0
- package/src/dsl/interaction.spec.js.map +1 -0
- package/src/dsl/matchers.d.ts +143 -0
- package/{dsl → src/dsl}/matchers.js +92 -93
- package/src/dsl/matchers.js.map +1 -0
- package/{dsl → src/dsl}/matchers.spec.d.ts +0 -0
- package/src/dsl/matchers.spec.js +668 -0
- package/src/dsl/matchers.spec.js.map +1 -0
- package/{dsl → src/dsl}/message.d.ts +32 -12
- package/{dsl → src/dsl}/message.js +0 -0
- package/{dsl → src/dsl}/message.js.map +1 -1
- package/src/dsl/mockService.d.ts +13 -0
- package/src/dsl/mockService.js +3 -0
- package/src/dsl/mockService.js.map +1 -0
- package/{dsl → src/dsl}/options.d.ts +7 -6
- package/{dsl → src/dsl}/options.js +0 -0
- package/{dsl → src/dsl}/options.js.map +1 -1
- package/src/dsl/verifier/index.d.ts +1 -0
- package/src/dsl/verifier/index.js +18 -0
- package/src/dsl/verifier/index.js.map +1 -0
- package/src/dsl/verifier/proxy/hooks.d.ts +4 -0
- package/src/dsl/verifier/proxy/hooks.js +109 -0
- package/src/dsl/verifier/proxy/hooks.js.map +1 -0
- package/src/dsl/verifier/proxy/index.d.ts +1 -0
- package/src/dsl/verifier/proxy/index.js +18 -0
- package/src/dsl/verifier/proxy/index.js.map +1 -0
- package/src/dsl/verifier/proxy/parseBody.d.ts +7 -0
- package/src/dsl/verifier/proxy/parseBody.js +22 -0
- package/src/dsl/verifier/proxy/parseBody.js.map +1 -0
- package/{dsl/mockService.spec.d.ts → src/dsl/verifier/proxy/parseBody.spec.d.ts} +0 -0
- package/src/dsl/verifier/proxy/parseBody.spec.js +118 -0
- package/src/dsl/verifier/proxy/parseBody.spec.js.map +1 -0
- package/src/dsl/verifier/proxy/proxy.d.ts +4 -0
- package/src/dsl/verifier/proxy/proxy.js +92 -0
- package/src/dsl/verifier/proxy/proxy.js.map +1 -0
- package/{dsl/publisher.spec.d.ts → src/dsl/verifier/proxy/proxy.spec.d.ts} +0 -0
- package/src/dsl/verifier/proxy/proxy.spec.js +33 -0
- package/src/dsl/verifier/proxy/proxy.spec.js.map +1 -0
- package/src/dsl/verifier/proxy/stateHandler/index.d.ts +1 -0
- package/src/dsl/verifier/proxy/stateHandler/index.js +18 -0
- package/src/dsl/verifier/proxy/stateHandler/index.js.map +1 -0
- package/src/dsl/verifier/proxy/stateHandler/setupStates.d.ts +3 -0
- package/src/dsl/verifier/proxy/stateHandler/setupStates.js +48 -0
- package/src/dsl/verifier/proxy/stateHandler/setupStates.js.map +1 -0
- package/{dsl/verifier.spec.d.ts → src/dsl/verifier/proxy/stateHandler/setupStates.spec.d.ts} +0 -0
- package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js +191 -0
- package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js.map +1 -0
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.d.ts +3 -0
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.js +14 -0
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.js.map +1 -0
- package/{httpPact.spec.d.ts → src/dsl/verifier/proxy/stateHandler/stateHandler.spec.d.ts} +0 -0
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js +130 -0
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js.map +1 -0
- package/src/dsl/verifier/proxy/tracer.d.ts +3 -0
- package/src/dsl/verifier/proxy/tracer.js +52 -0
- package/src/dsl/verifier/proxy/tracer.js.map +1 -0
- package/src/dsl/verifier/proxy/types.d.ts +48 -0
- package/src/dsl/verifier/proxy/types.js +3 -0
- package/src/dsl/verifier/proxy/types.js.map +1 -0
- package/src/dsl/verifier/types.d.ts +3 -0
- package/src/dsl/verifier/types.js +3 -0
- package/src/dsl/verifier/types.js.map +1 -0
- package/src/dsl/verifier/verifier.d.ts +16 -0
- package/src/dsl/verifier/verifier.js +129 -0
- package/src/dsl/verifier/verifier.js.map +1 -0
- package/{messageConsumerPact.spec.d.ts → src/dsl/verifier/verifier.spec.d.ts} +0 -0
- package/src/dsl/verifier/verifier.spec.js +172 -0
- package/src/dsl/verifier/verifier.spec.js.map +1 -0
- package/{errors → src/errors}/configurationError.d.ts +0 -0
- package/{errors → src/errors}/configurationError.js +3 -1
- package/src/errors/configurationError.js.map +1 -0
- package/{errors → src/errors}/graphQLQueryError.d.ts +0 -0
- package/{errors → src/errors}/graphQLQueryError.js +3 -1
- package/src/errors/graphQLQueryError.js.map +1 -0
- package/{errors → src/errors}/matcherError.d.ts +0 -0
- package/{errors → src/errors}/matcherError.js +3 -1
- package/src/errors/matcherError.js.map +1 -0
- package/{errors → src/errors}/verificationError.d.ts +0 -0
- package/{errors → src/errors}/verificationError.js +3 -1
- package/src/errors/verificationError.js.map +1 -0
- package/src/httpPact/ffi.d.ts +15 -0
- package/src/httpPact/ffi.js +91 -0
- package/src/httpPact/ffi.js.map +1 -0
- package/{messageProviderPact.spec.d.ts → src/httpPact/ffi.spec.d.ts} +0 -0
- package/src/httpPact/ffi.spec.js +81 -0
- package/src/httpPact/ffi.spec.js.map +1 -0
- package/{httpPact.d.ts → src/httpPact/index.d.ts} +12 -12
- package/src/httpPact/index.js +311 -0
- package/src/httpPact/index.js.map +1 -0
- package/{pact-web.spec.d.ts → src/httpPact/index.spec.d.ts} +0 -0
- package/src/httpPact/index.spec.js +238 -0
- package/src/httpPact/index.spec.js.map +1 -0
- package/src/httpPact/tracing.d.ts +1 -0
- package/src/httpPact/tracing.js +53 -0
- package/src/httpPact/tracing.js.map +1 -0
- package/{pact.d.ts → src/index.d.ts} +22 -21
- package/src/index.js +107 -0
- package/src/index.js.map +1 -0
- package/src/messageConsumerPact.d.ts +86 -0
- package/src/messageConsumerPact.js +222 -0
- package/src/messageConsumerPact.js.map +1 -0
- package/src/messageConsumerPact.spec.d.ts +1 -0
- package/src/messageConsumerPact.spec.js +117 -0
- package/src/messageConsumerPact.spec.js.map +1 -0
- package/{messageProviderPact.d.ts → src/messageProviderPact.d.ts} +7 -4
- package/src/messageProviderPact.js +190 -0
- package/src/messageProviderPact.js.map +1 -0
- package/src/messageProviderPact.spec.d.ts +1 -0
- package/src/messageProviderPact.spec.js +183 -0
- package/src/messageProviderPact.spec.js.map +1 -0
- package/{pact.integration.spec.d.ts → src/pact.integration.spec.d.ts} +0 -0
- package/{pact.integration.spec.js → src/pact.integration.spec.js} +0 -0
- package/src/pact.integration.spec.js.map +1 -0
- package/src/v3/display.d.ts +6 -0
- package/src/v3/display.js +83 -0
- package/src/v3/display.js.map +1 -0
- package/src/v3/index.d.ts +17 -0
- package/src/v3/index.js +47 -0
- package/src/v3/index.js.map +1 -0
- package/src/v3/matchers.d.ts +182 -0
- package/src/v3/matchers.js +443 -0
- package/src/v3/matchers.js.map +1 -0
- package/src/v3/matchers.spec.d.ts +1 -0
- package/src/v3/matchers.spec.js +461 -0
- package/src/v3/matchers.spec.js.map +1 -0
- package/src/v3/pact.d.ts +21 -0
- package/src/v3/pact.js +240 -0
- package/src/v3/pact.js.map +1 -0
- package/src/v3/types.d.ts +81 -0
- package/src/v3/types.js +11 -0
- package/src/v3/types.js.map +1 -0
- package/{v3 → src/v3}/xml/xmlBuilder.d.ts +2 -2
- package/{v3 → src/v3}/xml/xmlBuilder.js +2 -1
- package/src/v3/xml/xmlBuilder.js.map +1 -0
- package/src/v3/xml/xmlElement.d.ts +27 -0
- package/{v3 → src/v3}/xml/xmlElement.js +21 -15
- package/src/v3/xml/xmlElement.js.map +1 -0
- package/src/v3/xml/xmlElement.spec.d.ts +1 -0
- package/src/v3/xml/xmlElement.spec.js +102 -0
- package/src/v3/xml/xmlElement.spec.js.map +1 -0
- package/{v3 → src/v3}/xml/xmlNode.d.ts +0 -0
- package/{v3 → src/v3}/xml/xmlNode.js +1 -0
- package/src/v3/xml/xmlNode.js.map +1 -0
- package/src/v3/xml/xmlText.d.ts +7 -0
- package/{v3 → src/v3}/xml/xmlText.js +4 -1
- package/src/v3/xml/xmlText.js.map +1 -0
- package/test/helper.d.ts +1 -0
- package/test/helper.js +37 -0
- package/test/helper.js.map +1 -0
- package/ROADMAP.md +0 -20
- package/common/logger.d.ts +0 -7
- package/common/logger.js +0 -56
- package/common/logger.js.map +0 -1
- package/common/metadata.d.ts +0 -0
- package/common/metadata.js +0 -2
- package/common/metadata.js.map +0 -1
- package/common/net.d.ts +0 -9
- package/common/net.js +0 -48
- package/common/net.js.map +0 -1
- package/common/net.spec.js +0 -67
- package/common/net.spec.js.map +0 -1
- package/common/request.d.ts +0 -14
- package/common/request.js +0 -47
- package/common/request.js.map +0 -1
- package/common/request.spec.js +0 -71
- package/common/request.spec.js.map +0 -1
- package/common/utils.d.ts +0 -2
- package/common/utils.js +0 -10
- package/common/utils.js.map +0 -1
- package/dsl/apolloGraphql.js.map +0 -1
- package/dsl/apolloGraphql.spec.js +0 -47
- package/dsl/apolloGraphql.spec.js.map +0 -1
- package/dsl/graphql.js.map +0 -1
- package/dsl/graphql.spec.js +0 -150
- package/dsl/graphql.spec.js.map +0 -1
- package/dsl/interaction.js +0 -112
- package/dsl/interaction.js.map +0 -1
- package/dsl/interaction.spec.js +0 -217
- package/dsl/interaction.spec.js.map +0 -1
- package/dsl/matchers.d.ts +0 -269
- package/dsl/matchers.js.map +0 -1
- package/dsl/matchers.spec.js +0 -563
- package/dsl/matchers.spec.js.map +0 -1
- package/dsl/mockService.d.ts +0 -58
- package/dsl/mockService.js +0 -74
- package/dsl/mockService.js.map +0 -1
- package/dsl/mockService.spec.js +0 -126
- package/dsl/mockService.spec.js.map +0 -1
- package/dsl/publisher.d.ts +0 -6
- package/dsl/publisher.js +0 -19
- package/dsl/publisher.js.map +0 -1
- package/dsl/publisher.spec.js +0 -21
- package/dsl/publisher.spec.js.map +0 -1
- package/dsl/verifier.d.ts +0 -39
- package/dsl/verifier.js +0 -173
- package/dsl/verifier.js.map +0 -1
- package/dsl/verifier.spec.js +0 -299
- package/dsl/verifier.spec.js.map +0 -1
- package/errors/configurationError.js.map +0 -1
- package/errors/graphQLQueryError.js.map +0 -1
- package/errors/matcherError.js.map +0 -1
- package/errors/verificationError.js.map +0 -1
- package/httpPact.js +0 -206
- package/httpPact.js.map +0 -1
- package/httpPact.spec.js +0 -337
- package/httpPact.spec.js.map +0 -1
- package/messageConsumerPact.d.ts +0 -67
- package/messageConsumerPact.js +0 -161
- package/messageConsumerPact.js.map +0 -1
- package/messageConsumerPact.spec.js +0 -161
- package/messageConsumerPact.spec.js.map +0 -1
- package/messageProviderPact.js +0 -139
- package/messageProviderPact.js.map +0 -1
- package/messageProviderPact.spec.js +0 -143
- package/messageProviderPact.spec.js.map +0 -1
- package/pact-web.d.ts +0 -100
- package/pact-web.js +0 -151
- package/pact-web.js.map +0 -1
- package/pact-web.spec.js +0 -191
- package/pact-web.spec.js.map +0 -1
- package/pact.integration.spec.js.map +0 -1
- package/pact.js +0 -74
- package/pact.js.map +0 -1
- package/v3/index.d.ts +0 -23
- package/v3/index.js +0 -33
- package/v3/index.js.map +0 -1
- package/v3/matchers.d.ts +0 -199
- package/v3/matchers.js +0 -305
- package/v3/matchers.js.map +0 -1
- package/v3/pact.d.ts +0 -47
- package/v3/pact.js +0 -101
- package/v3/pact.js.map +0 -1
- package/v3/verifier.d.ts +0 -27
- package/v3/verifier.js +0 -46
- package/v3/verifier.js.map +0 -1
- package/v3/xml/xmlBuilder.js.map +0 -1
- package/v3/xml/xmlElement.d.ts +0 -34
- package/v3/xml/xmlElement.js.map +0 -1
- package/v3/xml/xmlNode.js.map +0 -1
- package/v3/xml/xmlText.d.ts +0 -6
- package/v3/xml/xmlText.js.map +0 -1
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
// @ts-nocheck
|
|
7
|
+
var chai_1 = __importDefault(require("chai"));
|
|
8
|
+
var chai_as_promised_1 = __importDefault(require("chai-as-promised"));
|
|
9
|
+
var sinon_1 = __importDefault(require("sinon"));
|
|
10
|
+
var sinon_chai_1 = __importDefault(require("sinon-chai"));
|
|
11
|
+
var ffi_1 = require("./ffi");
|
|
12
|
+
chai_1.default.use(sinon_chai_1.default);
|
|
13
|
+
chai_1.default.use(chai_as_promised_1.default);
|
|
14
|
+
var expect = chai_1.default.expect;
|
|
15
|
+
describe('Pact FFI', function () {
|
|
16
|
+
describe('#contentTypeFromHeaders', function () {
|
|
17
|
+
['content-type', 'Content-Type', 'CONTent-TYPE'].forEach(function (t) {
|
|
18
|
+
describe("when the \"".concat(t, "\" header is set"), function () {
|
|
19
|
+
it('detects the content type from the header', function () {
|
|
20
|
+
var _a;
|
|
21
|
+
var headers = (_a = {}, _a[t] = 'some-mime-type', _a);
|
|
22
|
+
expect((0, ffi_1.contentTypeFromHeaders)(headers, 'application/json')).to.eq('some-mime-type');
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
describe("when the no content-type header is set", function () {
|
|
27
|
+
it('uses a default', function () {
|
|
28
|
+
expect((0, ffi_1.contentTypeFromHeaders)({}, 'application/json')).to.eq('application/json');
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
describe('#setQuery', function () {
|
|
33
|
+
describe('with array values', function () {
|
|
34
|
+
it('calls the query ffi function for each value', function () {
|
|
35
|
+
var queryMock = sinon_1.default.stub();
|
|
36
|
+
var interaction = {
|
|
37
|
+
withQuery: queryMock,
|
|
38
|
+
};
|
|
39
|
+
var query = {
|
|
40
|
+
foo: ['bar', 'baz'],
|
|
41
|
+
};
|
|
42
|
+
(0, ffi_1.setQuery)(interaction, query);
|
|
43
|
+
expect(queryMock.calledTwice);
|
|
44
|
+
expect(queryMock.calledWith('foo', 0, 'bar'));
|
|
45
|
+
expect(queryMock.calledWith('foo', 1, 'baz'));
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
describe('with single values', function () {
|
|
49
|
+
it('calls the query ffi function for each value', function () {
|
|
50
|
+
var queryMock = sinon_1.default.stub();
|
|
51
|
+
var interaction = {
|
|
52
|
+
withQuery: queryMock,
|
|
53
|
+
};
|
|
54
|
+
var query = {
|
|
55
|
+
foo: 'bar',
|
|
56
|
+
};
|
|
57
|
+
(0, ffi_1.setQuery)(interaction, query);
|
|
58
|
+
expect(queryMock.calledOnce);
|
|
59
|
+
expect(queryMock.calledWith('foo', 0, 'bar'));
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
describe('with array and single values', function () {
|
|
63
|
+
it('calls the query ffi function for each value', function () {
|
|
64
|
+
var queryMock = sinon_1.default.stub();
|
|
65
|
+
var interaction = {
|
|
66
|
+
withQuery: queryMock,
|
|
67
|
+
};
|
|
68
|
+
var query = {
|
|
69
|
+
foo: 'bar',
|
|
70
|
+
baz: ['bat', 'foo'],
|
|
71
|
+
};
|
|
72
|
+
(0, ffi_1.setQuery)(interaction, query);
|
|
73
|
+
expect(queryMock.calledThrice);
|
|
74
|
+
expect(queryMock.calledWith('foo', 0, 'bar'));
|
|
75
|
+
expect(queryMock.calledWith('baz', 0, 'bat'));
|
|
76
|
+
expect(queryMock.calledWith('baz', 1, 'foo'));
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
//# sourceMappingURL=ffi.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ffi.spec.js","sourceRoot":"","sources":["../../../src/httpPact/ffi.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { Interaction, InteractionObject } from
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { Server } from "@pact-foundation/pact-node/src/server";
|
|
1
|
+
import { Interaction, InteractionObject } from '../dsl/interaction';
|
|
2
|
+
import { PactOptions, PactOptionsComplete } from '../dsl/options';
|
|
3
|
+
import { MockService } from 'dsl/mockService';
|
|
5
4
|
/**
|
|
6
5
|
* Creates a new {@link PactProvider}.
|
|
7
6
|
* @memberof Pact
|
|
@@ -12,14 +11,17 @@ import { Server } from "@pact-foundation/pact-node/src/server";
|
|
|
12
11
|
export declare class Pact {
|
|
13
12
|
static defaults: PactOptions;
|
|
14
13
|
static createOptionsWithDefaults(opts: PactOptions): PactOptionsComplete;
|
|
15
|
-
server: Server;
|
|
16
|
-
opts: PactOptionsComplete;
|
|
17
14
|
mockService: MockService;
|
|
15
|
+
opts: PactOptionsComplete;
|
|
16
|
+
private mockServerStartedPort?;
|
|
17
|
+
private pact;
|
|
18
|
+
private interaction;
|
|
18
19
|
private finalized;
|
|
19
20
|
constructor(config: PactOptions);
|
|
20
21
|
/**
|
|
21
|
-
* Setup the pact framework, including
|
|
22
|
-
*
|
|
22
|
+
* Setup the pact framework, including allocating a port for the dynamic
|
|
23
|
+
* mock server
|
|
24
|
+
*
|
|
23
25
|
* @returns {Promise}
|
|
24
26
|
*/
|
|
25
27
|
setup(): Promise<PactOptionsComplete>;
|
|
@@ -62,8 +64,6 @@ export declare class Pact {
|
|
|
62
64
|
* @returns {Promise}
|
|
63
65
|
*/
|
|
64
66
|
removeInteractions(): Promise<string>;
|
|
65
|
-
private
|
|
66
|
-
private
|
|
67
|
-
private startServer;
|
|
68
|
-
private createServer;
|
|
67
|
+
private startMockServer;
|
|
68
|
+
private reset;
|
|
69
69
|
}
|
|
@@ -0,0 +1,311 @@
|
|
|
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
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
37
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
38
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
39
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
40
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
41
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
42
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
46
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
47
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
48
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
49
|
+
function step(op) {
|
|
50
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
51
|
+
while (_) try {
|
|
52
|
+
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;
|
|
53
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
54
|
+
switch (op[0]) {
|
|
55
|
+
case 0: case 1: t = op; break;
|
|
56
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
57
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
58
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
59
|
+
default:
|
|
60
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
61
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
62
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
63
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
64
|
+
if (t[2]) _.ops.pop();
|
|
65
|
+
_.trys.pop(); continue;
|
|
66
|
+
}
|
|
67
|
+
op = body.call(thisArg, _);
|
|
68
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
69
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
73
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
74
|
+
};
|
|
75
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
76
|
+
exports.Pact = void 0;
|
|
77
|
+
/* eslint-disable no-promise-executor-return */
|
|
78
|
+
var pact_core_1 = __importDefault(require("@pact-foundation/pact-core"));
|
|
79
|
+
var index_1 = require("@pact-foundation/pact-core/src/consumer/index");
|
|
80
|
+
var clc = __importStar(require("cli-color"));
|
|
81
|
+
var path = __importStar(require("path"));
|
|
82
|
+
var process_1 = __importDefault(require("process"));
|
|
83
|
+
var lodash_1 = require("lodash");
|
|
84
|
+
var interaction_1 = require("../dsl/interaction");
|
|
85
|
+
var net_1 = require("../common/net");
|
|
86
|
+
var logger_1 = __importStar(require("../common/logger"));
|
|
87
|
+
var verificationError_1 = __importDefault(require("../errors/verificationError"));
|
|
88
|
+
var configurationError_1 = __importDefault(require("../errors/configurationError"));
|
|
89
|
+
var tracing_1 = require("./tracing");
|
|
90
|
+
var v3_1 = require("../v3");
|
|
91
|
+
var package_json_1 = require("../../package.json");
|
|
92
|
+
var display_1 = require("../v3/display");
|
|
93
|
+
var spec_1 = require("../common/spec");
|
|
94
|
+
var ffi_1 = require("./ffi");
|
|
95
|
+
var logErrorNoMockServer = function () {
|
|
96
|
+
logger_1.default.error("The pact mock service doesn't appear to be running\n" +
|
|
97
|
+
' - Please check the logs above to ensure that there are no pact service startup failures\n' +
|
|
98
|
+
' - Please check that pact lifecycle methods are called in the correct order (setup() needs to be called before this method)\n' +
|
|
99
|
+
' - Please check that your test code waits for the promises returned from lifecycle methods to complete before calling the next one\n' +
|
|
100
|
+
" - To learn more about what is happening during your pact run, try setting logLevel: 'DEBUG'");
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Creates a new {@link PactProvider}.
|
|
104
|
+
* @memberof Pact
|
|
105
|
+
* @name create
|
|
106
|
+
* @param {PactOptions} opts
|
|
107
|
+
* @return {@link PactProvider}
|
|
108
|
+
*/
|
|
109
|
+
var Pact = /** @class */ (function () {
|
|
110
|
+
function Pact(config) {
|
|
111
|
+
this.opts = Pact.createOptionsWithDefaults(config);
|
|
112
|
+
if (this.opts.pactfileWriteMode === 'overwrite') {
|
|
113
|
+
logger_1.default.warn("WARNING: the behaviour of pactfileWriteMode 'overwrite' has changed since version 9.x.x. See the type definition or the MIGRATION.md guide for details.");
|
|
114
|
+
}
|
|
115
|
+
if ((0, lodash_1.isEmpty)(this.opts.consumer)) {
|
|
116
|
+
throw new configurationError_1.default('You must specify a Consumer for this pact.');
|
|
117
|
+
}
|
|
118
|
+
if ((0, lodash_1.isEmpty)(this.opts.provider)) {
|
|
119
|
+
throw new configurationError_1.default('You must specify a Provider for this pact.');
|
|
120
|
+
}
|
|
121
|
+
(0, logger_1.setLogLevel)(this.opts.logLevel);
|
|
122
|
+
pact_core_1.default.logLevel(this.opts.logLevel);
|
|
123
|
+
if (this.opts.logLevel === 'trace') {
|
|
124
|
+
(0, tracing_1.traceHttpInteractions)();
|
|
125
|
+
}
|
|
126
|
+
this.reset();
|
|
127
|
+
}
|
|
128
|
+
Pact.createOptionsWithDefaults = function (opts) {
|
|
129
|
+
return __assign(__assign({}, Pact.defaults), opts);
|
|
130
|
+
};
|
|
131
|
+
/**
|
|
132
|
+
* Setup the pact framework, including allocating a port for the dynamic
|
|
133
|
+
* mock server
|
|
134
|
+
*
|
|
135
|
+
* @returns {Promise}
|
|
136
|
+
*/
|
|
137
|
+
Pact.prototype.setup = function () {
|
|
138
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
139
|
+
var port;
|
|
140
|
+
return __generator(this, function (_a) {
|
|
141
|
+
switch (_a.label) {
|
|
142
|
+
case 0:
|
|
143
|
+
if (!(this.opts.port > 0)) return [3 /*break*/, 2];
|
|
144
|
+
return [4 /*yield*/, (0, net_1.isPortAvailable)(this.opts.port, this.opts.host)];
|
|
145
|
+
case 1:
|
|
146
|
+
_a.sent();
|
|
147
|
+
return [3 /*break*/, 4];
|
|
148
|
+
case 2: return [4 /*yield*/, (0, net_1.freePort)()];
|
|
149
|
+
case 3:
|
|
150
|
+
port = _a.sent();
|
|
151
|
+
logger_1.default.debug("free port discovered: ".concat(port));
|
|
152
|
+
this.opts.port = port;
|
|
153
|
+
_a.label = 4;
|
|
154
|
+
case 4:
|
|
155
|
+
// create the mock service
|
|
156
|
+
this.mockService = {
|
|
157
|
+
baseUrl: "".concat(this.opts.ssl ? 'https' : 'http', "://").concat(this.opts.host, ":").concat(this.opts.port),
|
|
158
|
+
pactDetails: {
|
|
159
|
+
pactfile_write_mode: this.opts.pactfileWriteMode || 'merge',
|
|
160
|
+
consumer: {
|
|
161
|
+
name: this.opts.consumer,
|
|
162
|
+
},
|
|
163
|
+
provider: { name: this.opts.provider },
|
|
164
|
+
},
|
|
165
|
+
};
|
|
166
|
+
return [2 /*return*/, this.opts];
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
});
|
|
170
|
+
};
|
|
171
|
+
/**
|
|
172
|
+
* Add an interaction to the {@link MockService}.
|
|
173
|
+
* @memberof PactProvider
|
|
174
|
+
* @instance
|
|
175
|
+
* @param {Interaction} interactionObj
|
|
176
|
+
* @returns {Promise}
|
|
177
|
+
*/
|
|
178
|
+
Pact.prototype.addInteraction = function (interactionObj) {
|
|
179
|
+
if (!this.mockService) {
|
|
180
|
+
logErrorNoMockServer();
|
|
181
|
+
return Promise.reject(new Error("The pact mock service wasn't configured when addInteraction was called"));
|
|
182
|
+
}
|
|
183
|
+
var interaction;
|
|
184
|
+
if (interactionObj instanceof interaction_1.Interaction) {
|
|
185
|
+
// This will throw if not valid
|
|
186
|
+
var interactionState = interactionObj.json();
|
|
187
|
+
// Convert into the same type
|
|
188
|
+
interaction = (0, interaction_1.interactionToInteractionObject)(interactionState);
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
interaction = interactionObj;
|
|
192
|
+
}
|
|
193
|
+
this.interaction.uponReceiving(interaction.uponReceiving);
|
|
194
|
+
if (interaction.state) {
|
|
195
|
+
this.interaction.given(interaction.state);
|
|
196
|
+
}
|
|
197
|
+
(0, ffi_1.setRequestDetails)(this.interaction, interaction.withRequest);
|
|
198
|
+
(0, ffi_1.setResponseDetails)(this.interaction, interaction.willRespondWith);
|
|
199
|
+
this.startMockServer();
|
|
200
|
+
return Promise.resolve('');
|
|
201
|
+
};
|
|
202
|
+
/**
|
|
203
|
+
* Checks with the Mock Service if the expected interactions have been exercised.
|
|
204
|
+
* @memberof PactProvider
|
|
205
|
+
* @instance
|
|
206
|
+
* @returns {Promise}
|
|
207
|
+
*/
|
|
208
|
+
Pact.prototype.verify = function () {
|
|
209
|
+
var _this = this;
|
|
210
|
+
if (!this.mockService) {
|
|
211
|
+
logErrorNoMockServer();
|
|
212
|
+
return Promise.reject(new Error("The pact mock service wasn't running when verify was called"));
|
|
213
|
+
}
|
|
214
|
+
var matchingResults = this.pact.mockServerMismatches(this.opts.port);
|
|
215
|
+
var success = this.pact.mockServerMatchedSuccessfully(this.opts.port);
|
|
216
|
+
// Feature flag: allow missing requests on the mock service
|
|
217
|
+
if (!success) {
|
|
218
|
+
var error = 'Test failed for the following reasons:';
|
|
219
|
+
error += "\n\n ".concat((0, display_1.generateMockServerError)(matchingResults, '\t'));
|
|
220
|
+
/* eslint-disable no-console */
|
|
221
|
+
console.error('');
|
|
222
|
+
console.error(clc.red('Pact verification failed!'));
|
|
223
|
+
console.error(clc.red(error));
|
|
224
|
+
/* eslint-enable */
|
|
225
|
+
this.reset();
|
|
226
|
+
throw new verificationError_1.default('Pact verification failed - expected interactions did not match actual.');
|
|
227
|
+
}
|
|
228
|
+
return this.writePact()
|
|
229
|
+
.then(function () { return _this.reset(); })
|
|
230
|
+
.then(function () { return ''; });
|
|
231
|
+
};
|
|
232
|
+
/**
|
|
233
|
+
* Writes the Pact and clears any interactions left behind and shutdown the
|
|
234
|
+
* mock server
|
|
235
|
+
* @memberof PactProvider
|
|
236
|
+
* @instance
|
|
237
|
+
* @returns {Promise}
|
|
238
|
+
*/
|
|
239
|
+
Pact.prototype.finalize = function () {
|
|
240
|
+
if (this.finalized) {
|
|
241
|
+
logger_1.default.warn('finalize() has already been called, this is probably a logic error in your test setup. ' +
|
|
242
|
+
'In the future this will be an error.');
|
|
243
|
+
}
|
|
244
|
+
this.finalized = true;
|
|
245
|
+
return Promise.resolve();
|
|
246
|
+
};
|
|
247
|
+
/**
|
|
248
|
+
* Writes the pact file out to file. Should be called when all tests have been performed for a
|
|
249
|
+
* given Consumer <-> Provider pair. It will write out the Pact to the
|
|
250
|
+
* configured file.
|
|
251
|
+
* @memberof PactProvider
|
|
252
|
+
* @instance
|
|
253
|
+
* @returns {Promise}
|
|
254
|
+
*/
|
|
255
|
+
Pact.prototype.writePact = function () {
|
|
256
|
+
if (!this.mockService) {
|
|
257
|
+
logErrorNoMockServer();
|
|
258
|
+
return Promise.reject(new Error("The pact mock service wasn't running when writePact was called"));
|
|
259
|
+
}
|
|
260
|
+
this.pact.writePactFile(this.opts.dir || './pacts', this.opts.pactfileWriteMode !== 'overwrite');
|
|
261
|
+
return Promise.resolve('');
|
|
262
|
+
};
|
|
263
|
+
/**
|
|
264
|
+
* Clear up any interactions in the Provider Mock Server.
|
|
265
|
+
* @memberof PactProvider
|
|
266
|
+
* @instance
|
|
267
|
+
* @returns {Promise}
|
|
268
|
+
*/
|
|
269
|
+
Pact.prototype.removeInteractions = function () {
|
|
270
|
+
logger_1.default.info('removeInteractions() is no longer required to be called, but has been kept for compatibility with upgrade from 9.x.x. You should remove any use of this method.');
|
|
271
|
+
return Promise.resolve('');
|
|
272
|
+
};
|
|
273
|
+
Pact.prototype.startMockServer = function () {
|
|
274
|
+
logger_1.default.debug("Setting up Pact mock server with Consumer \"".concat(this.opts.consumer, "\" and Provider \"").concat(this.opts.provider, "\"\n using mock service on Port: \"").concat(this.opts.port, "\""));
|
|
275
|
+
var port = this.pact.createMockServer(this.opts.host, this.opts.port, this.opts.ssl);
|
|
276
|
+
this.mockServerStartedPort = port;
|
|
277
|
+
logger_1.default.debug("mock service started on port: ".concat(port));
|
|
278
|
+
};
|
|
279
|
+
// reset the internal state
|
|
280
|
+
// (this.pact cannot be re-used between tests)
|
|
281
|
+
Pact.prototype.reset = function () {
|
|
282
|
+
var _a;
|
|
283
|
+
this.pact = (0, index_1.makeConsumerPact)(this.opts.consumer, this.opts.provider, (0, spec_1.numberToSpec)(this.opts.spec, v3_1.SpecificationVersion.SPECIFICATION_VERSION_V2), (_a = this.opts.logLevel) !== null && _a !== void 0 ? _a : 'info');
|
|
284
|
+
this.interaction = this.pact.newInteraction('');
|
|
285
|
+
if (this.mockServerStartedPort) {
|
|
286
|
+
logger_1.default.debug("cleaning up old mock server on port ".concat(this.opts.port));
|
|
287
|
+
var res = this.pact.cleanupMockServer(this.mockServerStartedPort);
|
|
288
|
+
if (!res) {
|
|
289
|
+
logger_1.default.warn('Unable to cleanup the Pact mock server. ');
|
|
290
|
+
}
|
|
291
|
+
this.mockServerStartedPort = undefined;
|
|
292
|
+
}
|
|
293
|
+
this.pact.addMetadata('pact-js', 'version', package_json_1.version);
|
|
294
|
+
};
|
|
295
|
+
Pact.defaults = {
|
|
296
|
+
consumer: '',
|
|
297
|
+
cors: false,
|
|
298
|
+
dir: path.resolve(process_1.default.cwd(), 'pacts'),
|
|
299
|
+
host: '127.0.0.1',
|
|
300
|
+
log: path.resolve(process_1.default.cwd(), 'logs', 'pact.log'),
|
|
301
|
+
logLevel: 'info',
|
|
302
|
+
pactfileWriteMode: 'merge',
|
|
303
|
+
provider: '',
|
|
304
|
+
spec: 2,
|
|
305
|
+
ssl: false,
|
|
306
|
+
port: 0,
|
|
307
|
+
};
|
|
308
|
+
return Pact;
|
|
309
|
+
}());
|
|
310
|
+
exports.Pact = Pact;
|
|
311
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/httpPact/index.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|