@pact-foundation/pact-core 19.2.0 → 20.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/.editorconfig +13 -0
- package/CHANGELOG.md +9 -0
- package/biome.jsonc +28 -0
- package/{src → dist}/consumer/checkErrors.js +1 -1
- package/dist/consumer/checkErrors.js.map +1 -0
- package/{src → dist}/consumer/index.d.ts +2 -2
- package/{src → dist}/consumer/index.js +9 -1
- package/dist/consumer/index.js.map +1 -0
- package/{src → dist}/consumer/internals.d.ts +2 -2
- package/dist/consumer/internals.js.map +1 -0
- package/{src → dist}/consumer/types.d.ts +49 -0
- package/dist/consumer/types.js.map +1 -0
- package/{src → dist}/ffi/index.d.ts +2 -2
- package/{src → dist}/ffi/index.js +17 -1
- package/dist/ffi/index.js.map +1 -0
- package/{src → dist}/ffi/types.d.ts +5 -5
- package/{src → dist}/ffi/types.js +16 -0
- package/dist/ffi/types.js.map +1 -0
- package/{src → dist}/index.js +4 -5
- package/dist/index.js.map +1 -0
- package/dist/logger/crashMessage.js.map +1 -0
- package/{src → dist}/logger/index.d.ts +1 -1
- package/{src → dist}/logger/index.js +2 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logger/pino.d.ts +3 -0
- package/{src → dist}/logger/pino.js +3 -0
- package/dist/logger/pino.js.map +1 -0
- package/dist/logger/types.js.map +1 -0
- package/{src → dist}/pact-environment.js +1 -1
- package/dist/pact-environment.js.map +1 -0
- package/{src → dist}/pact.d.ts +2 -2
- package/{src → dist}/pact.js +3 -2
- package/dist/pact.js.map +1 -0
- package/{src → dist}/verifier/argumentMapper/arguments.d.ts +3 -3
- package/{src → dist}/verifier/argumentMapper/arguments.js +5 -5
- package/dist/verifier/argumentMapper/arguments.js.map +1 -0
- package/{src → dist}/verifier/argumentMapper/index.d.ts +2 -2
- package/{src → dist}/verifier/argumentMapper/index.js +1 -1
- package/dist/verifier/argumentMapper/index.js.map +1 -0
- package/{src → dist}/verifier/argumentMapper/types.d.ts +1 -1
- package/dist/verifier/argumentMapper/types.js.map +1 -0
- package/{src → dist}/verifier/index.d.ts +1 -1
- package/{src → dist}/verifier/index.js +4 -0
- package/dist/verifier/index.js.map +1 -0
- package/{src → dist}/verifier/nativeVerifier.d.ts +1 -1
- package/{src → dist}/verifier/nativeVerifier.js +4 -1
- package/dist/verifier/nativeVerifier.js.map +1 -0
- package/{src → dist}/verifier/types.d.ts +4 -1
- package/dist/verifier/types.js.map +1 -0
- package/{src → dist}/verifier/validateOptions.d.ts +1 -1
- package/{src → dist}/verifier/validateOptions.js +3 -0
- package/dist/verifier/validateOptions.js.map +1 -0
- package/junit.xml +526 -0
- package/package.json +32 -51
- package/eslint.config.mjs +0 -68
- package/src/consumer/checkErrors.js.map +0 -1
- package/src/consumer/index.js.map +0 -1
- package/src/consumer/internals.js.map +0 -1
- package/src/consumer/types.js.map +0 -1
- package/src/ffi/index.js.map +0 -1
- package/src/ffi/node-gyp-build.d.ts +0 -1
- package/src/ffi/node-gyp-build.js +0 -2
- package/src/ffi/node-gyp-build.js.map +0 -1
- package/src/ffi/types.js.map +0 -1
- package/src/index.js.map +0 -1
- package/src/logger/crashMessage.js.map +0 -1
- package/src/logger/index.js.map +0 -1
- package/src/logger/pino.d.ts +0 -3
- package/src/logger/pino.js.map +0 -1
- package/src/logger/types.js.map +0 -1
- package/src/pact-environment.js.map +0 -1
- package/src/pact.js.map +0 -1
- package/src/verifier/argumentMapper/arguments.js.map +0 -1
- package/src/verifier/argumentMapper/index.js.map +0 -1
- package/src/verifier/argumentMapper/types.js.map +0 -1
- package/src/verifier/index.js.map +0 -1
- package/src/verifier/nativeVerifier.js.map +0 -1
- package/src/verifier/types.js.map +0 -1
- package/src/verifier/validateOptions.js.map +0 -1
- package/tsconfig.test.json +0 -13
- package/{src → dist}/consumer/checkErrors.d.ts +0 -0
- package/{src → dist}/consumer/internals.js +0 -0
- package/{src → dist}/consumer/types.js +0 -0
- package/{src → dist}/index.d.ts +4 -4
- /package/{src → dist}/logger/crashMessage.d.ts +0 -0
- /package/{src → dist}/logger/crashMessage.js +0 -0
- /package/{src → dist}/logger/types.d.ts +0 -0
- /package/{src → dist}/logger/types.js +0 -0
- /package/{src → dist}/pact-environment.d.ts +0 -0
- /package/{src → dist}/verifier/argumentMapper/types.js +0 -0
- /package/{src → dist}/verifier/types.js +0 -0
package/.editorconfig
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# EditorConfig is awesome: http://EditorConfig.org
|
|
2
|
+
|
|
3
|
+
# top-most EditorConfig file
|
|
4
|
+
root = true
|
|
5
|
+
|
|
6
|
+
# Unix-style newlines with a newline ending every file
|
|
7
|
+
[*]
|
|
8
|
+
charset = utf-8
|
|
9
|
+
end_of_line = lf
|
|
10
|
+
insert_final_newline = true
|
|
11
|
+
trim_trailing_whitespace = true
|
|
12
|
+
indent_style = space
|
|
13
|
+
indent_size = 2
|
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [20.0.0](https://github.com/pact-foundation/pact-js-core/compare/v19.2.0...v20.0.0) (2026-05-29)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### ⚠ BREAKING CHANGES
|
|
9
|
+
|
|
10
|
+
* drop Node 18/20 support, target Node 22+ (#885)
|
|
11
|
+
|
|
12
|
+
* drop Node 18/20 support, target Node 22+ ([#885](https://github.com/pact-foundation/pact-js-core/issues/885)) ([60313ee](https://github.com/pact-foundation/pact-js-core/commit/60313ee47a5c4264c140c171bd37510fca78daba))
|
|
13
|
+
|
|
5
14
|
## [19.2.0](https://github.com/pact-foundation/pact-js-core/compare/v19.1.0...v19.2.0) (2026-05-01)
|
|
6
15
|
|
|
7
16
|
|
package/biome.jsonc
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"assist": { "actions": { "source": { "organizeImports": "on" } } },
|
|
3
|
+
"linter": {
|
|
4
|
+
"enabled": true,
|
|
5
|
+
"rules": {
|
|
6
|
+
"recommended": true,
|
|
7
|
+
"complexity": {
|
|
8
|
+
// Conflicts with TypeScript's noPropertyAccessFromIndexSignature
|
|
9
|
+
"useLiteralKeys": "off"
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"formatter": {
|
|
14
|
+
"useEditorconfig": true,
|
|
15
|
+
"indentStyle": "space",
|
|
16
|
+
"indentWidth": 2
|
|
17
|
+
},
|
|
18
|
+
"javascript": {
|
|
19
|
+
"formatter": {
|
|
20
|
+
"quoteStyle": "single"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"vcs": {
|
|
24
|
+
"enabled": true,
|
|
25
|
+
"clientKind": "git",
|
|
26
|
+
"useIgnoreFile": true
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -18,6 +18,6 @@ const wrapAllWithCheck = (o) => Object.keys(o)
|
|
|
18
18
|
.map((key) => ({
|
|
19
19
|
[key]: (0, exports.wrapWithCheck)(o[key], String(key)),
|
|
20
20
|
}))
|
|
21
|
-
.reduce((acc, curr) => (
|
|
21
|
+
.reduce((acc, curr) => Object.assign(acc, curr), {});
|
|
22
22
|
exports.wrapAllWithCheck = wrapAllWithCheck;
|
|
23
23
|
//# sourceMappingURL=checkErrors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkErrors.js","sourceRoot":"","sources":["../../src/consumer/checkErrors.ts"],"names":[],"mappings":";;;;;;AAAA,uDAA+B;AAExB,MAAM,aAAa,GACxB,CACE,CAAuB,EACvB,cAAsB,EACtB,EAAE,CACJ,CAAC,GAAG,IAAmB,EAAiB,EAAE;IACxC,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAC1B,MAAM,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACnE,IAAI,MAAM,EAAE,CAAC;QACX,gBAAM,CAAC,SAAS,CACd,6CAA6C,cAAc,2EAA2E,CACvI,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAdS,QAAA,aAAa,iBActB;AAUG,MAAM,gBAAgB,GAAG,CAC9B,CAAI,EACmB,EAAE,CACxB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAoB;KAC/B,GAAG,CAAC,CAAC,GAAY,EAAE,EAAE,CAAC,CAAC;IACtB,CAAC,GAAG,CAAC,EAAE,IAAA,qBAAa,EAClB,CAAC,CAAC,GAAG,CAAkC,EACvC,MAAM,CAAC,GAAG,CAAC,CACZ;CACF,CAAC,CAAC;KACF,MAAM,CACL,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EACvC,EAA2B,CACvB,CAAC;AAbE,QAAA,gBAAgB,oBAalB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { FfiSpecificationVersion } from '../ffi/types';
|
|
2
|
-
import { ConsumerMessagePact, ConsumerPact } from './types';
|
|
1
|
+
import { type FfiSpecificationVersion } from '../ffi/types';
|
|
2
|
+
import type { ConsumerMessagePact, ConsumerPact } from './types';
|
|
3
3
|
export declare const makeConsumerPact: (consumer: string, provider: string, version?: FfiSpecificationVersion, logLevel?: import("..").LogLevel, logFile?: string) => ConsumerPact;
|
|
4
4
|
export declare const makeConsumerMessagePact: (consumer: string, provider: string, version?: FfiSpecificationVersion, logLevel?: import("..").LogLevel, logFile?: string) => ConsumerMessagePact;
|
|
5
5
|
export declare const makeConsumerAsyncMessagePact: (consumer: string, provider: string, version?: FfiSpecificationVersion, logLevel?: import("..").LogLevel, logFile?: string) => ConsumerMessagePact;
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeConsumerAsyncMessagePact = exports.makeConsumerMessagePact = exports.makeConsumerPact = void 0;
|
|
4
|
+
const ffi_1 = require("../ffi");
|
|
4
5
|
const types_1 = require("../ffi/types");
|
|
5
6
|
const logger_1 = require("../logger");
|
|
6
7
|
const checkErrors_1 = require("./checkErrors");
|
|
7
|
-
const ffi_1 = require("../ffi");
|
|
8
8
|
const internals_1 = require("./internals");
|
|
9
9
|
const asyncMessage = (ffi, interactionPtr, pactPtr, messageCount, index) => ({
|
|
10
|
+
// todo count the number of messages (and ref them?)
|
|
11
|
+
// Required to get contents
|
|
10
12
|
withPluginRequestInteractionContents: (contentType, contents) => {
|
|
11
13
|
ffi.pactffiPluginInteractionContents(interactionPtr, types_1.INTERACTION_PART_REQUEST, contentType, contents);
|
|
12
14
|
return true;
|
|
@@ -32,6 +34,8 @@ const makeConsumerPact = (consumer, provider, version = 3, logLevel = (0, logger
|
|
|
32
34
|
(0, logger_1.setLogLevel)(logLevel);
|
|
33
35
|
}
|
|
34
36
|
const ffi = (0, ffi_1.getFfiLib)(logLevel, logFile);
|
|
37
|
+
// We need to track the number of messages so that we can
|
|
38
|
+
// correctly reference them when extracting contents
|
|
35
39
|
let messageCount = 0;
|
|
36
40
|
const pactPtr = ffi.pactffiNewPact(consumer, provider);
|
|
37
41
|
if (!ffi.pactffiWithSpecification(pactPtr, version)) {
|
|
@@ -167,6 +171,8 @@ const makeConsumerMessagePact = (consumer, provider, version = 4, logLevel = (0,
|
|
|
167
171
|
(0, logger_1.setLogLevel)(logLevel);
|
|
168
172
|
}
|
|
169
173
|
const ffi = (0, ffi_1.getFfiLib)(logLevel, logFile);
|
|
174
|
+
// We need to track the number of messages so that we can
|
|
175
|
+
// correctly reference them when extracting contents
|
|
170
176
|
let messageCount = 0;
|
|
171
177
|
const pactPtr = ffi.pactffiNewPact(consumer, provider);
|
|
172
178
|
if (!ffi.pactffiWithSpecification(pactPtr, version) || version < 4) {
|
|
@@ -183,6 +189,7 @@ const makeConsumerMessagePact = (consumer, provider, version = 4, logLevel = (0,
|
|
|
183
189
|
writePactFile: (dir, merge = true) => (0, internals_1.writePact)(ffi, pactPtr, dir, merge),
|
|
184
190
|
writePactFileForPluginServer: (port, dir, merge = true) => (0, internals_1.writePact)(ffi, pactPtr, dir, merge, port),
|
|
185
191
|
addMetadata: (namespace, name, value) => ffi.pactffiWithPactMetadata(pactPtr, namespace, name, value),
|
|
192
|
+
// Alias for newAsynchronousMessage
|
|
186
193
|
newMessage: (description) => {
|
|
187
194
|
const interactionPtr = ffi.pactffiNewAsyncMessage(pactPtr, description);
|
|
188
195
|
const index = messageCount;
|
|
@@ -198,6 +205,7 @@ const makeConsumerMessagePact = (consumer, provider, version = 4, logLevel = (0,
|
|
|
198
205
|
newSynchronousMessage: (description) => {
|
|
199
206
|
const index = messageCount;
|
|
200
207
|
messageCount += 1;
|
|
208
|
+
// TODO: will this automatically set the correct spec version?
|
|
201
209
|
const interactionPtr = ffi.pactffiNewSyncMessage(pactPtr, description);
|
|
202
210
|
return {
|
|
203
211
|
withPluginRequestInteractionContents: (contentType, contents) => {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/consumer/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ffi, FfiPactHandle } from '../ffi/types';
|
|
2
|
-
import { MatchingResult } from './types';
|
|
1
|
+
import { type Ffi, type FfiPactHandle } from '../ffi/types';
|
|
2
|
+
import type { MatchingResult } from './types';
|
|
3
3
|
export declare const mockServerMismatches: (ffi: Ffi, port: number) => MatchingResult[];
|
|
4
4
|
export declare const writePact: (ffi: Ffi, pactPtr: FfiPactHandle, dir: string, merge?: boolean, port?: number) => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internals.js","sourceRoot":"","sources":["../../src/consumer/internals.ts"],"names":[],"mappings":";;;AAAA,wCAIsB;AACtB,sCAA+D;AAGxD,MAAM,oBAAoB,GAAG,CAClC,GAAQ,EACR,IAAY,EACM,EAAE;IACpB,MAAM,OAAO,GAAqB,IAAI,CAAC,KAAK,CAC1C,GAAG,CAAC,2BAA2B,CAAC,IAAI,CAAC,CACtC,CAAC;IACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAsB,EAAE,EAAE,CAAC,CAAC;QAC9C,GAAG,MAAM;QACT,GAAG,CAAC,YAAY,IAAI,MAAM;YACxB,CAAC,CAAC;gBACE,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAoB,EAAE,EAAE,CACzD,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC1C;aACF;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC,CAAC;AACN,CAAC,CAAC;AAjBW,QAAA,oBAAoB,wBAiB/B;AAEK,MAAM,SAAS,GAAG,CACvB,GAAQ,EACR,OAAsB,EACtB,GAAW,EACX,KAAK,GAAG,IAAI,EACZ,IAAI,GAAG,CAAC,EACF,EAAE;IACR,IAAI,MAA4B,CAAC;IAEjC,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,GAAG,GAAG,CAAC,0BAA0B,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,CAAC,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,4BAAoB,CAAC,SAAS,CAAC;YAClC,OAAO;QACT,KAAK,4BAAoB,CAAC,2BAA2B,CAAC;YACpD,IAAA,yBAAgB,EAAC,iDAAiD,CAAC,CAAC;YACpE,MAAM;QACR,KAAK,4BAAoB,CAAC,eAAe,CAAC;YACxC,IAAA,yBAAgB,EAAC,oDAAoD,CAAC,CAAC;YACvE,MAAM;QACR,KAAK,4BAAoB,CAAC,uBAAuB,CAAC;YAChD,IAAA,yBAAgB,EACd,2FAA2F,CAC5F,CAAC;YACF,MAAM;QACR;YACE,IAAA,yBAAgB,EACd,iDAAiD,MAAM,+BAA+B,CACvF,CAAC;IACN,CAAC;AACH,CAAC,CAAC;AAlCW,QAAA,SAAS,aAkCpB"}
|
|
@@ -140,8 +140,33 @@ export type ConsumerPact = PluginPact & {
|
|
|
140
140
|
createMockServer: (address: string, port?: number, tls?: boolean) => number;
|
|
141
141
|
mockServerMismatches: (port: number) => MatchingResult[];
|
|
142
142
|
cleanupMockServer: (port: number) => boolean;
|
|
143
|
+
/**
|
|
144
|
+
* This function writes the pact file, regardless of whether or not the test was successful.
|
|
145
|
+
* Do not call it without checking that the tests were successful, unless you want to write the wrong pact contents.
|
|
146
|
+
*
|
|
147
|
+
* @param port the port number the mock server is running on.
|
|
148
|
+
* @param dir the directory to write the pact file to
|
|
149
|
+
* @param merge whether or not to merge the pact file contents (default true)
|
|
150
|
+
*/
|
|
143
151
|
writePactFile: (dir: string, merge?: boolean) => void;
|
|
152
|
+
/**
|
|
153
|
+
* This function writes the pact file, using the given plugin transport port.
|
|
154
|
+
* If you are using plugins in your test, you must use this method
|
|
155
|
+
*
|
|
156
|
+
* @param port The port that identifies the custom mock server
|
|
157
|
+
* @param dir The directory to write the pact file to
|
|
158
|
+
* @param merge whether or not to merge the pact file contents with previous test runs (default true)
|
|
159
|
+
* @returns
|
|
160
|
+
*/
|
|
144
161
|
writePactFileForPluginServer: (port: number, dir: string, merge?: boolean) => void;
|
|
162
|
+
/**
|
|
163
|
+
* Check if a mock server has matched all its requests.
|
|
164
|
+
*
|
|
165
|
+
* @param port the port number the mock server is running on.
|
|
166
|
+
* @returns {boolean} true if all requests have been matched. False if there
|
|
167
|
+
* is no mock server on the given port, or if any request has not been successfully matched, or
|
|
168
|
+
* the method panics.
|
|
169
|
+
*/
|
|
145
170
|
mockServerMatchedSuccessfully: (port: number) => boolean;
|
|
146
171
|
addMetadata: (namespace: string, name: string, value: string) => boolean;
|
|
147
172
|
};
|
|
@@ -187,9 +212,33 @@ export type ConsumerMessagePact = PluginPact & {
|
|
|
187
212
|
newAsynchronousMessage: (description: string) => AsynchronousMessage;
|
|
188
213
|
newSynchronousMessage: (description: string) => SynchronousMessage;
|
|
189
214
|
pactffiCreateMockServerForTransport: (address: string, transport: string, config: string, port?: number) => number;
|
|
215
|
+
/**
|
|
216
|
+
* This function writes the pact file, regardless of whether or not the test was successful.
|
|
217
|
+
* Do not call it without checking that the tests were successful, unless you want to write the wrong pact contents.
|
|
218
|
+
*
|
|
219
|
+
* @param dir the directory to write the pact file to
|
|
220
|
+
* @param merge whether or not to merge the pact file contents with previous test runs (default true)
|
|
221
|
+
*/
|
|
190
222
|
writePactFile: (dir: string, merge?: boolean) => void;
|
|
223
|
+
/**
|
|
224
|
+
* This function writes the pact file, using the given plugin transport port.
|
|
225
|
+
* If you are using plugins in your test, you must use this method
|
|
226
|
+
*
|
|
227
|
+
* @param port The port that identifies the custom mock server
|
|
228
|
+
* @param dir The directory to write the pact file to
|
|
229
|
+
* @param merge whether or not to merge the pact file contents with previous test runs (default true)
|
|
230
|
+
* @returns
|
|
231
|
+
*/
|
|
191
232
|
writePactFileForPluginServer: (port: number, dir: string, merge?: boolean) => void;
|
|
192
233
|
addMetadata: (namespace: string, name: string, value: string) => boolean;
|
|
193
234
|
mockServerMismatches: (port: number) => MatchingResult[];
|
|
235
|
+
/**
|
|
236
|
+
* Check if a mock server has matched all its requests.
|
|
237
|
+
*
|
|
238
|
+
* @param port the port number the mock server is running on.
|
|
239
|
+
* @returns {boolean} true if all requests have been matched. False if there
|
|
240
|
+
* is no mock server on the given port, or if any request has not been successfully matched, or
|
|
241
|
+
* the method panics.
|
|
242
|
+
*/
|
|
194
243
|
mockServerMatchedSuccessfully: (port: number) => boolean;
|
|
195
244
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/consumer/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { LogLevel } from '../logger/types';
|
|
2
|
-
import { Ffi } from './types';
|
|
1
|
+
import type { LogLevel } from '../logger/types';
|
|
2
|
+
import { type Ffi } from './types';
|
|
3
3
|
export declare const PACT_FFI_VERSION = "0.5.4";
|
|
4
4
|
declare let ffiLib: Ffi;
|
|
5
5
|
declare let ffi: typeof ffiLib;
|
|
@@ -38,11 +38,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.getFfiLib = exports.PACT_FFI_VERSION = void 0;
|
|
40
40
|
const node_path_1 = __importDefault(require("node:path"));
|
|
41
|
-
const bindings = require("node-gyp-build");
|
|
42
41
|
const detect_libc_1 = require("detect-libc");
|
|
43
42
|
const logger_1 = __importStar(require("../logger"));
|
|
44
43
|
const types_1 = require("./types");
|
|
44
|
+
const bindings = require('node-gyp-build');
|
|
45
45
|
exports.PACT_FFI_VERSION = '0.5.4';
|
|
46
|
+
/**
|
|
47
|
+
* Returns the library path which is located inside `node_modules`
|
|
48
|
+
* The naming convention is @pact-foundation/pact-core-${os}-${arch}<-${libc}>
|
|
49
|
+
* - "-${libc}" is optional for linux only
|
|
50
|
+
* @see https://nodejs.org/api/os.html#osarch
|
|
51
|
+
* @see https://nodejs.org/api/os.html#osplatform
|
|
52
|
+
* @example "x/xx/node_modules/@pact-foundation/pact-core-darwin-arm64"
|
|
53
|
+
*/
|
|
46
54
|
function getPlatformArchSpecificPackage() {
|
|
47
55
|
const { arch } = process;
|
|
48
56
|
let os = process.platform;
|
|
@@ -72,6 +80,12 @@ function getPlatformArchSpecificPackage() {
|
|
|
72
80
|
throw new Error(`Couldn't find npm package ${platformArchSpecificPackage} \n 💡 you can tell Pact where the npm package is located with env var $PACT_PREBUILD_PACKAGE_LOCATION`);
|
|
73
81
|
}
|
|
74
82
|
}
|
|
83
|
+
// supported prebuilds
|
|
84
|
+
// darwin-arm64
|
|
85
|
+
// darwin-x64
|
|
86
|
+
// linux-arm64
|
|
87
|
+
// linux-x64
|
|
88
|
+
// win32-x64
|
|
75
89
|
const supportedPlatforms = [
|
|
76
90
|
'darwin-arm64',
|
|
77
91
|
'darwin-x64',
|
|
@@ -116,7 +130,9 @@ const renderBinaryErrorMessage = (error) => {
|
|
|
116
130
|
};
|
|
117
131
|
let ffi;
|
|
118
132
|
const initialiseFfi = () => {
|
|
133
|
+
// @ts-expect-error
|
|
119
134
|
if (process.stdout._handle) {
|
|
135
|
+
// @ts-expect-error
|
|
120
136
|
process.stdout._handle.setBlocking(true);
|
|
121
137
|
}
|
|
122
138
|
try {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ffi/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,11 +37,11 @@ export declare enum FfiFunctionResult {
|
|
|
37
37
|
RESULT_FAILED = 1
|
|
38
38
|
}
|
|
39
39
|
export declare enum FfiLogLevelFilter {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
40
|
+
error = 1,
|
|
41
|
+
warn = 2,
|
|
42
|
+
info = 3,
|
|
43
|
+
debug = 4,
|
|
44
|
+
trace = 5
|
|
45
45
|
}
|
|
46
46
|
export type Ffi = {
|
|
47
47
|
pactffiInit(logLevel: string): string;
|
|
@@ -45,6 +45,14 @@ exports.CREATE_MOCK_SERVER_ERRORS = {
|
|
|
45
45
|
ADDRESS_NOT_VALID: -5,
|
|
46
46
|
TLS_CONFIG: -6,
|
|
47
47
|
};
|
|
48
|
+
/*
|
|
49
|
+
-1 A null pointer was received
|
|
50
|
+
-2 The pact JSON could not be parsed
|
|
51
|
+
-3 The mock server could not be started
|
|
52
|
+
-4 The method panicked
|
|
53
|
+
-5 The address is not valid
|
|
54
|
+
-6 Could not create the TLS configuration with the self-signed certificate
|
|
55
|
+
*/
|
|
48
56
|
var VERIFY_PROVIDER_RESPONSE;
|
|
49
57
|
(function (VERIFY_PROVIDER_RESPONSE) {
|
|
50
58
|
VERIFY_PROVIDER_RESPONSE[VERIFY_PROVIDER_RESPONSE["VERIFICATION_SUCCESSFUL"] = 0] = "VERIFICATION_SUCCESSFUL";
|
|
@@ -53,6 +61,14 @@ var VERIFY_PROVIDER_RESPONSE;
|
|
|
53
61
|
VERIFY_PROVIDER_RESPONSE[VERIFY_PROVIDER_RESPONSE["METHOD_PANICKED"] = 3] = "METHOD_PANICKED";
|
|
54
62
|
VERIFY_PROVIDER_RESPONSE[VERIFY_PROVIDER_RESPONSE["INVALID_ARGUMENTS"] = 4] = "INVALID_ARGUMENTS";
|
|
55
63
|
})(VERIFY_PROVIDER_RESPONSE || (exports.VERIFY_PROVIDER_RESPONSE = VERIFY_PROVIDER_RESPONSE = {}));
|
|
64
|
+
/*
|
|
65
|
+
* | Error | Description |
|
|
66
|
+
* |-------|-------------|
|
|
67
|
+
* | 1 | The verification process failed, see output for errors |
|
|
68
|
+
* | 2 | A null pointer was received |
|
|
69
|
+
* | 3 | The method panicked |
|
|
70
|
+
* | 4 | Invalid arguments were provided to the verification process |
|
|
71
|
+
*/
|
|
56
72
|
var FfiFunctionResult;
|
|
57
73
|
(function (FfiFunctionResult) {
|
|
58
74
|
FfiFunctionResult[FfiFunctionResult["RESULT_OK"] = 0] = "RESULT_OK";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ffi/types.ts"],"names":[],"mappings":";;;AAWa,QAAA,uBAAuB,GAClC;IACE,6BAA6B,EAAE,CAAC;IAChC,wBAAwB,EAAE,CAAC;IAC3B,0BAA0B,EAAE,CAAC;IAC7B,wBAAwB,EAAE,CAAC;IAC3B,wBAAwB,EAAE,CAAC;IAC3B,wBAAwB,EAAE,CAAC;CAC5B,CAAC;AAIS,QAAA,oBAAoB,GAAyC;IACxE,OAAO,EAAE,CAAC;IACV,aAAa,EAAE,CAAC;IAChB,yBAAyB,EAAE,CAAC;IAC5B,qBAAqB,EAAE,CAAC;CACzB,CAAC;AAIW,QAAA,2BAA2B,GAGpC;IACF,OAAO,EAAE,CAAC;IACV,yBAAyB,EAAE,CAAC;IAC5B,sBAAsB,EAAE,CAAC;CAC1B,CAAC;AAIW,QAAA,0BAA0B,GAGnC;IACF,OAAO,EAAE,CAAC;IACV,aAAa,EAAE,CAAC;IAChB,qBAAqB,EAAE,CAAC;IACxB,mBAAmB,EAAE,CAAC;CACvB,CAAC;AAIW,QAAA,4BAA4B,GAGrC;IACF,OAAO,EAAE,CAAC;IACV,0BAA0B,EAAE,CAAC;IAC7B,oCAAoC,EAAE,CAAC;IACvC,6BAA6B,EAAE,CAAC;IAChC,yBAAyB,EAAE,CAAC;IAC5B,+BAA+B,EAAE,CAAC;IAClC,wBAAwB,EAAE,CAAC;CAC5B,CAAC;AAIW,QAAA,wBAAwB,GAAuB,CAAC,CAAC;AACjD,QAAA,yBAAyB,GAAuB,CAAC,CAAC;AAElD,QAAA,yBAAyB,GAAG;IACvC,YAAY,EAAE,CAAC,CAAC;IAChB,gBAAgB,EAAE,CAAC,CAAC;IACpB,sBAAsB,EAAE,CAAC,CAAC;IAC1B,UAAU,EAAE,CAAC,CAAC;IACd,iBAAiB,EAAE,CAAC,CAAC;IACrB,UAAU,EAAE,CAAC,CAAC;CACf,CAAC;AACF;;;;;;;EAOE;AAEF,IAAY,wBAMX;AAND,WAAY,wBAAwB;IAClC,6GAA2B,CAAA;IAC3B,qGAAmB,CAAA;IACnB,yGAAqB,CAAA;IACrB,6FAAe,CAAA;IACf,iGAAiB,CAAA;AACnB,CAAC,EANW,wBAAwB,wCAAxB,wBAAwB,QAMnC;AACD;;;;;;;GAOG;AAEH,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,mEAAa,CAAA;IACb,2EAAa,CAAA;AACf,CAAC,EAHW,iBAAiB,iCAAjB,iBAAiB,QAG5B;AAED,IAAY,iBAMX;AAND,WAAY,iBAAiB;IAC3B,2DAAS,CAAA;IACT,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,2DAAS,CAAA;IACT,2DAAS,CAAA;AACX,CAAC,EANW,iBAAiB,iCAAjB,iBAAiB,QAM5B"}
|
package/{src → dist}/index.js
RENAMED
|
@@ -18,13 +18,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
20
|
const pact_1 = __importDefault(require("./pact"));
|
|
21
|
-
module.exports = exports = pact_1.default;
|
|
22
21
|
exports.default = pact_1.default;
|
|
23
|
-
__exportStar(require("./verifier"), exports);
|
|
24
|
-
__exportStar(require("./verifier/types"), exports);
|
|
25
|
-
__exportStar(require("./logger"), exports);
|
|
26
|
-
__exportStar(require("./logger/types"), exports);
|
|
27
22
|
__exportStar(require("./consumer"), exports);
|
|
28
23
|
__exportStar(require("./consumer/types"), exports);
|
|
29
24
|
__exportStar(require("./ffi"), exports);
|
|
25
|
+
__exportStar(require("./logger"), exports);
|
|
26
|
+
__exportStar(require("./logger/types"), exports);
|
|
27
|
+
__exportStar(require("./verifier"), exports);
|
|
28
|
+
__exportStar(require("./verifier/types"), exports);
|
|
30
29
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAE1B,kBAAe,cAAI,CAAC;AAEpB,6CAA2B;AAC3B,mDAAiC;AACjC,wCAAsB;AACtB,2CAAyB;AACzB,iDAA+B;AAC/B,6CAA2B;AAC3B,mDAAiC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crashMessage.js","sourceRoot":"","sources":["../../src/logger/crashMessage.ts"],"names":[],"mappings":";;;AAAO,MAAM,gBAAgB,GAAG,CAC9B,YAAoB,EACZ,EAAE,CAAC;;EAEX,YAAY;;;;;;;;;;;;;;;CAeb,CAAC;AAnBW,QAAA,gBAAgB,oBAmB3B"}
|
|
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.logCrashAndThrow = exports.logErrorAndThrow = exports.verboseIsImplied = exports.getLogLevel = exports.setLogLevel = exports.DEFAULT_LOG_LEVEL = void 0;
|
|
4
4
|
const crashMessage_1 = require("./crashMessage");
|
|
5
5
|
const pino_1 = require("./pino");
|
|
6
|
+
// TODO: Replace this hack with https://www.npmjs.com/package/@npmcli/package-json
|
|
7
|
+
// TODO: abstract this so it's not repeated in src/verifier/nativeVerifier.ts
|
|
6
8
|
const pkg = require('../../package.json');
|
|
7
9
|
const logContext = `pact-core@${pkg.version}`;
|
|
8
10
|
let currentLogLevel = process.env['LOG_LEVEL']
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logger/index.ts"],"names":[],"mappings":";;;AAAA,iDAAkD;AAClD,iCAAsC;AAGtC,kFAAkF;AAClF,6EAA6E;AAE7E,MAAM,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAE1C,MAAM,UAAU,GAAG,aAAa,GAAG,CAAC,OAAO,EAAE,CAAC;AAC9C,IAAI,eAAe,GAAa,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IACtD,CAAC,CAAE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAc;IACxC,CAAC,CAAC,MAAM,CAAC;AACX,IAAI,MAAM,GAAG,IAAA,mBAAY,EAAC,eAAe,CAAC,CAAC;AAE9B,QAAA,iBAAiB,GAAa,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IACjE,CAAC,CAAE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAc;IACxC,CAAC,CAAC,MAAM,CAAC;AAEJ,MAAM,WAAW,GAAG,CAAC,QAAkB,MAAM,EAAQ,EAAE;IAC5D,eAAe,GAAG,KAAK,CAAC;IACxB,MAAM,GAAG,IAAA,mBAAY,EAAC,eAAe,CAAC,CAAC;AACzC,CAAC,CAAC;AAHW,QAAA,WAAW,eAGtB;AAEK,MAAM,WAAW,GAAG,GAAa,EAAE,CAAC,eAAe,CAAC;AAA9C,QAAA,WAAW,eAAmC;AAEpD,MAAM,gBAAgB,GAAG,GAAY,EAAE,CAC5C,eAAe,KAAK,OAAO,IAAI,eAAe,KAAK,OAAO,CAAC;AADhD,QAAA,gBAAgB,oBACgC;AAE7D,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,OAAe,EAAE,EAAE,CACtD,GAAG,OAAO,KAAK,OAAO,EAAE,CAAC;AAE3B,MAAM,YAAY,GAAG;IACnB,SAAS,EAAE,CAAC,OAAe,EAAE,UAAkB,UAAU,EAAQ,EAAE,CACjE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,IAAA,+BAAgB,EAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,KAAK,EAAE,CAAC,OAAe,EAAE,UAAkB,UAAU,EAAQ,EAAE,CAC7D,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5C,IAAI,EAAE,CAAC,OAAe,EAAE,UAAkB,UAAU,EAAQ,EAAE,CAC5D,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,EAAE,CAAC,OAAe,EAAE,UAAkB,UAAU,EAAQ,EAAE,CAC5D,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3C,KAAK,EAAE,CAAC,OAAe,EAAE,UAAkB,UAAU,EAAQ,EAAE,CAC7D,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5C,KAAK,EAAE,CAAC,OAAe,EAAE,UAAkB,UAAU,EAAQ,EAAE,CAC7D,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;CAC7C,CAAC;AAEK,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAE,OAAgB,EAAS,EAAE;IAC3E,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAA+B,CAAC,CAAC;IACvD,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC,CAAC;AAHW,QAAA,gBAAgB,oBAG3B;AAEK,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAE,OAAgB,EAAS,EAAE;IAC3E,YAAY,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC,CAAC;AAHW,QAAA,gBAAgB,oBAG3B;AAEF,kBAAe,YAAY,CAAC"}
|
|
@@ -5,6 +5,9 @@ const pino_1 = require("pino");
|
|
|
5
5
|
const pino_pretty_1 = require("pino-pretty");
|
|
6
6
|
const createLogger = (level) => {
|
|
7
7
|
const prettify = (0, pino_pretty_1.prettyFactory)({ sync: true });
|
|
8
|
+
// Configure custom stream that forwards pretty message to console
|
|
9
|
+
// to address issues with pino pretty and Jest
|
|
10
|
+
// Thanks to https://github.com/pinojs/pino-pretty/issues/480#issuecomment-2271709217 for the solution
|
|
8
11
|
return (0, pino_1.pino)({
|
|
9
12
|
level: level.toLowerCase(),
|
|
10
13
|
}, {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pino.js","sourceRoot":"","sources":["../../src/logger/pino.ts"],"names":[],"mappings":";;;AAAA,+BAAyC;AACzC,6CAA4C;AAIrC,MAAM,YAAY,GAAG,CAAC,KAAe,EAAU,EAAE;IACtD,MAAM,QAAQ,GAAG,IAAA,2BAAa,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,kEAAkE;IAClE,8CAA8C;IAC9C,sGAAsG;IACtG,OAAO,IAAA,WAAI,EACT;QACE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE;KAC3B,EACD;QACE,KAAK,CAAC,IAAa;YACjB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9B,CAAC;KACF,CACF,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,YAAY,gBAevB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/logger/types.ts"],"names":[],"mappings":""}
|
|
@@ -34,7 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.PactEnvironment = void 0;
|
|
37
|
-
const path = __importStar(require("path"));
|
|
37
|
+
const path = __importStar(require("node:path"));
|
|
38
38
|
class PactEnvironment {
|
|
39
39
|
get cwd() {
|
|
40
40
|
return path.resolve(__dirname, '..');
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pact-environment.js","sourceRoot":"","sources":["../src/pact-environment.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAElC,MAAa,eAAe;IAC1B,IAAW,GAAG;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC;IAEM,SAAS,CAAC,WAAmB,OAAO,CAAC,QAAQ;QAClD,OAAO,QAAQ,KAAK,OAAO,CAAC;IAC9B,CAAC;CACF;AARD,0CAQC;AAED,kBAAe,IAAI,eAAe,EAAE,CAAC"}
|
package/{src → dist}/pact.d.ts
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import type { LogLevel } from './logger/types';
|
|
2
|
+
import type { VerifierOptions } from './verifier/types';
|
|
3
3
|
export declare class Pact {
|
|
4
4
|
logLevel(level?: LogLevel): void;
|
|
5
5
|
verifyPacts(options: VerifierOptions): Promise<string>;
|
package/{src → dist}/pact.js
RENAMED
|
@@ -37,12 +37,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.Pact = void 0;
|
|
40
|
-
const verifier_1 = __importDefault(require("./verifier"));
|
|
41
40
|
const logger_1 = __importStar(require("./logger"));
|
|
41
|
+
const verifier_1 = __importDefault(require("./verifier"));
|
|
42
42
|
class Pact {
|
|
43
43
|
logLevel(level) {
|
|
44
|
-
|
|
44
|
+
(0, logger_1.setLogLevel)(level);
|
|
45
45
|
}
|
|
46
|
+
// Run the Pact Verification process
|
|
46
47
|
verifyPacts(options) {
|
|
47
48
|
logger_1.default.info('Verifying Pacts.');
|
|
48
49
|
return (0, verifier_1.default)(options).verify();
|
package/dist/pact.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pact.js","sourceRoot":"","sources":["../src/pact.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAA+C;AAE/C,0DAAyC;AAGzC,MAAa,IAAI;IACR,QAAQ,CAAC,KAAgB;QAC9B,IAAA,oBAAW,EAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,oCAAoC;IAC7B,WAAW,CAAC,OAAwB;QACzC,gBAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAChC,OAAO,IAAA,kBAAe,EAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;IAC3C,CAAC;CACF;AAVD,oBAUC;AAED,kBAAe,IAAI,IAAI,EAAE,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { InternalPactVerifierOptions } from '../types';
|
|
3
|
-
import {
|
|
1
|
+
import type { FfiVerificationFunctions } from '../../ffi/types';
|
|
2
|
+
import type { InternalPactVerifierOptions } from '../types';
|
|
3
|
+
import { type FnMapping } from './types';
|
|
4
4
|
type IgnoredFfiFunctions = {
|
|
5
5
|
pactffiVerifierNewForApplication: 1;
|
|
6
6
|
pactffiVerifierExecute: 1;
|
|
@@ -4,9 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ffiFnMapping = exports.orderOfExecution = void 0;
|
|
7
|
-
const fs = require("fs");
|
|
8
|
-
const url = require("url");
|
|
9
|
-
const
|
|
7
|
+
const fs = require("node:fs");
|
|
8
|
+
const url = require("node:url");
|
|
9
|
+
const node_url_1 = require("node:url");
|
|
10
10
|
const logger_1 = __importDefault(require("../../logger"));
|
|
11
11
|
const types_1 = require("./types");
|
|
12
12
|
const DEFAULT_TIMEOUT = 30000;
|
|
@@ -64,7 +64,7 @@ exports.ffiFnMapping = {
|
|
|
64
64
|
logger_1.default.debug(`checking source type of given pactUrl: ${file}`);
|
|
65
65
|
if (/https?:/.test(url.parse(file).protocol || '')) {
|
|
66
66
|
try {
|
|
67
|
-
const u = new
|
|
67
|
+
const u = new node_url_1.URL(file);
|
|
68
68
|
if (u.hostname) {
|
|
69
69
|
logger_1.default.debug(`adding ${file} as a Url source`);
|
|
70
70
|
ffi.pactffiVerifierUrlSource(handle, file, options.pactBrokerUsername ||
|
|
@@ -172,7 +172,7 @@ exports.ffiFnMapping = {
|
|
|
172
172
|
},
|
|
173
173
|
pactffiVerifierSetProviderInfo: {
|
|
174
174
|
validateAndExecute(ffi, handle, options) {
|
|
175
|
-
const uri = new
|
|
175
|
+
const uri = new node_url_1.URL(options.providerBaseUrl);
|
|
176
176
|
ffi.pactffiVerifierSetProviderInfo(handle, options.provider || '', uri.protocol.split(':')[0], uri.hostname, parseInt(uri.port, 10), uri.pathname);
|
|
177
177
|
return { status: types_1.FnValidationStatus.SUCCESS };
|
|
178
178
|
},
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../../src/verifier/argumentMapper/arguments.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import type { Ffi, FfiVerifierHandle } from '../../ffi/types';
|
|
2
|
+
import type { InternalPactVerifierOptions } from '../types';
|
|
3
3
|
export declare const setupVerification: (ffi: Ffi, handle: FfiVerifierHandle, options: InternalPactVerifierOptions) => void;
|
|
@@ -35,9 +35,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.setupVerification = void 0;
|
|
37
37
|
const underscore_1 = require("underscore");
|
|
38
|
-
const types_1 = require("./types");
|
|
39
38
|
const logger_1 = __importStar(require("../../logger"));
|
|
40
39
|
const arguments_1 = require("./arguments");
|
|
40
|
+
const types_1 = require("./types");
|
|
41
41
|
const setupVerification = (ffi, handle, options) => {
|
|
42
42
|
const order = (0, underscore_1.values)(arguments_1.orderOfExecution).sort((a, b) => a - b);
|
|
43
43
|
const functionsToCall = (0, underscore_1.invert)(arguments_1.orderOfExecution);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/verifier/argumentMapper/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4C;AAE5C,uDAA0E;AAE1E,2CAA6D;AAC7D,mCAAsE;AAE/D,MAAM,iBAAiB,GAAG,CAC/B,GAAQ,EACR,MAAyB,EACzB,OAAoC,EAC9B,EAAE;IACR,MAAM,KAAK,GAAG,IAAA,mBAAM,EAAC,4BAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,IAAA,mBAAM,EAAC,4BAAgB,CAAC,CAAC;IAEjD,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAClB,MAAM,EAAE,GAAG,eAAe,CAAC,CAAC,CAA8B,CAAC;QAC3D,MAAM,UAAU,GAAuB,wBAAY,CAAC,EAAE,CAAC,CAAC,kBAAkB,CACxE,GAAG,EACH,MAAM,EACN,OAAO,CACR,CAAC;QAEF,QAAQ,UAAU,CAAC,MAAM,EAAE,CAAC;YAC1B,KAAK,0BAAkB,CAAC,IAAI;gBAC1B,IAAA,yBAAgB,EACd,8BAA8B,EAAE,oCAAoC,UAAU,CAAC,QAAQ,EAAE,CAC1F,CAAC;gBACF,MAAM;YACR,KAAK,0BAAkB,CAAC,MAAM;gBAC5B,gBAAM,CAAC,KAAK,CACV,8BAA8B,EAAE,6DAA6D,UAAU,CAAC,QAAQ,EAAE,CACnH,CAAC;gBACF,MAAM;YACR,KAAK,0BAAkB,CAAC,OAAO;gBAC7B,MAAM;YACR;gBACE,IAAA,yBAAgB,EACd,qBAAqB,EAAE,6DACpB,UAAiC,CAAC,MACrC,GAAG,CACJ,CAAC;QACN,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AArCW,QAAA,iBAAiB,qBAqC5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/verifier/argumentMapper/types.ts"],"names":[],"mappings":";;;;;;AACA,0DAAkC;AAE3B,MAAM,kBAAkB,GAAG,CAAC,CAAU,EAAE,QAAgB,EAAW,EAAE;IAC1E,gBAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,6CAA6C,CAAC,CAAC;IAEtE,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAJW,QAAA,kBAAkB,sBAI7B;AAkBF,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,iEAAW,CAAA;IACX,+DAAU,CAAA;IACV,2DAAQ,CAAA;AACV,CAAC,EAJW,kBAAkB,kCAAlB,kBAAkB,QAI7B"}
|