@pact-foundation/pact 10.4.0 → 11.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -1
- package/README.md +2 -2
- package/package.json +5 -11
- package/scripts/ci/build-and-test.sh +1 -2
- package/scripts/ci/release-9x.sh +2 -2
- package/scripts/ci/release.sh +2 -2
- package/scripts/install-plugins.sh +10 -5
- package/scripts/run-audit-fix-on-examples.sh +80 -8
- package/src/common/jsonTypes.d.ts +2 -2
- package/src/common/net.js.map +1 -1
- package/src/common/net.spec.js +6 -2
- package/src/common/net.spec.js.map +1 -1
- package/src/common/request.d.ts +1 -1
- package/src/common/request.js +1 -2
- package/src/common/request.js.map +1 -1
- package/src/dsl/graphql.js +1 -2
- package/src/dsl/graphql.js.map +1 -1
- package/src/dsl/graphql.spec.js +0 -1
- package/src/dsl/graphql.spec.js.map +1 -1
- package/src/dsl/interaction.d.ts +4 -4
- package/src/dsl/interaction.js +2 -2
- package/src/dsl/interaction.js.map +1 -1
- package/src/dsl/interaction.spec.js +1 -2
- package/src/dsl/interaction.spec.js.map +1 -1
- package/src/dsl/matchers.d.ts +3 -3
- package/src/dsl/matchers.js +0 -1
- package/src/dsl/matchers.js.map +1 -1
- package/src/dsl/matchers.spec.js +24 -6
- package/src/dsl/matchers.spec.js.map +1 -1
- package/src/dsl/message.d.ts +5 -5
- package/src/dsl/mockService.d.ts +1 -1
- package/src/dsl/options.d.ts +7 -7
- package/src/dsl/verifier/proxy/hooks.js +1 -1
- package/src/dsl/verifier/proxy/messages.d.ts +3 -3
- package/src/dsl/verifier/proxy/messages.js +32 -32
- package/src/dsl/verifier/proxy/messages.js.map +1 -1
- package/src/dsl/verifier/proxy/parseBody.js +0 -1
- package/src/dsl/verifier/proxy/parseBody.js.map +1 -1
- package/src/dsl/verifier/proxy/parseBody.spec.js +1 -1
- package/src/dsl/verifier/proxy/proxy.js +4 -6
- package/src/dsl/verifier/proxy/proxy.js.map +1 -1
- package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js +1 -1
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js +1 -2
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js.map +1 -1
- package/src/dsl/verifier/proxy/tracer.js +1 -4
- package/src/dsl/verifier/proxy/tracer.js.map +1 -1
- package/src/dsl/verifier/proxy/types.d.ts +5 -5
- package/src/dsl/verifier/types.d.ts +3 -3
- package/src/dsl/verifier/verifier.js.map +1 -1
- package/src/httpPact/ffi.d.ts +6 -7
- package/src/httpPact/ffi.js +51 -31
- package/src/httpPact/ffi.js.map +1 -1
- package/src/httpPact/ffi.spec.js +3 -4
- package/src/httpPact/ffi.spec.js.map +1 -1
- package/src/httpPact/index.js +7 -9
- package/src/httpPact/index.js.map +1 -1
- package/src/httpPact/index.spec.js +5 -4
- package/src/httpPact/index.spec.js.map +1 -1
- package/src/httpPact/tracing.js +6 -3
- package/src/httpPact/tracing.js.map +1 -1
- package/src/messageConsumerPact.js +0 -1
- package/src/messageConsumerPact.js.map +1 -1
- package/src/messageConsumerPact.spec.js +0 -1
- package/src/messageConsumerPact.spec.js.map +1 -1
- package/src/messageProviderPact.js.map +1 -1
- package/src/messageProviderPact.spec.js +0 -2
- package/src/messageProviderPact.spec.js.map +1 -1
- package/src/v3/display.d.ts +1 -1
- package/src/v3/display.js +18 -19
- package/src/v3/display.js.map +1 -1
- package/src/v3/ffi.d.ts +1 -1
- package/src/v3/ffi.js +38 -9
- package/src/v3/ffi.js.map +1 -1
- package/src/v3/matchers.d.ts +18 -54
- package/src/v3/matchers.js +26 -3
- package/src/v3/matchers.js.map +1 -1
- package/src/v3/matchers.spec.js +22 -0
- package/src/v3/matchers.spec.js.map +1 -1
- package/src/v3/pact.js +1 -2
- package/src/v3/pact.js.map +1 -1
- package/src/v3/types.d.ts +50 -7
- package/src/v3/types.js +0 -1
- package/src/v3/types.js.map +1 -1
- package/src/v3/xml/xmlElement.d.ts +4 -4
- package/src/v3/xml/xmlElement.js +7 -1
- package/src/v3/xml/xmlElement.js.map +1 -1
- package/src/v3/xml/xmlElement.spec.js +26 -25
- package/src/v3/xml/xmlElement.spec.js.map +1 -1
- package/src/v3/xml/xmlText.d.ts +3 -3
- package/src/v3/xml/xmlText.js.map +1 -1
- package/src/v4/http/index.js +1 -1
- package/src/v4/http/types.d.ts +9 -9
- package/src/v4/message/index.js +1 -1
- package/src/v4/message/types.d.ts +3 -4
package/src/v3/types.d.ts
CHANGED
|
@@ -1,10 +1,52 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { JsonMap } from '../common/jsonTypes';
|
|
1
|
+
import { AnyJson, JsonMap } from '../common/jsonTypes';
|
|
3
2
|
export declare enum SpecificationVersion {
|
|
4
3
|
SPECIFICATION_VERSION_V2 = 3,
|
|
5
4
|
SPECIFICATION_VERSION_V3 = 4,
|
|
6
5
|
SPECIFICATION_VERSION_V4 = 5
|
|
7
6
|
}
|
|
7
|
+
interface TemplateMap {
|
|
8
|
+
[key: string]: AnyJson | AnyTemplate;
|
|
9
|
+
}
|
|
10
|
+
type TemplateArray = Array<AnyTemplate>;
|
|
11
|
+
/**
|
|
12
|
+
* The `AnyTemplate` type is no longer used anywhere in Pact.
|
|
13
|
+
*
|
|
14
|
+
* @deprecated This type never really worked, so it has been removed from the Pact API surface. It is still exported to avoid breaking changes with anyone who is importing it. See {@link https://github.com/pact-foundation/pact-js/issues/1054} for details
|
|
15
|
+
*/
|
|
16
|
+
export type AnyTemplate = AnyJson | TemplateMap | TemplateArray | Matcher<unknown>;
|
|
17
|
+
/**
|
|
18
|
+
* Pact Matcher
|
|
19
|
+
*/
|
|
20
|
+
export interface Matcher<T> {
|
|
21
|
+
'pact:matcher:type': string;
|
|
22
|
+
'pact:generator:type'?: string;
|
|
23
|
+
value?: T | Record<string, T>;
|
|
24
|
+
}
|
|
25
|
+
export interface V3RegexMatcher extends Matcher<string> {
|
|
26
|
+
regex: string;
|
|
27
|
+
example?: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Like Matcher with a minimum number of required values
|
|
31
|
+
*/
|
|
32
|
+
export interface MinLikeMatcher<T> extends Matcher<T> {
|
|
33
|
+
min: number;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Like Matcher with a maximum number of required values
|
|
37
|
+
*/
|
|
38
|
+
export interface MaxLikeMatcher<T> extends Matcher<T> {
|
|
39
|
+
max: number;
|
|
40
|
+
}
|
|
41
|
+
export interface DateTimeMatcher extends Matcher<string> {
|
|
42
|
+
format: string;
|
|
43
|
+
}
|
|
44
|
+
export interface ArrayContainsMatcher extends Matcher<unknown[]> {
|
|
45
|
+
variants: Array<unknown>;
|
|
46
|
+
}
|
|
47
|
+
export interface ProviderStateInjectedValue<T> extends Matcher<T> {
|
|
48
|
+
expression: string;
|
|
49
|
+
}
|
|
8
50
|
/**
|
|
9
51
|
* Options for the mock server
|
|
10
52
|
*/
|
|
@@ -51,28 +93,28 @@ export interface V3ProviderState {
|
|
|
51
93
|
parameters?: JsonMap;
|
|
52
94
|
}
|
|
53
95
|
export declare type TemplateHeaders = {
|
|
54
|
-
[header: string]: string |
|
|
96
|
+
[header: string]: string | Matcher<string> | (Matcher<string> | string)[];
|
|
55
97
|
};
|
|
56
|
-
export
|
|
98
|
+
export type TemplateQuery = Record<string, string | Matcher<string> | Array<string | Matcher<string>>>;
|
|
57
99
|
export interface V3Interaction {
|
|
58
100
|
states?: V3ProviderState[];
|
|
59
101
|
uponReceiving: string;
|
|
60
102
|
withRequest: V3Request;
|
|
61
103
|
willRespondWith: V3Response;
|
|
62
104
|
}
|
|
63
|
-
export
|
|
105
|
+
export type Path = string | Matcher<string>;
|
|
64
106
|
export interface V3Request {
|
|
65
107
|
method: string;
|
|
66
108
|
path: Path;
|
|
67
109
|
query?: TemplateQuery;
|
|
68
110
|
headers?: TemplateHeaders;
|
|
69
|
-
body?:
|
|
111
|
+
body?: unknown;
|
|
70
112
|
contentType?: string;
|
|
71
113
|
}
|
|
72
114
|
export interface V3Response {
|
|
73
115
|
status: number;
|
|
74
116
|
headers?: TemplateHeaders;
|
|
75
|
-
body?:
|
|
117
|
+
body?: unknown;
|
|
76
118
|
contentType?: string;
|
|
77
119
|
}
|
|
78
120
|
export interface V3MockServer {
|
|
@@ -80,3 +122,4 @@ export interface V3MockServer {
|
|
|
80
122
|
url: string;
|
|
81
123
|
id: string;
|
|
82
124
|
}
|
|
125
|
+
export {};
|
package/src/v3/types.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SpecificationVersion = void 0;
|
|
4
|
-
// eslint-disable-next-line no-shadow
|
|
5
4
|
var SpecificationVersion;
|
|
6
5
|
(function (SpecificationVersion) {
|
|
7
6
|
SpecificationVersion[SpecificationVersion["SPECIFICATION_VERSION_V2"] = 3] = "SPECIFICATION_VERSION_V2";
|
package/src/v3/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/v3/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/v3/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,uGAA4B,CAAA;IAC5B,uGAA4B,CAAA;IAC5B,uGAA4B,CAAA;AAC9B,CAAC,EAJW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAI/B"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Matcher } from '../
|
|
1
|
+
import { Matcher } from '../types';
|
|
2
2
|
import { XmlNode } from './xmlNode';
|
|
3
|
-
export
|
|
4
|
-
export
|
|
3
|
+
export type XmlAttributes = Map<string, string>;
|
|
4
|
+
export type XmlCallback = (n: XmlElement) => void;
|
|
5
5
|
export declare class XmlElement extends XmlNode {
|
|
6
6
|
name: string;
|
|
7
7
|
private attributes;
|
|
8
|
-
|
|
8
|
+
children: XmlNode[];
|
|
9
9
|
constructor(name: string);
|
|
10
10
|
setName(name: string): XmlElement;
|
|
11
11
|
setAttributes(attributes: XmlAttributes): XmlElement;
|
package/src/v3/xml/xmlElement.js
CHANGED
|
@@ -16,6 +16,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
16
16
|
})();
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.XmlElement = void 0;
|
|
19
|
+
var matchers_1 = require("../matchers");
|
|
19
20
|
var xmlNode_1 = require("./xmlNode");
|
|
20
21
|
var xmlText_1 = require("./xmlText");
|
|
21
22
|
var modifyElementWithCallback = function (el, cb) {
|
|
@@ -60,7 +61,12 @@ var XmlElement = /** @class */ (function (_super) {
|
|
|
60
61
|
};
|
|
61
62
|
XmlElement.prototype.appendText = function (content) {
|
|
62
63
|
if (typeof content === 'object' && content['pact:matcher:type']) {
|
|
63
|
-
this.children.push(new xmlText_1.XmlText(
|
|
64
|
+
this.children.push(new xmlText_1.XmlText((0, matchers_1.isMatcher)(content) &&
|
|
65
|
+
'value' in content &&
|
|
66
|
+
content.value !== undefined &&
|
|
67
|
+
typeof content.value === 'string'
|
|
68
|
+
? content.value
|
|
69
|
+
: '', content));
|
|
64
70
|
}
|
|
65
71
|
else {
|
|
66
72
|
this.children.push(new xmlText_1.XmlText(content.toString()));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xmlElement.js","sourceRoot":"","sources":["../../../../src/v3/xml/xmlElement.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"xmlElement.js","sourceRoot":"","sources":["../../../../src/v3/xml/xmlElement.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,wCAAwC;AAExC,qCAAoC;AACpC,qCAAoC;AAKpC,IAAM,yBAAyB,GAAG,UAAC,EAAc,EAAE,EAAgB;IACjE,IAAI,EAAE,EAAE;QACN,EAAE,CAAC,EAAE,CAAC,CAAC;KACR;AACH,CAAC,CAAC;AACF;IAAgC,8BAAO;IAKrC,oBAAmB,IAAY;QAA/B,YACE,iBAAO,SACR;QAFkB,UAAI,GAAJ,IAAI,CAAQ;QAF/B,cAAQ,GAAc,EAAE,CAAC;;IAIzB,CAAC;IAEM,4BAAO,GAAd,UAAe,IAAY;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,kCAAa,GAApB,UAAqB,UAAyB;QAC5C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,kCAAa,GAApB,UACE,IAAY,EACZ,UAAyB,EACzB,GAA4C;QAE5C,IAAM,EAAE,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,GAAG,EAAE;YACP,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;gBAC7B,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aACpB;iBAAM;gBACL,yBAAyB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;aACpC;SACF;QACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEvB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,+BAAU,GAAjB,UAAkB,OAAiC;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC,EAAE;YAC/D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,IAAI,iBAAO,CACT,IAAA,oBAAS,EAAC,OAAO,CAAC;gBAClB,OAAO,IAAI,OAAO;gBAClB,OAAO,CAAC,KAAK,KAAK,SAAS;gBAC3B,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ;gBAC/B,CAAC,CAAC,OAAO,CAAC,KAAK;gBACf,CAAC,CAAC,EAAE,EACN,OAAO,CACR,CACF,CAAC;SACH;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,iBAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;SACrD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,6BAAQ,GAAf,UACE,IAAY,EACZ,UAAyB,EACzB,EAAgB,EAChB,OAA0C;QAA1C,wBAAA,EAAA,YAA6B,QAAQ,EAAE,CAAC,EAAE;QAE1C,IAAM,EAAE,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAC1D,yBAAyB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,mBAAmB,EAAE,MAAM;YAC3B,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IACH,iBAAC;AAAD,CAAC,AAhFD,CAAgC,iBAAO,GAgFtC;AAhFY,gCAAU"}
|
|
@@ -23,9 +23,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
/* eslint-disable @typescript-eslint/dot-notation */
|
|
27
|
-
/* eslint-disable @typescript-eslint/ban-ts-comment */
|
|
28
|
-
// @ts-nocheck
|
|
29
26
|
var chai = __importStar(require("chai"));
|
|
30
27
|
var mocha_1 = require("mocha");
|
|
31
28
|
var xmlText_1 = require("./xmlText");
|
|
@@ -46,10 +43,11 @@ var expect = chai.expect;
|
|
|
46
43
|
expect(xml.children[0], 'first child of XML element').to.have.property('content');
|
|
47
44
|
expect(xml.children[0].content, 'content of first child').to.equal('some string');
|
|
48
45
|
expect(xml.children[0], 'first child of XML element').to.have.property('matcher');
|
|
49
|
-
expect(xml.children[0].matcher, 'matcher of the first child')
|
|
50
|
-
.undefined;
|
|
46
|
+
expect(xml.children[0].matcher, 'matcher of the first child')
|
|
47
|
+
.to.be.undefined;
|
|
51
48
|
});
|
|
52
49
|
it('can be called with a Matcher', function () {
|
|
50
|
+
var _a, _b, _c, _d;
|
|
53
51
|
var xml = new xmlElement_1.XmlElement('my name')
|
|
54
52
|
.appendText(MatchersV3.string('string matcher'))
|
|
55
53
|
.appendText(MatchersV3.regex(/^.*$/, 'regex matcher'))
|
|
@@ -63,20 +61,22 @@ var expect = chai.expect;
|
|
|
63
61
|
expect(xml, 'XML element').to.have.property('children');
|
|
64
62
|
expect(xml.children, 'children of XML element').to.be.lengthOf(7);
|
|
65
63
|
for (var i = 0; i < 7; i += 1) {
|
|
66
|
-
|
|
67
|
-
expect(
|
|
68
|
-
expect(
|
|
69
|
-
expect(
|
|
70
|
-
expect(
|
|
71
|
-
expect(
|
|
72
|
-
expect(
|
|
73
|
-
expect(
|
|
74
|
-
expect(
|
|
75
|
-
expect(
|
|
76
|
-
expect(
|
|
64
|
+
var child = xml.children[i];
|
|
65
|
+
expect(child).to.be.instanceOf(xmlText_1.XmlText);
|
|
66
|
+
expect(child).to.have.property('content');
|
|
67
|
+
expect(child.content).not.to.be.empty;
|
|
68
|
+
expect(child.content).to.be.a('string');
|
|
69
|
+
expect(child).to.have.property('matcher');
|
|
70
|
+
expect(child.matcher).to.have.property('value');
|
|
71
|
+
expect((_a = child.matcher) === null || _a === void 0 ? void 0 : _a.value).to.be.a('string');
|
|
72
|
+
expect((_b = child.matcher) === null || _b === void 0 ? void 0 : _b.value).not.to.be.empty;
|
|
73
|
+
expect(child.matcher).to.have.property('pact:matcher:type');
|
|
74
|
+
expect((_c = child.matcher) === null || _c === void 0 ? void 0 : _c['pact:matcher:type']).to.be.a('string');
|
|
75
|
+
expect((_d = child.matcher) === null || _d === void 0 ? void 0 : _d['pact:matcher:type']).not.to.be.empty;
|
|
77
76
|
}
|
|
78
77
|
});
|
|
79
78
|
it('sets content to an empty string if the Matcher has no value', function () {
|
|
79
|
+
var _a, _b;
|
|
80
80
|
function noValueMatcher() {
|
|
81
81
|
return {
|
|
82
82
|
'pact:matcher:type': 'no-value',
|
|
@@ -87,15 +87,16 @@ var expect = chai.expect;
|
|
|
87
87
|
expect(xml.name, 'name of XML element').to.equal('my name');
|
|
88
88
|
expect(xml, 'XML element').to.have.property('children');
|
|
89
89
|
expect(xml.children, 'children of XML element').to.be.lengthOf(1);
|
|
90
|
-
|
|
91
|
-
expect(
|
|
92
|
-
expect(
|
|
93
|
-
expect(
|
|
94
|
-
expect(
|
|
95
|
-
expect(
|
|
96
|
-
expect(
|
|
97
|
-
expect(
|
|
98
|
-
expect(
|
|
90
|
+
var child = xml.children[0];
|
|
91
|
+
expect(child).to.be.instanceOf(xmlText_1.XmlText);
|
|
92
|
+
expect(child).to.have.property('content');
|
|
93
|
+
expect(child.content).to.be.empty;
|
|
94
|
+
expect(child.content).to.be.a('string');
|
|
95
|
+
expect(child).to.have.property('matcher');
|
|
96
|
+
expect(child.matcher).not.to.have.property('value');
|
|
97
|
+
expect(child.matcher).to.have.property('pact:matcher:type');
|
|
98
|
+
expect((_a = child.matcher) === null || _a === void 0 ? void 0 : _a['pact:matcher:type']).to.be.a('string');
|
|
99
|
+
expect((_b = child.matcher) === null || _b === void 0 ? void 0 : _b['pact:matcher:type']).not.to.be.empty;
|
|
99
100
|
});
|
|
100
101
|
});
|
|
101
102
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xmlElement.spec.js","sourceRoot":"","sources":["../../../../src/v3/xml/xmlElement.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"xmlElement.spec.js","sourceRoot":"","sources":["../../../../src/v3/xml/xmlElement.spec.ts"],"names":[],"mappings":"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"}
|
package/src/v3/xml/xmlText.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Matcher } from '../
|
|
1
|
+
import { Matcher } from '../types';
|
|
2
2
|
import { XmlNode } from './xmlNode';
|
|
3
3
|
export declare class XmlText extends XmlNode {
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
content: string;
|
|
5
|
+
matcher?: Matcher<string> | undefined;
|
|
6
6
|
constructor(content: string, matcher?: Matcher<string> | undefined);
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xmlText.js","sourceRoot":"","sources":["../../../../src/v3/xml/xmlText.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,qCAAoC;AAEpC;IAA6B,2BAAO;IAClC,
|
|
1
|
+
{"version":3,"file":"xmlText.js","sourceRoot":"","sources":["../../../../src/v3/xml/xmlText.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,qCAAoC;AAEpC;IAA6B,2BAAO;IAClC,iBAAmB,OAAe,EAAS,OAAyB;QAApE,YACE,iBAAO,SACR;QAFkB,aAAO,GAAP,OAAO,CAAQ;QAAS,aAAO,GAAP,OAAO,CAAkB;;IAEpE,CAAC;IACH,cAAC;AAAD,CAAC,AAJD,CAA6B,iBAAO,GAInC;AAJY,0BAAO"}
|
package/src/v4/http/index.js
CHANGED
|
@@ -29,7 +29,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
29
29
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
30
30
|
function step(op) {
|
|
31
31
|
if (f) throw new TypeError("Generator is already executing.");
|
|
32
|
-
while (_) try {
|
|
32
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
33
33
|
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;
|
|
34
34
|
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
35
35
|
switch (op[0]) {
|
package/src/v4/http/types.d.ts
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import { JsonMap } from '../../common/jsonTypes';
|
|
3
3
|
import { Path, SpecificationVersion, TemplateHeaders, TemplateQuery, V3MockServer, V3ProviderState, V3Request, V3Response } from '../../v3';
|
|
4
4
|
import { AnyTemplate } from '../../v3/matchers';
|
|
5
|
-
export
|
|
6
|
-
export
|
|
7
|
-
export
|
|
8
|
-
export
|
|
5
|
+
export type V4ProviderState = V3ProviderState;
|
|
6
|
+
export type V4MockServer = V3MockServer;
|
|
7
|
+
export type V4Request = V3Request;
|
|
8
|
+
export type V4Response = V3Response;
|
|
9
9
|
export interface PactV4Options {
|
|
10
10
|
/**
|
|
11
11
|
* Directory to write the pact file to
|
|
@@ -53,7 +53,7 @@ export interface V4InteractionWithCompleteRequest {
|
|
|
53
53
|
export interface V4InteractionwithRequest {
|
|
54
54
|
willRespondWith(status: number, builder?: V4ResponseBuilderFunc): V4InteractionWithResponse;
|
|
55
55
|
}
|
|
56
|
-
export
|
|
56
|
+
export type V4RequestBuilderFunc = (builder: V4RequestBuilder) => void;
|
|
57
57
|
export interface V4RequestBuilder {
|
|
58
58
|
query(query: TemplateQuery): V4RequestBuilder;
|
|
59
59
|
headers(headers: TemplateHeaders): V4RequestBuilder;
|
|
@@ -69,12 +69,12 @@ export interface V4ResponseBuilder {
|
|
|
69
69
|
multipartBody(contentType: string, filename: string, mimePartName: string): V4ResponseBuilder;
|
|
70
70
|
body(contentType: string, body: Buffer): V4ResponseBuilder;
|
|
71
71
|
}
|
|
72
|
-
export
|
|
72
|
+
export type V4ResponseBuilderFunc = (builder: V4ResponseBuilder) => void;
|
|
73
73
|
export interface V4InteractionWithResponse {
|
|
74
74
|
executeTest<T>(testFn: (mockServer: V4MockServer) => Promise<T>): Promise<T | undefined>;
|
|
75
75
|
}
|
|
76
|
-
export
|
|
77
|
-
export
|
|
76
|
+
export type V4PluginRequestBuilderFunc = (builder: V4RequestWithPluginBuilder) => void;
|
|
77
|
+
export type V4PluginResponseBuilderFunc = (builder: V4ResponseWithPluginBuilder) => void;
|
|
78
78
|
export interface PluginConfig {
|
|
79
79
|
plugin: string;
|
|
80
80
|
version: string;
|
|
@@ -106,4 +106,4 @@ export interface V4ResponseWithPluginBuilder {
|
|
|
106
106
|
export interface V4InteractionWithPluginResponse {
|
|
107
107
|
executeTest<T>(testFn: (mockServer: V4MockServer) => Promise<T>): Promise<T | undefined>;
|
|
108
108
|
}
|
|
109
|
-
export
|
|
109
|
+
export type TestFunction<T> = (mockServer: V4MockServer) => Promise<T>;
|
package/src/v4/message/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
14
14
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
15
|
function step(op) {
|
|
16
16
|
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (_) try {
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
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
19
|
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
20
|
switch (op[0]) {
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
import { AnyJson, JsonMap } from '../../common/jsonTypes';
|
|
3
3
|
import { Metadata } from '../../dsl/message';
|
|
4
4
|
import { AnyTemplate } from '../../v3/matchers';
|
|
5
|
-
export
|
|
6
|
-
}
|
|
5
|
+
export type MessageContents = unknown;
|
|
7
6
|
export interface SynchronousMessage {
|
|
8
7
|
Request: MessageContents;
|
|
9
8
|
Response: MessageContents[];
|
|
@@ -16,8 +15,8 @@ export interface TransportConfig {
|
|
|
16
15
|
port: number;
|
|
17
16
|
address: string;
|
|
18
17
|
}
|
|
19
|
-
export
|
|
20
|
-
export
|
|
18
|
+
export type V4MessagePluginRequestBuilderFunc = (builder: V4SynchronousMessageWithRequestBuilder) => void;
|
|
19
|
+
export type V4MessagePluginResponseBuilderFunc = (builder: V4SynchronousMessageWithResponseBuilder) => void;
|
|
21
20
|
export interface V4SynchronousPact {
|
|
22
21
|
addSynchronousMessage(description: string): V4UnconfiguredSynchronousMessage;
|
|
23
22
|
}
|