@pact-foundation/pact 16.3.1 → 16.5.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 -0
- package/CONTRIBUTING.md +2 -2
- package/README.md +22 -12
- package/package.json +26 -47
- package/scripts/ci/build-and-test.sh +0 -3
- package/scripts/install-plugins.js +104 -0
- package/src/common/graphQL/configurationError.js +2 -22
- package/src/common/graphQL/configurationError.js.map +1 -1
- package/src/common/graphQL/graphQL.d.ts +2 -2
- package/src/common/graphQL/graphQL.js +11 -14
- package/src/common/graphQL/graphQL.js.map +1 -1
- package/src/common/graphQL/graphQLQueryError.js +2 -22
- package/src/common/graphQL/graphQLQueryError.js.map +1 -1
- package/src/common/logger.js +9 -9
- package/src/common/logger.js.map +1 -1
- package/src/common/matchingRules.d.ts +7 -1
- package/src/common/matchingRules.js +42 -22
- package/src/common/matchingRules.js.map +1 -1
- package/src/common/net.js +36 -42
- package/src/common/net.js.map +1 -1
- package/src/common/net.spec.js +39 -87
- package/src/common/net.spec.js.map +1 -1
- package/src/common/request.js +33 -82
- package/src/common/request.js.map +1 -1
- package/src/common/request.spec.js +29 -73
- package/src/common/request.spec.js.map +1 -1
- package/src/common/spec.js +3 -4
- package/src/common/spec.js.map +1 -1
- package/src/dsl/apolloGraphql.js +7 -25
- package/src/dsl/apolloGraphql.js.map +1 -1
- package/src/dsl/apolloGraphql.spec.js +21 -58
- package/src/dsl/apolloGraphql.spec.js.map +1 -1
- package/src/dsl/graphql.d.ts +2 -2
- package/src/dsl/graphql.js +29 -48
- package/src/dsl/graphql.js.map +1 -1
- package/src/dsl/graphql.spec.js +92 -117
- package/src/dsl/graphql.spec.js.map +1 -1
- package/src/dsl/interaction.d.ts +2 -2
- package/src/dsl/interaction.js +41 -48
- package/src/dsl/interaction.js.map +1 -1
- package/src/dsl/interaction.spec.js +109 -132
- package/src/dsl/interaction.spec.js.map +1 -1
- package/src/dsl/matchers.d.ts +2 -3
- package/src/dsl/matchers.js +19 -31
- package/src/dsl/matchers.js.map +1 -1
- package/src/dsl/matchers.spec.js +279 -289
- package/src/dsl/matchers.spec.js.map +1 -1
- package/src/dsl/message.d.ts +3 -3
- package/src/dsl/options.d.ts +3 -3
- package/src/dsl/verifier/proxy/hooks.d.ts +2 -2
- package/src/dsl/verifier/proxy/hooks.js +42 -112
- package/src/dsl/verifier/proxy/hooks.js.map +1 -1
- package/src/dsl/verifier/proxy/hooks.spec.js +86 -199
- package/src/dsl/verifier/proxy/hooks.spec.js.map +1 -1
- package/src/dsl/verifier/proxy/messages.d.ts +2 -2
- package/src/dsl/verifier/proxy/messages.js +88 -106
- package/src/dsl/verifier/proxy/messages.js.map +1 -1
- package/src/dsl/verifier/proxy/parseBody.d.ts +1 -1
- package/src/dsl/verifier/proxy/parseBody.js +3 -3
- package/src/dsl/verifier/proxy/parseBody.js.map +1 -1
- package/src/dsl/verifier/proxy/parseBody.spec.js +35 -113
- package/src/dsl/verifier/proxy/parseBody.spec.js.map +1 -1
- package/src/dsl/verifier/proxy/proxy.d.ts +2 -2
- package/src/dsl/verifier/proxy/proxy.js +22 -26
- package/src/dsl/verifier/proxy/proxy.js.map +1 -1
- package/src/dsl/verifier/proxy/proxy.spec.js +11 -53
- package/src/dsl/verifier/proxy/proxy.spec.js.map +1 -1
- package/src/dsl/verifier/proxy/proxyRequest.d.ts +3 -3
- package/src/dsl/verifier/proxy/proxyRequest.js +7 -7
- package/src/dsl/verifier/proxy/proxyRequest.js.map +1 -1
- package/src/dsl/verifier/proxy/proxyRequest.spec.js +54 -104
- package/src/dsl/verifier/proxy/proxyRequest.spec.js.map +1 -1
- package/src/dsl/verifier/proxy/stateHandler/setupStates.d.ts +3 -3
- package/src/dsl/verifier/proxy/stateHandler/setupStates.js +14 -18
- package/src/dsl/verifier/proxy/stateHandler/setupStates.js.map +1 -1
- package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js +76 -193
- package/src/dsl/verifier/proxy/stateHandler/setupStates.spec.js.map +1 -1
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.d.ts +2 -2
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.js +23 -72
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.js.map +1 -1
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js +37 -122
- package/src/dsl/verifier/proxy/stateHandler/stateHandler.spec.js.map +1 -1
- package/src/dsl/verifier/proxy/tracer.d.ts +1 -1
- package/src/dsl/verifier/proxy/tracer.js +42 -35
- 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.d.ts +5 -1
- package/src/dsl/verifier/verifier.js +53 -60
- package/src/dsl/verifier/verifier.js.map +1 -1
- package/src/dsl/verifier/verifier.spec.js +84 -151
- package/src/dsl/verifier/verifier.spec.js.map +1 -1
- package/src/errors/configurationError.js +2 -22
- package/src/errors/configurationError.js.map +1 -1
- package/src/errors/graphQLQueryError.js +2 -22
- package/src/errors/graphQLQueryError.js.map +1 -1
- package/src/errors/matcherError.js +2 -22
- package/src/errors/matcherError.js.map +1 -1
- package/src/errors/verificationError.js +2 -22
- package/src/errors/verificationError.js.map +1 -1
- package/src/httpPact/ffi.d.ts +2 -2
- package/src/httpPact/ffi.js +28 -29
- package/src/httpPact/ffi.js.map +1 -1
- package/src/httpPact/ffi.spec.js +40 -83
- package/src/httpPact/ffi.spec.js.map +1 -1
- package/src/httpPact/index.d.ts +3 -3
- package/src/httpPact/index.js +92 -149
- package/src/httpPact/index.js.map +1 -1
- package/src/httpPact/index.spec.js +102 -195
- package/src/httpPact/index.spec.js.map +1 -1
- package/src/httpPact/tracing.js +20 -28
- package/src/httpPact/tracing.js.map +1 -1
- package/src/index.d.ts +25 -25
- package/src/index.js +29 -29
- package/src/index.js.map +1 -1
- package/src/messageConsumerPact.d.ts +5 -5
- package/src/messageConsumerPact.js +59 -53
- package/src/messageConsumerPact.js.map +1 -1
- package/src/messageConsumerPact.spec.js +55 -97
- package/src/messageConsumerPact.spec.js.map +1 -1
- package/src/messageProviderPact.d.ts +3 -3
- package/src/messageProviderPact.js +68 -85
- package/src/messageProviderPact.js.map +1 -1
- package/src/messageProviderPact.spec.js +96 -123
- package/src/messageProviderPact.spec.js.map +1 -1
- package/src/pact.integration.spec.js +242 -351
- package/src/pact.integration.spec.js.map +1 -1
- package/src/v3/display.d.ts +1 -1
- package/src/v3/display.js +44 -58
- package/src/v3/display.js.map +1 -1
- package/src/v3/ffi.js +20 -16
- package/src/v3/ffi.js.map +1 -1
- package/src/v3/ffi.spec.js +7 -42
- package/src/v3/ffi.spec.js.map +1 -1
- package/src/v3/graphql/graphQL.d.ts +4 -4
- package/src/v3/graphql/graphQL.js +50 -75
- package/src/v3/graphql/graphQL.js.map +1 -1
- package/src/v3/graphql/index.d.ts +1 -1
- package/src/v3/graphql/index.js +1 -1
- package/src/v3/graphql/index.js.map +1 -1
- package/src/v3/index.d.ts +4 -12
- package/src/v3/index.js +4 -12
- package/src/v3/index.js.map +1 -1
- package/src/v3/matchers.d.ts +15 -3
- package/src/v3/matchers.js +131 -148
- package/src/v3/matchers.js.map +1 -1
- package/src/v3/matchers.spec.js +281 -232
- package/src/v3/matchers.spec.js.map +1 -1
- package/src/v3/pact.d.ts +2 -2
- package/src/v3/pact.js +108 -151
- package/src/v3/pact.js.map +1 -1
- package/src/v3/pact.spec.js +94 -0
- package/src/v3/pact.spec.js.map +1 -0
- package/src/v3/types.d.ts +19 -3
- package/src/v3/types.js +22 -1
- package/src/v3/types.js.map +1 -1
- package/src/v4/graphql/graphQLInteractionWithRequest.d.ts +4 -4
- package/src/v4/graphql/graphQLInteractionWithRequest.js +21 -17
- package/src/v4/graphql/graphQLInteractionWithRequest.js.map +1 -1
- package/src/v4/graphql/graphQLRequestBuilder.d.ts +3 -3
- package/src/v4/graphql/graphQLRequestBuilder.js +18 -20
- package/src/v4/graphql/graphQLRequestBuilder.js.map +1 -1
- package/src/v4/graphql/index.d.ts +6 -6
- package/src/v4/graphql/index.js +21 -17
- package/src/v4/graphql/index.js.map +1 -1
- package/src/v4/graphql/types.d.ts +5 -5
- package/src/v4/http/index.d.ts +2 -2
- package/src/v4/http/index.js +53 -93
- package/src/v4/http/index.js.map +1 -1
- package/src/v4/http/index.spec.d.ts +1 -0
- package/src/v4/http/index.spec.js +73 -0
- package/src/v4/http/index.spec.js.map +1 -0
- package/src/v4/http/interactionWithCompleteRequest.d.ts +4 -7
- package/src/v4/http/interactionWithCompleteRequest.js +6 -10
- package/src/v4/http/interactionWithCompleteRequest.js.map +1 -1
- package/src/v4/http/interactionWithPlugin.d.ts +3 -3
- package/src/v4/http/interactionWithPlugin.js +14 -11
- package/src/v4/http/interactionWithPlugin.js.map +1 -1
- package/src/v4/http/interactionWithPluginRequest.d.ts +4 -3
- package/src/v4/http/interactionWithPluginRequest.js +17 -9
- package/src/v4/http/interactionWithPluginRequest.js.map +1 -1
- package/src/v4/http/interactionWithPluginResponse.d.ts +2 -2
- package/src/v4/http/interactionWithPluginResponse.js +10 -48
- package/src/v4/http/interactionWithPluginResponse.js.map +1 -1
- package/src/v4/http/interactionWithRequest.d.ts +4 -3
- package/src/v4/http/interactionWithRequest.js +17 -9
- package/src/v4/http/interactionWithRequest.js.map +1 -1
- package/src/v4/http/interactionWithRequest.spec.d.ts +1 -0
- package/src/v4/http/interactionWithRequest.spec.js +82 -0
- package/src/v4/http/interactionWithRequest.spec.js.map +1 -0
- package/src/v4/http/interactionWithResponse.d.ts +2 -2
- package/src/v4/http/interactionWithResponse.js +10 -48
- package/src/v4/http/interactionWithResponse.js.map +1 -1
- package/src/v4/http/requestBuilder.d.ts +4 -3
- package/src/v4/http/requestBuilder.js +36 -34
- package/src/v4/http/requestBuilder.js.map +1 -1
- package/src/v4/http/requestBuilder.spec.d.ts +1 -0
- package/src/v4/http/requestBuilder.spec.js +42 -0
- package/src/v4/http/requestBuilder.spec.js.map +1 -0
- package/src/v4/http/requestWithPluginBuilder.d.ts +3 -2
- package/src/v4/http/requestWithPluginBuilder.js +30 -46
- package/src/v4/http/requestWithPluginBuilder.js.map +1 -1
- package/src/v4/http/requestWithPluginBuilder.spec.d.ts +1 -0
- package/src/v4/http/requestWithPluginBuilder.spec.js +34 -0
- package/src/v4/http/requestWithPluginBuilder.spec.js.map +1 -0
- package/src/v4/http/responseBuilder.d.ts +4 -3
- package/src/v4/http/responseBuilder.js +28 -25
- package/src/v4/http/responseBuilder.js.map +1 -1
- package/src/v4/http/responseBuilder.spec.d.ts +1 -0
- package/src/v4/http/responseBuilder.spec.js +42 -0
- package/src/v4/http/responseBuilder.spec.js.map +1 -0
- package/src/v4/http/responseWithPluginBuilder.d.ts +1 -1
- package/src/v4/http/responseWithPluginBuilder.js +5 -25
- package/src/v4/http/responseWithPluginBuilder.js.map +1 -1
- package/src/v4/http/responseWithPluginBuilder.spec.d.ts +1 -0
- package/src/v4/http/responseWithPluginBuilder.spec.js +34 -0
- package/src/v4/http/responseWithPluginBuilder.spec.js.map +1 -0
- package/src/v4/http/types.d.ts +13 -4
- package/src/v4/http/unconfiguredInteraction.d.ts +6 -5
- package/src/v4/http/unconfiguredInteraction.js +31 -26
- package/src/v4/http/unconfiguredInteraction.js.map +1 -1
- package/src/v4/index.d.ts +6 -5
- package/src/v4/index.js +32 -35
- package/src/v4/index.js.map +1 -1
- package/src/v4/message/asynchronousMessage.d.ts +7 -6
- package/src/v4/message/asynchronousMessage.js +157 -190
- package/src/v4/message/asynchronousMessage.js.map +1 -1
- package/src/v4/message/index.d.ts +7 -6
- package/src/v4/message/index.js +188 -217
- package/src/v4/message/index.js.map +1 -1
- package/src/v4/message/types.d.ts +5 -3
- package/src/v4/types.d.ts +3 -3
- package/src/xml/index.d.ts +4 -0
- package/src/xml/index.js +21 -0
- package/src/xml/index.js.map +1 -0
- package/src/{v3/xml → xml}/xmlBuilder.d.ts +1 -3
- package/src/{v3/xml → xml}/xmlBuilder.js +7 -9
- package/src/xml/xmlBuilder.js.map +1 -0
- package/src/{v3/xml → xml}/xmlElement.d.ts +2 -2
- package/src/xml/xmlElement.js +73 -0
- package/src/xml/xmlElement.js.map +1 -0
- package/src/xml/xmlElement.spec.d.ts +1 -0
- package/src/xml/xmlElement.spec.js +107 -0
- package/src/xml/xmlElement.spec.js.map +1 -0
- package/src/xml/xmlNode.js +7 -0
- package/src/xml/xmlNode.js.map +1 -0
- package/src/{v3/xml → xml}/xmlText.d.ts +1 -1
- package/src/xml/xmlText.js +15 -0
- package/src/xml/xmlText.js.map +1 -0
- package/scripts/install-plugins +0 -106
- package/src/v3/xml/xmlBuilder.js.map +0 -1
- package/src/v3/xml/xmlElement.js +0 -90
- package/src/v3/xml/xmlElement.js.map +0 -1
- package/src/v3/xml/xmlElement.spec.js +0 -113
- package/src/v3/xml/xmlElement.spec.js.map +0 -1
- package/src/v3/xml/xmlNode.js +0 -10
- package/src/v3/xml/xmlNode.js.map +0 -1
- package/src/v3/xml/xmlText.js +0 -31
- package/src/v3/xml/xmlText.js.map +0 -1
- /package/src/v3/{xml/xmlElement.spec.d.ts → pact.spec.d.ts} +0 -0
- /package/src/{v3/xml → xml}/xmlNode.d.ts +0 -0
package/src/xml/index.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./xmlBuilder"), exports);
|
|
18
|
+
__exportStar(require("./xmlElement"), exports);
|
|
19
|
+
__exportStar(require("./xmlNode"), exports);
|
|
20
|
+
__exportStar(require("./xmlText"), exports);
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/xml/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,+CAA6B;AAC7B,4CAA0B;AAC1B,4CAA0B"}
|
|
@@ -3,9 +3,7 @@ import { XmlElement } from './xmlElement';
|
|
|
3
3
|
* XML Builder class for constructing XML documents with matchers
|
|
4
4
|
*/
|
|
5
5
|
export declare class XmlBuilder {
|
|
6
|
-
private version;
|
|
7
|
-
private charset;
|
|
8
6
|
private root;
|
|
9
|
-
constructor(
|
|
7
|
+
constructor(_version: string, _charset: string, rootElement: string);
|
|
10
8
|
build(callback: (doc: XmlElement) => void): string;
|
|
11
9
|
}
|
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.XmlBuilder = void 0;
|
|
4
|
-
|
|
4
|
+
const xmlElement_1 = require("./xmlElement");
|
|
5
5
|
/**
|
|
6
6
|
* XML Builder class for constructing XML documents with matchers
|
|
7
7
|
*/
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
this.charset = charset;
|
|
8
|
+
class XmlBuilder {
|
|
9
|
+
root;
|
|
10
|
+
constructor(_version, _charset, rootElement) {
|
|
12
11
|
this.root = new xmlElement_1.XmlElement(rootElement);
|
|
13
12
|
}
|
|
14
|
-
|
|
13
|
+
build(callback) {
|
|
15
14
|
callback(this.root);
|
|
16
15
|
return JSON.stringify(this);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
}());
|
|
16
|
+
}
|
|
17
|
+
}
|
|
20
18
|
exports.XmlBuilder = XmlBuilder;
|
|
21
19
|
//# sourceMappingURL=xmlBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xmlBuilder.js","sourceRoot":"","sources":["../../../src/xml/xmlBuilder.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAE1C;;GAEG;AACH,MAAa,UAAU;IACb,IAAI,CAAa;IAEzB,YAAY,QAAgB,EAAE,QAAgB,EAAE,WAAmB;QACjE,IAAI,CAAC,IAAI,GAAG,IAAI,uBAAU,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAEM,KAAK,CAAC,QAAmC;QAC9C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;CACF;AAZD,gCAYC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Matcher } from '../types';
|
|
1
|
+
import type { Matcher } from '../v3/types';
|
|
2
2
|
import { XmlNode } from './xmlNode';
|
|
3
3
|
export type XmlAttributes = Map<string, string>;
|
|
4
4
|
export type XmlCallback = (n: XmlElement) => void;
|
|
5
5
|
export declare class XmlElement extends XmlNode {
|
|
6
6
|
name: string;
|
|
7
|
-
private attributes;
|
|
8
7
|
children: XmlNode[];
|
|
8
|
+
attributes?: XmlAttributes;
|
|
9
9
|
constructor(name: string);
|
|
10
10
|
setName(name: string): XmlElement;
|
|
11
11
|
setAttributes(attributes: XmlAttributes): XmlElement;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.XmlElement = void 0;
|
|
4
|
+
const matchers_1 = require("../v3/matchers");
|
|
5
|
+
const xmlNode_1 = require("./xmlNode");
|
|
6
|
+
const xmlText_1 = require("./xmlText");
|
|
7
|
+
const modifyElementWithCallback = (el, cb) => {
|
|
8
|
+
if (cb) {
|
|
9
|
+
cb(el);
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
class XmlElement extends xmlNode_1.XmlNode {
|
|
13
|
+
name;
|
|
14
|
+
children = [];
|
|
15
|
+
attributes;
|
|
16
|
+
constructor(name) {
|
|
17
|
+
super();
|
|
18
|
+
this.name = name;
|
|
19
|
+
}
|
|
20
|
+
setName(name) {
|
|
21
|
+
this.name = name;
|
|
22
|
+
return this;
|
|
23
|
+
}
|
|
24
|
+
setAttributes(attributes) {
|
|
25
|
+
this.attributes = attributes;
|
|
26
|
+
return this;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Creates a new element with the given name and attributes and then sets it's text content (can be a matcher)
|
|
30
|
+
* @param name Element name
|
|
31
|
+
* @param attributes Map of element attributes
|
|
32
|
+
* @param arg Callback to configure the new element, or text content to create the new element with (can be a matcher)
|
|
33
|
+
*/
|
|
34
|
+
appendElement(name, attributes, arg) {
|
|
35
|
+
const el = new XmlElement(name).setAttributes(attributes);
|
|
36
|
+
if (arg) {
|
|
37
|
+
if (typeof arg !== 'function') {
|
|
38
|
+
el.appendText(arg);
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
modifyElementWithCallback(el, arg);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
this.children.push(el);
|
|
45
|
+
return this;
|
|
46
|
+
}
|
|
47
|
+
appendText(content) {
|
|
48
|
+
if (typeof content === 'object' && content['pact:matcher:type']) {
|
|
49
|
+
this.children.push(new xmlText_1.XmlText((0, matchers_1.isMatcher)(content) &&
|
|
50
|
+
'value' in content &&
|
|
51
|
+
content.value !== undefined &&
|
|
52
|
+
typeof content.value === 'string'
|
|
53
|
+
? content.value
|
|
54
|
+
: '', content));
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
this.children.push(new xmlText_1.XmlText(content.toString()));
|
|
58
|
+
}
|
|
59
|
+
return this;
|
|
60
|
+
}
|
|
61
|
+
eachLike(name, attributes, cb, options = { examples: 1 }) {
|
|
62
|
+
const el = new XmlElement(name).setAttributes(attributes);
|
|
63
|
+
modifyElementWithCallback(el, cb);
|
|
64
|
+
this.children.push({
|
|
65
|
+
'pact:matcher:type': 'type',
|
|
66
|
+
value: el,
|
|
67
|
+
examples: options.examples,
|
|
68
|
+
});
|
|
69
|
+
return this;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
exports.XmlElement = XmlElement;
|
|
73
|
+
//# sourceMappingURL=xmlElement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xmlElement.js","sourceRoot":"","sources":["../../../src/xml/xmlElement.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAE3C,uCAAoC;AACpC,uCAAoC;AAKpC,MAAM,yBAAyB,GAAG,CAAC,EAAc,EAAE,EAAgB,EAAE,EAAE;IACrE,IAAI,EAAE,EAAE,CAAC;QACP,EAAE,CAAC,EAAE,CAAC,CAAC;IACT,CAAC;AACH,CAAC,CAAC;AACF,MAAa,UAAW,SAAQ,iBAAO;IAIlB;IAHnB,QAAQ,GAAc,EAAE,CAAC;IACzB,UAAU,CAAiB;IAE3B,YAAmB,IAAY;QAC7B,KAAK,EAAE,CAAC;QADS,SAAI,GAAJ,IAAI,CAAQ;IAE/B,CAAC;IAEM,OAAO,CAAC,IAAY;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAa,CAAC,UAAyB;QAC5C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,aAAa,CAClB,IAAY,EACZ,UAAyB,EACzB,GAA4C;QAE5C,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,GAAG,EAAE,CAAC;YACR,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;gBAC9B,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,yBAAyB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEvB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,UAAU,CAAC,OAAiC;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAChE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,IAAI,iBAAO,CACT,IAAA,oBAAS,EAAC,OAAO,CAAC;gBAChB,OAAO,IAAI,OAAO;gBAClB,OAAO,CAAC,KAAK,KAAK,SAAS;gBAC3B,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ;gBACjC,CAAC,CAAC,OAAO,CAAC,KAAK;gBACf,CAAC,CAAC,EAAE,EACN,OAAO,CACR,CACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,iBAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,QAAQ,CACb,IAAY,EACZ,UAAyB,EACzB,EAAgB,EAChB,UAA2B,EAAE,QAAQ,EAAE,CAAC,EAAE;QAE1C,MAAM,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;CACF;AA/ED,gCA+EC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
const MatchersV3 = __importStar(require("../v3/matchers"));
|
|
37
|
+
const xmlElement_1 = require("./xmlElement");
|
|
38
|
+
const xmlText_1 = require("./xmlText");
|
|
39
|
+
describe('xml element', () => {
|
|
40
|
+
describe('appendText', () => {
|
|
41
|
+
it('can be called with a string', () => {
|
|
42
|
+
const xml = new xmlElement_1.XmlElement('my name')
|
|
43
|
+
.appendText('some string')
|
|
44
|
+
.appendText('second string');
|
|
45
|
+
expect(xml, 'XML element').toHaveProperty('name');
|
|
46
|
+
expect(xml.name, 'name of XML element').toBe('my name');
|
|
47
|
+
expect(xml, 'XML element').toHaveProperty('children');
|
|
48
|
+
expect(xml.children, 'children of XML element').toHaveLength(2);
|
|
49
|
+
expect(xml.children[0], 'type of first child of XML element').toBeInstanceOf(xmlText_1.XmlText);
|
|
50
|
+
expect(xml.children[0], 'first child of XML element').toHaveProperty('content');
|
|
51
|
+
expect(xml.children[0].content, 'content of first child').toBe('some string');
|
|
52
|
+
expect(xml.children[0], 'first child of XML element').toHaveProperty('matcher');
|
|
53
|
+
expect(xml.children[0].matcher, 'matcher of the first child').toBeUndefined();
|
|
54
|
+
});
|
|
55
|
+
it('can be called with a Matcher', () => {
|
|
56
|
+
const xml = new xmlElement_1.XmlElement('my name')
|
|
57
|
+
.appendText(MatchersV3.string('string matcher'))
|
|
58
|
+
.appendText(MatchersV3.regex(/^.*$/, 'regex matcher'))
|
|
59
|
+
.appendText(MatchersV3.date('yyyy-MM-dd HH:mm:ss.SSSX', '2016-02-11T09:46:56.023Z'))
|
|
60
|
+
.appendText(MatchersV3.datetime('yyyy-MM-dd HH:mm:ss.SSSX', '2016-02-11T09:46:56.023Z'))
|
|
61
|
+
.appendText(MatchersV3.timestamp('yyyy-MM-dd HH:mm:ss.SSSX', '2016-02-11T09:46:56.023Z'))
|
|
62
|
+
.appendText(MatchersV3.time('yyyy-MM-dd HH:mm:ss.SSSX', '2016-02-11T09:46:56.023Z'))
|
|
63
|
+
.appendText(MatchersV3.uuid('adc214d3-1c9f-460d-b6c8-8f2bc8911860'));
|
|
64
|
+
expect(xml, 'XML element').toHaveProperty('name');
|
|
65
|
+
expect(xml.name, 'name of XML element').toBe('my name');
|
|
66
|
+
expect(xml, 'XML element').toHaveProperty('children');
|
|
67
|
+
expect(xml.children, 'children of XML element').toHaveLength(7);
|
|
68
|
+
for (let i = 0; i < 7; i += 1) {
|
|
69
|
+
const child = xml.children[i];
|
|
70
|
+
expect(child).toBeInstanceOf(xmlText_1.XmlText);
|
|
71
|
+
expect(child).toHaveProperty('content');
|
|
72
|
+
expect(child.content).not.toBe('');
|
|
73
|
+
expect(child.content).toBeTypeOf('string');
|
|
74
|
+
expect(child).toHaveProperty('matcher');
|
|
75
|
+
expect(child.matcher).toHaveProperty('value');
|
|
76
|
+
expect(child.matcher?.value).toBeTypeOf('string');
|
|
77
|
+
expect(child.matcher?.value).not.toBe('');
|
|
78
|
+
expect(child.matcher).toHaveProperty('pact:matcher:type');
|
|
79
|
+
expect(child.matcher?.['pact:matcher:type']).toBeTypeOf('string');
|
|
80
|
+
expect(child.matcher?.['pact:matcher:type']).not.toBe('');
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
it('sets content to an empty string if the Matcher has no value', () => {
|
|
84
|
+
function noValueMatcher() {
|
|
85
|
+
return {
|
|
86
|
+
'pact:matcher:type': 'no-value',
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
const xml = new xmlElement_1.XmlElement('my name').appendText(noValueMatcher());
|
|
90
|
+
expect(xml, 'XML element').toHaveProperty('name');
|
|
91
|
+
expect(xml.name, 'name of XML element').toBe('my name');
|
|
92
|
+
expect(xml, 'XML element').toHaveProperty('children');
|
|
93
|
+
expect(xml.children, 'children of XML element').toHaveLength(1);
|
|
94
|
+
const child = xml.children[0];
|
|
95
|
+
expect(child).toBeInstanceOf(xmlText_1.XmlText);
|
|
96
|
+
expect(child).toHaveProperty('content');
|
|
97
|
+
expect(child.content).toBe('');
|
|
98
|
+
expect(child.content).toBeTypeOf('string');
|
|
99
|
+
expect(child).toHaveProperty('matcher');
|
|
100
|
+
expect(child.matcher).not.toHaveProperty('value');
|
|
101
|
+
expect(child.matcher).toHaveProperty('pact:matcher:type');
|
|
102
|
+
expect(child.matcher?.['pact:matcher:type']).toBeTypeOf('string');
|
|
103
|
+
expect(child.matcher?.['pact:matcher:type']).not.toBe('');
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
});
|
|
107
|
+
//# sourceMappingURL=xmlElement.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xmlElement.spec.js","sourceRoot":"","sources":["../../../src/xml/xmlElement.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xmlNode.js","sourceRoot":"","sources":["../../../src/xml/xmlNode.ts"],"names":[],"mappings":";;;AAAA,MAAa,OAAO;CAAG;AAAvB,0BAAuB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.XmlText = void 0;
|
|
4
|
+
const xmlNode_1 = require("./xmlNode");
|
|
5
|
+
class XmlText extends xmlNode_1.XmlNode {
|
|
6
|
+
content;
|
|
7
|
+
matcher;
|
|
8
|
+
constructor(content, matcher) {
|
|
9
|
+
super();
|
|
10
|
+
this.content = content;
|
|
11
|
+
this.matcher = matcher;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.XmlText = XmlText;
|
|
15
|
+
//# sourceMappingURL=xmlText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xmlText.js","sourceRoot":"","sources":["../../../src/xml/xmlText.ts"],"names":[],"mappings":";;;AACA,uCAAoC;AAEpC,MAAa,OAAQ,SAAQ,iBAAO;IAEzB;IACA;IAFT,YACS,OAAe,EACf,OAAyB;QAEhC,KAAK,EAAE,CAAC;QAHD,YAAO,GAAP,OAAO,CAAQ;QACf,YAAO,GAAP,OAAO,CAAkB;IAGlC,CAAC;CACF;AAPD,0BAOC"}
|
package/scripts/install-plugins
DELETED
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
#!/bin/sh
|
|
2
|
-
#
|
|
3
|
-
# Usage:
|
|
4
|
-
# $ curl -fsSL https://raw.githubusercontent.com/pact-foundation/pact-plugins/master/install-cli.sh | bash
|
|
5
|
-
# or
|
|
6
|
-
# $ wget -q https://raw.githubusercontent.com/pact-foundation/pact-plugins/master/install-cli.sh -O- | bash
|
|
7
|
-
|
|
8
|
-
# While most shells support `local`, it technically isn't POSIX. This will check
|
|
9
|
-
# for `local` and alias it to `typeset` if it doesn't exist.
|
|
10
|
-
# shellcheck disable=SC3043
|
|
11
|
-
# If a shell does not support `local`, it will be aliased to
|
|
12
|
-
# `typeset`, so this check is not needed.
|
|
13
|
-
has_local() {
|
|
14
|
-
local _has_local
|
|
15
|
-
}
|
|
16
|
-
has_local 2>/dev/null || alias local=typeset
|
|
17
|
-
|
|
18
|
-
set -o errexit # Exit on error
|
|
19
|
-
set -o nounset # Treat unset variables as an error
|
|
20
|
-
|
|
21
|
-
# Colours
|
|
22
|
-
WHITE_BOLD='\033[1;37m'
|
|
23
|
-
RESET='\033[0m'
|
|
24
|
-
|
|
25
|
-
detect_osarch() {
|
|
26
|
-
case $(uname -sm) in
|
|
27
|
-
'Linux x86_64')
|
|
28
|
-
os='linux'
|
|
29
|
-
arch='x86_64'
|
|
30
|
-
ext=''
|
|
31
|
-
;;
|
|
32
|
-
'Linux aarch64')
|
|
33
|
-
os='linux'
|
|
34
|
-
arch='aarch64'
|
|
35
|
-
ext=''
|
|
36
|
-
;;
|
|
37
|
-
'Darwin x86' | 'Darwin x86_64')
|
|
38
|
-
os='osx'
|
|
39
|
-
arch='x86_64'
|
|
40
|
-
ext=''
|
|
41
|
-
;;
|
|
42
|
-
'Darwin arm64')
|
|
43
|
-
os='osx'
|
|
44
|
-
arch='aarch64'
|
|
45
|
-
ext=''
|
|
46
|
-
;;
|
|
47
|
-
CYGWIN* | MINGW32* | MSYS* | MINGW*)
|
|
48
|
-
os="windows"
|
|
49
|
-
arch='x86_64'
|
|
50
|
-
ext='.exe'
|
|
51
|
-
;;
|
|
52
|
-
*)
|
|
53
|
-
echo "Sorry, you'll need to install the plugin CLI manually."
|
|
54
|
-
exit 1
|
|
55
|
-
;;
|
|
56
|
-
esac
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
install_pact_plugin_cli() {
|
|
60
|
-
[ -f ~/.pact/bin/pact-plugin-cli ] && \
|
|
61
|
-
echo "${WHITE_BOLD}=> Plugin CLI already installed${RESET}" && \
|
|
62
|
-
return
|
|
63
|
-
|
|
64
|
-
local version="0.1.2"
|
|
65
|
-
detect_osarch
|
|
66
|
-
local url="https://github.com/pact-foundation/pact-plugins/releases/download/pact-plugin-cli-v${version}/pact-plugin-cli-${os}-${arch}${ext}.gz"
|
|
67
|
-
|
|
68
|
-
echo "${WHITE_BOLD}=> Installing plugins CLI version '${version}'${RESET}"
|
|
69
|
-
echo " - OS: ${os}"
|
|
70
|
-
echo " - Arch: ${arch}"
|
|
71
|
-
echo " - Version: ${version}"
|
|
72
|
-
echo " - URL: ${url}"
|
|
73
|
-
echo " - Downloading into: ~/.pact/bin/"
|
|
74
|
-
|
|
75
|
-
mkdir -p ~/.pact/bin
|
|
76
|
-
|
|
77
|
-
if command -v curl >/dev/null 2>&1; then
|
|
78
|
-
curl -sSL "$url" | gunzip -c > ~/.pact/bin/pact-plugin-cli
|
|
79
|
-
elif command -v wget >/dev/null 2>&1; then
|
|
80
|
-
wget -qO- "$url" | gunzip -c > ~/.pact/bin/pact-plugin-cli
|
|
81
|
-
else
|
|
82
|
-
echo "Neither curl nor wget found. Please install one of these packages."
|
|
83
|
-
exit 1
|
|
84
|
-
fi
|
|
85
|
-
chmod +x ~/.pact/bin/pact-plugin-cli
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
install_matt_plugin() {
|
|
89
|
-
[ -d ~/.pact/plugins/matt-0.1.1 ] && \
|
|
90
|
-
echo "${WHITE_BOLD}=> MATT plugin already installed${RESET}" && \
|
|
91
|
-
return
|
|
92
|
-
|
|
93
|
-
local version="0.1.1"
|
|
94
|
-
local url="https://github.com/mefellows/pact-matt-plugin/releases/tag/v${version}"
|
|
95
|
-
|
|
96
|
-
echo "${WHITE_BOLD}=> Installing MATT plugin version '${version}'${RESET}"
|
|
97
|
-
~/.pact/bin/pact-plugin-cli install "$url"
|
|
98
|
-
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
main() {
|
|
102
|
-
install_pact_plugin_cli
|
|
103
|
-
install_matt_plugin
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
main
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"xmlBuilder.js","sourceRoot":"","sources":["../../../../src/v3/xml/xmlBuilder.ts"],"names":[],"mappings":";;;AAAA,2CAA0C;AAE1C;;GAEG;AACH;IAGE,oBACU,OAAe,EACf,OAAe,EACvB,WAAmB;QAFX,YAAO,GAAP,OAAO,CAAQ;QACf,YAAO,GAAP,OAAO,CAAQ;QAGvB,IAAI,CAAC,IAAI,GAAG,IAAI,uBAAU,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAEM,0BAAK,GAAZ,UAAa,QAAmC;QAC9C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IACH,iBAAC;AAAD,CAAC,AAhBD,IAgBC;AAhBY,gCAAU"}
|
package/src/v3/xml/xmlElement.js
DELETED
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.XmlElement = void 0;
|
|
19
|
-
var matchers_1 = require("../matchers");
|
|
20
|
-
var xmlNode_1 = require("./xmlNode");
|
|
21
|
-
var xmlText_1 = require("./xmlText");
|
|
22
|
-
var modifyElementWithCallback = function (el, cb) {
|
|
23
|
-
if (cb) {
|
|
24
|
-
cb(el);
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
var XmlElement = /** @class */ (function (_super) {
|
|
28
|
-
__extends(XmlElement, _super);
|
|
29
|
-
function XmlElement(name) {
|
|
30
|
-
var _this = _super.call(this) || this;
|
|
31
|
-
_this.name = name;
|
|
32
|
-
_this.children = [];
|
|
33
|
-
return _this;
|
|
34
|
-
}
|
|
35
|
-
XmlElement.prototype.setName = function (name) {
|
|
36
|
-
this.name = name;
|
|
37
|
-
return this;
|
|
38
|
-
};
|
|
39
|
-
XmlElement.prototype.setAttributes = function (attributes) {
|
|
40
|
-
this.attributes = attributes;
|
|
41
|
-
return this;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Creates a new element with the given name and attributes and then sets it's text content (can be a matcher)
|
|
45
|
-
* @param name Element name
|
|
46
|
-
* @param attributes Map of element attributes
|
|
47
|
-
* @param arg Callback to configure the new element, or text content to create the new element with (can be a matcher)
|
|
48
|
-
*/
|
|
49
|
-
XmlElement.prototype.appendElement = function (name, attributes, arg) {
|
|
50
|
-
var el = new XmlElement(name).setAttributes(attributes);
|
|
51
|
-
if (arg) {
|
|
52
|
-
if (typeof arg !== 'function') {
|
|
53
|
-
el.appendText(arg);
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
modifyElementWithCallback(el, arg);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
this.children.push(el);
|
|
60
|
-
return this;
|
|
61
|
-
};
|
|
62
|
-
XmlElement.prototype.appendText = function (content) {
|
|
63
|
-
if (typeof content === 'object' && content['pact:matcher:type']) {
|
|
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));
|
|
70
|
-
}
|
|
71
|
-
else {
|
|
72
|
-
this.children.push(new xmlText_1.XmlText(content.toString()));
|
|
73
|
-
}
|
|
74
|
-
return this;
|
|
75
|
-
};
|
|
76
|
-
XmlElement.prototype.eachLike = function (name, attributes, cb, options) {
|
|
77
|
-
if (options === void 0) { options = { examples: 1 }; }
|
|
78
|
-
var el = new XmlElement(name).setAttributes(attributes);
|
|
79
|
-
modifyElementWithCallback(el, cb);
|
|
80
|
-
this.children.push({
|
|
81
|
-
'pact:matcher:type': 'type',
|
|
82
|
-
value: el,
|
|
83
|
-
examples: options.examples,
|
|
84
|
-
});
|
|
85
|
-
return this;
|
|
86
|
-
};
|
|
87
|
-
return XmlElement;
|
|
88
|
-
}(xmlNode_1.XmlNode));
|
|
89
|
-
exports.XmlElement = XmlElement;
|
|
90
|
-
//# sourceMappingURL=xmlElement.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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,CAAC;QACP,EAAE,CAAC,EAAE,CAAC,CAAC;IACT,CAAC;AACH,CAAC,CAAC;AACF;IAAgC,8BAAO;IAKrC,oBAAmB,IAAY;QAC7B,YAAA,MAAK,WAAE,SAAC;QADS,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,CAAC;YACR,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;gBAC9B,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,yBAAyB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;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,CAAC;YAChE,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;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,iBAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC;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"}
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
var chai = __importStar(require("chai"));
|
|
37
|
-
var mocha_1 = require("mocha");
|
|
38
|
-
var xmlText_1 = require("./xmlText");
|
|
39
|
-
var xmlElement_1 = require("./xmlElement");
|
|
40
|
-
var MatchersV3 = __importStar(require("../matchers"));
|
|
41
|
-
var expect = chai.expect;
|
|
42
|
-
(0, mocha_1.describe)('xml element', function () {
|
|
43
|
-
(0, mocha_1.describe)('appendText', function () {
|
|
44
|
-
it('can be called with a string', function () {
|
|
45
|
-
var xml = new xmlElement_1.XmlElement('my name')
|
|
46
|
-
.appendText('some string')
|
|
47
|
-
.appendText('second string');
|
|
48
|
-
expect(xml, 'XML element').to.have.property('name');
|
|
49
|
-
expect(xml.name, 'name of XML element').to.equal('my name');
|
|
50
|
-
expect(xml, 'XML element').to.have.property('children');
|
|
51
|
-
expect(xml.children, 'children of XML element').to.be.lengthOf(2);
|
|
52
|
-
expect(xml.children[0], 'type of first child of XML element').to.be.instanceOf(xmlText_1.XmlText);
|
|
53
|
-
expect(xml.children[0], 'first child of XML element').to.have.property('content');
|
|
54
|
-
expect(xml.children[0].content, 'content of first child').to.equal('some string');
|
|
55
|
-
expect(xml.children[0], 'first child of XML element').to.have.property('matcher');
|
|
56
|
-
expect(xml.children[0].matcher, 'matcher of the first child')
|
|
57
|
-
.to.be.undefined;
|
|
58
|
-
});
|
|
59
|
-
it('can be called with a Matcher', function () {
|
|
60
|
-
var _a, _b, _c, _d;
|
|
61
|
-
var xml = new xmlElement_1.XmlElement('my name')
|
|
62
|
-
.appendText(MatchersV3.string('string matcher'))
|
|
63
|
-
.appendText(MatchersV3.regex(/^.*$/, 'regex matcher'))
|
|
64
|
-
.appendText(MatchersV3.date('yyyy-MM-dd HH:mm:ss.SSSX', '2016-02-11T09:46:56.023Z'))
|
|
65
|
-
.appendText(MatchersV3.datetime('yyyy-MM-dd HH:mm:ss.SSSX', '2016-02-11T09:46:56.023Z'))
|
|
66
|
-
.appendText(MatchersV3.timestamp('yyyy-MM-dd HH:mm:ss.SSSX', '2016-02-11T09:46:56.023Z'))
|
|
67
|
-
.appendText(MatchersV3.time('yyyy-MM-dd HH:mm:ss.SSSX', '2016-02-11T09:46:56.023Z'))
|
|
68
|
-
.appendText(MatchersV3.uuid('adc214d3-1c9f-460d-b6c8-8f2bc8911860'));
|
|
69
|
-
expect(xml, 'XML element').to.have.property('name');
|
|
70
|
-
expect(xml.name, 'name of XML element').to.equal('my name');
|
|
71
|
-
expect(xml, 'XML element').to.have.property('children');
|
|
72
|
-
expect(xml.children, 'children of XML element').to.be.lengthOf(7);
|
|
73
|
-
for (var i = 0; i < 7; i += 1) {
|
|
74
|
-
var child = xml.children[i];
|
|
75
|
-
expect(child).to.be.instanceOf(xmlText_1.XmlText);
|
|
76
|
-
expect(child).to.have.property('content');
|
|
77
|
-
expect(child.content).not.to.be.empty;
|
|
78
|
-
expect(child.content).to.be.a('string');
|
|
79
|
-
expect(child).to.have.property('matcher');
|
|
80
|
-
expect(child.matcher).to.have.property('value');
|
|
81
|
-
expect((_a = child.matcher) === null || _a === void 0 ? void 0 : _a.value).to.be.a('string');
|
|
82
|
-
expect((_b = child.matcher) === null || _b === void 0 ? void 0 : _b.value).not.to.be.empty;
|
|
83
|
-
expect(child.matcher).to.have.property('pact:matcher:type');
|
|
84
|
-
expect((_c = child.matcher) === null || _c === void 0 ? void 0 : _c['pact:matcher:type']).to.be.a('string');
|
|
85
|
-
expect((_d = child.matcher) === null || _d === void 0 ? void 0 : _d['pact:matcher:type']).not.to.be.empty;
|
|
86
|
-
}
|
|
87
|
-
});
|
|
88
|
-
it('sets content to an empty string if the Matcher has no value', function () {
|
|
89
|
-
var _a, _b;
|
|
90
|
-
function noValueMatcher() {
|
|
91
|
-
return {
|
|
92
|
-
'pact:matcher:type': 'no-value',
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
var xml = new xmlElement_1.XmlElement('my name').appendText(noValueMatcher());
|
|
96
|
-
expect(xml, 'XML element').to.have.property('name');
|
|
97
|
-
expect(xml.name, 'name of XML element').to.equal('my name');
|
|
98
|
-
expect(xml, 'XML element').to.have.property('children');
|
|
99
|
-
expect(xml.children, 'children of XML element').to.be.lengthOf(1);
|
|
100
|
-
var child = xml.children[0];
|
|
101
|
-
expect(child).to.be.instanceOf(xmlText_1.XmlText);
|
|
102
|
-
expect(child).to.have.property('content');
|
|
103
|
-
expect(child.content).to.be.empty;
|
|
104
|
-
expect(child.content).to.be.a('string');
|
|
105
|
-
expect(child).to.have.property('matcher');
|
|
106
|
-
expect(child.matcher).not.to.have.property('value');
|
|
107
|
-
expect(child.matcher).to.have.property('pact:matcher:type');
|
|
108
|
-
expect((_a = child.matcher) === null || _a === void 0 ? void 0 : _a['pact:matcher:type']).to.be.a('string');
|
|
109
|
-
expect((_b = child.matcher) === null || _b === void 0 ? void 0 : _b['pact:matcher:type']).not.to.be.empty;
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
});
|
|
113
|
-
//# sourceMappingURL=xmlElement.spec.js.map
|