@git.zone/tstest 3.1.3 → 3.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/tstest.classes.tap.parser.d.ts +9 -0
- package/dist_ts/tstest.classes.tap.parser.js +89 -32
- package/dist_ts/tstest.classes.tap.testresult.d.ts +6 -1
- package/dist_ts/tstest.classes.tap.testresult.js +10 -2
- package/dist_ts/tstest.logging.d.ts +2 -0
- package/dist_ts/tstest.logging.js +37 -2
- package/dist_ts_tapbundle/webhelpers.js +12 -2
- package/npmextra.json +11 -5
- package/package.json +12 -11
- package/readme.hints.md +46 -1
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/tstest.classes.tap.parser.ts +96 -33
- package/ts/tstest.classes.tap.testresult.ts +10 -1
- package/ts/tstest.logging.ts +39 -3
- package/dist_ts/tstest.classes.tap.parser.old.d.ts +0 -50
- package/dist_ts/tstest.classes.tap.parser.old.js +0 -332
- package/dist_ts_tapbundle/tapbundle.protocols.d.ts +0 -88
- package/dist_ts_tapbundle/tapbundle.protocols.js +0 -168
- package/dist_ts_tapbundle/ts_tapbundle/00_commitinfo_data.d.ts +0 -8
- package/dist_ts_tapbundle/ts_tapbundle/00_commitinfo_data.js +0 -9
- package/dist_ts_tapbundle/ts_tapbundle/index.d.ts +0 -6
- package/dist_ts_tapbundle/ts_tapbundle/index.js +0 -7
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.classes.pretask.d.ts +0 -10
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.classes.pretask.js +0 -13
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.classes.tap.d.ts +0 -104
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.classes.tap.js +0 -401
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.classes.taptest.d.ts +0 -38
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.classes.taptest.js +0 -110
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.classes.taptools.d.ts +0 -109
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.classes.taptools.js +0 -241
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.classes.tapwrap.d.ts +0 -8
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.classes.tapwrap.js +0 -7
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.plugins.d.ts +0 -8
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.plugins.js +0 -10
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.tapcreator.d.ts +0 -3
- package/dist_ts_tapbundle/ts_tapbundle/tapbundle.tapcreator.js +0 -5
- package/dist_ts_tapbundle/ts_tapbundle/webhelpers.d.ts +0 -7
- package/dist_ts_tapbundle/ts_tapbundle/webhelpers.js +0 -35
- package/dist_ts_tapbundle/ts_tapbundle_node/classes.pathinject.d.ts +0 -5
- package/dist_ts_tapbundle/ts_tapbundle_node/classes.pathinject.js +0 -13
- package/dist_ts_tapbundle/ts_tapbundle_node/plugins.d.ts +0 -11
- package/dist_ts_tapbundle/ts_tapbundle_node/plugins.js +0 -14
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import * as plugins from './tapbundle.plugins.js';
|
|
2
|
-
import { tapCreator } from './tapbundle.tapcreator.js';
|
|
3
|
-
import { TapTools, SkipError } from './tapbundle.classes.taptools.js';
|
|
4
|
-
// imported interfaces
|
|
5
|
-
import { Deferred } from '@push.rocks/smartpromise';
|
|
6
|
-
import { HrtMeasurement } from '@push.rocks/smarttime';
|
|
7
|
-
export class TapTest {
|
|
8
|
-
/**
|
|
9
|
-
* constructor
|
|
10
|
-
*/
|
|
11
|
-
constructor(optionsArg) {
|
|
12
|
-
this.isTodo = false;
|
|
13
|
-
this.tags = [];
|
|
14
|
-
this.priority = 'medium';
|
|
15
|
-
this.testDeferred = plugins.smartpromise.defer();
|
|
16
|
-
this.testPromise = this.testDeferred.promise;
|
|
17
|
-
this.testResultDeferred = plugins.smartpromise.defer();
|
|
18
|
-
this.testResultPromise = this.testResultDeferred.promise;
|
|
19
|
-
this.description = optionsArg.description;
|
|
20
|
-
this.hrtMeasurement = new HrtMeasurement();
|
|
21
|
-
this.parallel = optionsArg.parallel;
|
|
22
|
-
this.status = 'pending';
|
|
23
|
-
this.tapTools = new TapTools(this);
|
|
24
|
-
this.testFunction = optionsArg.testFunction;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* run the test
|
|
28
|
-
*/
|
|
29
|
-
async run(testKeyArg) {
|
|
30
|
-
this.testKey = testKeyArg;
|
|
31
|
-
const testNumber = testKeyArg + 1;
|
|
32
|
-
// Handle todo tests
|
|
33
|
-
if (this.isTodo) {
|
|
34
|
-
const todoText = this.todoReason ? `# TODO ${this.todoReason}` : '# TODO';
|
|
35
|
-
console.log(`ok ${testNumber} - ${this.description} ${todoText}`);
|
|
36
|
-
this.status = 'success';
|
|
37
|
-
this.testDeferred.resolve(this);
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
// Run test with retries
|
|
41
|
-
let lastError;
|
|
42
|
-
const maxRetries = this.tapTools.maxRetries;
|
|
43
|
-
for (let attempt = 0; attempt <= maxRetries; attempt++) {
|
|
44
|
-
this.hrtMeasurement.start();
|
|
45
|
-
try {
|
|
46
|
-
// Set up timeout if specified
|
|
47
|
-
let timeoutHandle;
|
|
48
|
-
let timeoutPromise = null;
|
|
49
|
-
if (this.timeoutMs) {
|
|
50
|
-
timeoutPromise = new Promise((_, reject) => {
|
|
51
|
-
timeoutHandle = setTimeout(() => {
|
|
52
|
-
this.status = 'timeout';
|
|
53
|
-
reject(new Error(`Test timed out after ${this.timeoutMs}ms`));
|
|
54
|
-
}, this.timeoutMs);
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
// Run the test function with potential timeout
|
|
58
|
-
const testPromise = this.testFunction(this.tapTools);
|
|
59
|
-
const testReturnValue = timeoutPromise
|
|
60
|
-
? await Promise.race([testPromise, timeoutPromise])
|
|
61
|
-
: await testPromise;
|
|
62
|
-
// Clear timeout if test completed
|
|
63
|
-
if (timeoutHandle) {
|
|
64
|
-
clearTimeout(timeoutHandle);
|
|
65
|
-
}
|
|
66
|
-
this.hrtMeasurement.stop();
|
|
67
|
-
console.log(`ok ${testNumber} - ${this.description} # time=${this.hrtMeasurement.milliSeconds}ms`);
|
|
68
|
-
this.status = 'success';
|
|
69
|
-
this.testDeferred.resolve(this);
|
|
70
|
-
this.testResultDeferred.resolve(testReturnValue);
|
|
71
|
-
return; // Success, exit retry loop
|
|
72
|
-
}
|
|
73
|
-
catch (err) {
|
|
74
|
-
this.hrtMeasurement.stop();
|
|
75
|
-
// Handle skip
|
|
76
|
-
if (err instanceof SkipError || err.name === 'SkipError') {
|
|
77
|
-
console.log(`ok ${testNumber} - ${this.description} # SKIP ${err.message.replace('Skipped: ', '')}`);
|
|
78
|
-
this.status = 'skipped';
|
|
79
|
-
this.testDeferred.resolve(this);
|
|
80
|
-
return;
|
|
81
|
-
}
|
|
82
|
-
lastError = err;
|
|
83
|
-
// If we have retries left, try again
|
|
84
|
-
if (attempt < maxRetries) {
|
|
85
|
-
console.log(`# Retry ${attempt + 1}/${maxRetries} for test: ${this.description}`);
|
|
86
|
-
this.tapTools._incrementRetryCount();
|
|
87
|
-
continue;
|
|
88
|
-
}
|
|
89
|
-
// Final failure
|
|
90
|
-
console.log(`not ok ${testNumber} - ${this.description} # time=${this.hrtMeasurement.milliSeconds}ms`);
|
|
91
|
-
this.testDeferred.resolve(this);
|
|
92
|
-
this.testResultDeferred.resolve(err);
|
|
93
|
-
// if the test has already succeeded before
|
|
94
|
-
if (this.status === 'success') {
|
|
95
|
-
this.status = 'errorAfterSuccess';
|
|
96
|
-
console.log('!!! ALERT !!!: weird behaviour, since test has been already successfull');
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
this.status = 'error';
|
|
100
|
-
}
|
|
101
|
-
// if the test is allowed to fail
|
|
102
|
-
if (this.failureAllowed) {
|
|
103
|
-
console.log(`please note: failure allowed!`);
|
|
104
|
-
}
|
|
105
|
-
console.log(err);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFwYnVuZGxlLmNsYXNzZXMudGFwdGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzX3RhcGJ1bmRsZS90YXBidW5kbGUuY2xhc3Nlcy50YXB0ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sd0JBQXdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFdEUsc0JBQXNCO0FBQ3RCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFTdkQsTUFBTSxPQUFPLE9BQU87SUFtQmxCOztPQUVHO0lBQ0gsWUFBWSxVQUlYO1FBaEJNLFdBQU0sR0FBWSxLQUFLLENBQUM7UUFFeEIsU0FBSSxHQUFhLEVBQUUsQ0FBQztRQUNwQixhQUFRLEdBQThCLFFBQVEsQ0FBQztRQUU5QyxpQkFBWSxHQUF5QixPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ25FLGdCQUFXLEdBQXdCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDO1FBQzVELHVCQUFrQixHQUFnQixPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hFLHNCQUFpQixHQUFlLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFTckUsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUMsV0FBVyxDQUFDO1FBQzFDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUMzQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUM7UUFDcEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7UUFDeEIsSUFB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
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import * as plugins from './tapbundle.plugins.js';
|
|
2
|
-
import { TapTest } from './tapbundle.classes.taptest.js';
|
|
3
|
-
export interface IPromiseFunc {
|
|
4
|
-
(): Promise<any>;
|
|
5
|
-
}
|
|
6
|
-
export declare class SkipError extends Error {
|
|
7
|
-
constructor(message: string);
|
|
8
|
-
}
|
|
9
|
-
export declare class TapTools {
|
|
10
|
-
/**
|
|
11
|
-
* the referenced TapTest
|
|
12
|
-
*/
|
|
13
|
-
private _tapTest;
|
|
14
|
-
private _retries;
|
|
15
|
-
private _retryCount;
|
|
16
|
-
testData: any;
|
|
17
|
-
private static _sharedContext;
|
|
18
|
-
private _snapshotPath;
|
|
19
|
-
private static _pathHelpers;
|
|
20
|
-
static setPathHelpers(helpers: typeof TapTools._pathHelpers): void;
|
|
21
|
-
constructor(TapTestArg: TapTest<any>);
|
|
22
|
-
/**
|
|
23
|
-
* allow failure
|
|
24
|
-
*/
|
|
25
|
-
allowFailure(): void;
|
|
26
|
-
/**
|
|
27
|
-
* skip the rest of the test
|
|
28
|
-
*/
|
|
29
|
-
skip(reason?: string): never;
|
|
30
|
-
/**
|
|
31
|
-
* conditionally skip the rest of the test
|
|
32
|
-
*/
|
|
33
|
-
skipIf(condition: boolean, reason?: string): void;
|
|
34
|
-
/**
|
|
35
|
-
* mark test as todo
|
|
36
|
-
*/
|
|
37
|
-
todo(reason?: string): void;
|
|
38
|
-
/**
|
|
39
|
-
* set the number of retries for this test
|
|
40
|
-
*/
|
|
41
|
-
retry(count: number): void;
|
|
42
|
-
/**
|
|
43
|
-
* get the current retry count
|
|
44
|
-
*/
|
|
45
|
-
get retryCount(): number;
|
|
46
|
-
/**
|
|
47
|
-
* internal: increment retry count
|
|
48
|
-
*/
|
|
49
|
-
_incrementRetryCount(): void;
|
|
50
|
-
/**
|
|
51
|
-
* get the maximum retries
|
|
52
|
-
*/
|
|
53
|
-
get maxRetries(): number;
|
|
54
|
-
/**
|
|
55
|
-
* async/await delay method
|
|
56
|
-
*/
|
|
57
|
-
delayFor(timeMilliArg: number): Promise<void>;
|
|
58
|
-
delayForRandom(timeMilliMinArg: number, timeMilliMaxArg: number): Promise<void>;
|
|
59
|
-
coloredString(...args: Parameters<typeof plugins.consolecolor.coloredString>): Promise<string>;
|
|
60
|
-
/**
|
|
61
|
-
* set a timeout for the test
|
|
62
|
-
*/
|
|
63
|
-
timeout(timeMilliArg: number): void;
|
|
64
|
-
/**
|
|
65
|
-
* wait for a timeout (used internally)
|
|
66
|
-
*/
|
|
67
|
-
waitForTimeout(timeMilliArg: number): Promise<void>;
|
|
68
|
-
returnError(throwingFuncArg: IPromiseFunc): Promise<Error>;
|
|
69
|
-
defer(): plugins.smartpromise.Deferred<unknown>;
|
|
70
|
-
cumulativeDefer(): plugins.smartpromise.CumulativeDeferred;
|
|
71
|
-
smartjson: typeof plugins.smartjson;
|
|
72
|
-
/**
|
|
73
|
-
* shared context for data sharing between tests
|
|
74
|
-
*/
|
|
75
|
-
context: {
|
|
76
|
-
get: (key: string) => any;
|
|
77
|
-
set: (key: string, value: any) => void;
|
|
78
|
-
delete: (key: string) => boolean;
|
|
79
|
-
clear: () => void;
|
|
80
|
-
};
|
|
81
|
-
/**
|
|
82
|
-
* Snapshot testing - compares output with saved snapshot
|
|
83
|
-
*/
|
|
84
|
-
matchSnapshot(value: any, snapshotName?: string): Promise<void>;
|
|
85
|
-
/**
|
|
86
|
-
* Test fixtures - create test data instances
|
|
87
|
-
*/
|
|
88
|
-
private static _fixtureData;
|
|
89
|
-
private static _fixtureFactories;
|
|
90
|
-
/**
|
|
91
|
-
* Define a fixture factory
|
|
92
|
-
*/
|
|
93
|
-
static defineFixture<T>(name: string, factory: (data?: Partial<T>) => T | Promise<T>): void;
|
|
94
|
-
/**
|
|
95
|
-
* Create a fixture instance
|
|
96
|
-
*/
|
|
97
|
-
fixture<T>(name: string, data?: Partial<T>): Promise<T>;
|
|
98
|
-
/**
|
|
99
|
-
* Factory pattern for creating multiple fixtures
|
|
100
|
-
*/
|
|
101
|
-
factory<T>(name: string): {
|
|
102
|
-
create: (data?: Partial<T>) => Promise<T>;
|
|
103
|
-
createMany: (count: number, dataOverrides?: Partial<T>[] | ((index: number) => Partial<T>)) => Promise<T[]>;
|
|
104
|
-
};
|
|
105
|
-
/**
|
|
106
|
-
* Clear all fixtures (typically called in afterEach)
|
|
107
|
-
*/
|
|
108
|
-
static cleanupFixtures(): Promise<void>;
|
|
109
|
-
}
|
|
@@ -1,241 +0,0 @@
|
|
|
1
|
-
import * as plugins from './tapbundle.plugins.js';
|
|
2
|
-
import { TapTest } from './tapbundle.classes.taptest.js';
|
|
3
|
-
export class SkipError extends Error {
|
|
4
|
-
constructor(message) {
|
|
5
|
-
super(message);
|
|
6
|
-
this.name = 'SkipError';
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
export class TapTools {
|
|
10
|
-
static { this._sharedContext = new Map(); }
|
|
11
|
-
static { this._pathHelpers = null; }
|
|
12
|
-
static setPathHelpers(helpers) {
|
|
13
|
-
TapTools._pathHelpers = helpers;
|
|
14
|
-
}
|
|
15
|
-
constructor(TapTestArg) {
|
|
16
|
-
this._retries = 0;
|
|
17
|
-
this._retryCount = 0;
|
|
18
|
-
this.testData = {};
|
|
19
|
-
this._snapshotPath = '';
|
|
20
|
-
this.smartjson = plugins.smartjson;
|
|
21
|
-
/**
|
|
22
|
-
* shared context for data sharing between tests
|
|
23
|
-
*/
|
|
24
|
-
this.context = {
|
|
25
|
-
get: (key) => {
|
|
26
|
-
return TapTools._sharedContext.get(key);
|
|
27
|
-
},
|
|
28
|
-
set: (key, value) => {
|
|
29
|
-
TapTools._sharedContext.set(key, value);
|
|
30
|
-
},
|
|
31
|
-
delete: (key) => {
|
|
32
|
-
return TapTools._sharedContext.delete(key);
|
|
33
|
-
},
|
|
34
|
-
clear: () => {
|
|
35
|
-
TapTools._sharedContext.clear();
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
this._tapTest = TapTestArg;
|
|
39
|
-
// Generate snapshot path based on test file and test name
|
|
40
|
-
// Snapshot path will be set by Node.js environment if available
|
|
41
|
-
if (TapTools._pathHelpers && typeof process !== 'undefined' && process.cwd) {
|
|
42
|
-
const testFile = TapTestArg.fileName || 'unknown';
|
|
43
|
-
const testName = TapTestArg.description.replace(/[^a-zA-Z0-9]/g, '_');
|
|
44
|
-
this._snapshotPath = TapTools._pathHelpers.join(process.cwd(), '.nogit', 'test_snapshots', testFile, `${testName}.snap`);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* allow failure
|
|
49
|
-
*/
|
|
50
|
-
allowFailure() {
|
|
51
|
-
this._tapTest.failureAllowed = true;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* skip the rest of the test
|
|
55
|
-
*/
|
|
56
|
-
skip(reason) {
|
|
57
|
-
const skipMessage = reason ? `Skipped: ${reason}` : 'Skipped';
|
|
58
|
-
throw new SkipError(skipMessage);
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* conditionally skip the rest of the test
|
|
62
|
-
*/
|
|
63
|
-
skipIf(condition, reason) {
|
|
64
|
-
if (condition) {
|
|
65
|
-
this.skip(reason);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* mark test as todo
|
|
70
|
-
*/
|
|
71
|
-
todo(reason) {
|
|
72
|
-
this._tapTest.isTodo = true;
|
|
73
|
-
this._tapTest.todoReason = reason;
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* set the number of retries for this test
|
|
77
|
-
*/
|
|
78
|
-
retry(count) {
|
|
79
|
-
this._retries = count;
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* get the current retry count
|
|
83
|
-
*/
|
|
84
|
-
get retryCount() {
|
|
85
|
-
return this._retryCount;
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* internal: increment retry count
|
|
89
|
-
*/
|
|
90
|
-
_incrementRetryCount() {
|
|
91
|
-
this._retryCount++;
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* get the maximum retries
|
|
95
|
-
*/
|
|
96
|
-
get maxRetries() {
|
|
97
|
-
return this._retries;
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* async/await delay method
|
|
101
|
-
*/
|
|
102
|
-
async delayFor(timeMilliArg) {
|
|
103
|
-
await plugins.smartdelay.delayFor(timeMilliArg);
|
|
104
|
-
}
|
|
105
|
-
async delayForRandom(timeMilliMinArg, timeMilliMaxArg) {
|
|
106
|
-
await plugins.smartdelay.delayForRandom(timeMilliMinArg, timeMilliMaxArg);
|
|
107
|
-
}
|
|
108
|
-
async coloredString(...args) {
|
|
109
|
-
return plugins.consolecolor.coloredString(...args);
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* set a timeout for the test
|
|
113
|
-
*/
|
|
114
|
-
timeout(timeMilliArg) {
|
|
115
|
-
this._tapTest.timeoutMs = timeMilliArg;
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* wait for a timeout (used internally)
|
|
119
|
-
*/
|
|
120
|
-
async waitForTimeout(timeMilliArg) {
|
|
121
|
-
const timeout = new plugins.smartdelay.Timeout(timeMilliArg);
|
|
122
|
-
timeout.makeUnrefed();
|
|
123
|
-
await timeout.promise;
|
|
124
|
-
if (this._tapTest.status === 'pending') {
|
|
125
|
-
this._tapTest.status = 'timeout';
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
async returnError(throwingFuncArg) {
|
|
129
|
-
let funcErr;
|
|
130
|
-
try {
|
|
131
|
-
await throwingFuncArg();
|
|
132
|
-
}
|
|
133
|
-
catch (err) {
|
|
134
|
-
funcErr = err;
|
|
135
|
-
}
|
|
136
|
-
return funcErr;
|
|
137
|
-
}
|
|
138
|
-
defer() {
|
|
139
|
-
return plugins.smartpromise.defer();
|
|
140
|
-
}
|
|
141
|
-
cumulativeDefer() {
|
|
142
|
-
return plugins.smartpromise.cumulativeDefer();
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* Snapshot testing - compares output with saved snapshot
|
|
146
|
-
*/
|
|
147
|
-
async matchSnapshot(value, snapshotName) {
|
|
148
|
-
if (!this._snapshotPath || !TapTools._pathHelpers) {
|
|
149
|
-
console.log('Snapshot testing is only available in Node.js environment');
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
const snapshotPath = snapshotName
|
|
153
|
-
? this._snapshotPath.replace('.snap', `_${snapshotName}.snap`)
|
|
154
|
-
: this._snapshotPath;
|
|
155
|
-
const serializedValue = typeof value === 'string'
|
|
156
|
-
? value
|
|
157
|
-
: JSON.stringify(value, null, 2);
|
|
158
|
-
try {
|
|
159
|
-
// Try to read existing snapshot
|
|
160
|
-
const existingSnapshot = await plugins.smartfile.fs.toStringSync(snapshotPath);
|
|
161
|
-
if (existingSnapshot !== serializedValue) {
|
|
162
|
-
// Check if we should update snapshots
|
|
163
|
-
if (process.env.UPDATE_SNAPSHOTS === 'true') {
|
|
164
|
-
await plugins.smartfile.fs.ensureDir(TapTools._pathHelpers.dirname(snapshotPath));
|
|
165
|
-
await plugins.smartfile.memory.toFs(serializedValue, snapshotPath);
|
|
166
|
-
console.log(`Snapshot updated: ${snapshotPath}`);
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
throw new Error(`Snapshot mismatch for ${snapshotPath}\n\nExpected:\n${existingSnapshot}\n\nReceived:\n${serializedValue}`);
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
catch (error) {
|
|
174
|
-
if (error.code === 'ENOENT') {
|
|
175
|
-
// Snapshot doesn't exist yet, create it
|
|
176
|
-
await plugins.smartfile.fs.ensureDir(TapTools._pathHelpers.dirname(snapshotPath));
|
|
177
|
-
await plugins.smartfile.memory.toFs(serializedValue, snapshotPath);
|
|
178
|
-
console.log(`Snapshot created: ${snapshotPath}`);
|
|
179
|
-
}
|
|
180
|
-
else {
|
|
181
|
-
throw error;
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Test fixtures - create test data instances
|
|
187
|
-
*/
|
|
188
|
-
static { this._fixtureData = new Map(); }
|
|
189
|
-
static { this._fixtureFactories = new Map(); }
|
|
190
|
-
/**
|
|
191
|
-
* Define a fixture factory
|
|
192
|
-
*/
|
|
193
|
-
static defineFixture(name, factory) {
|
|
194
|
-
this._fixtureFactories.set(name, factory);
|
|
195
|
-
}
|
|
196
|
-
/**
|
|
197
|
-
* Create a fixture instance
|
|
198
|
-
*/
|
|
199
|
-
async fixture(name, data) {
|
|
200
|
-
const factory = TapTools._fixtureFactories.get(name);
|
|
201
|
-
if (!factory) {
|
|
202
|
-
throw new Error(`Fixture '${name}' not found. Define it with TapTools.defineFixture()`);
|
|
203
|
-
}
|
|
204
|
-
const instance = await factory(data);
|
|
205
|
-
// Store the fixture for cleanup
|
|
206
|
-
if (!TapTools._fixtureData.has(name)) {
|
|
207
|
-
TapTools._fixtureData.set(name, []);
|
|
208
|
-
}
|
|
209
|
-
TapTools._fixtureData.get(name).push(instance);
|
|
210
|
-
return instance;
|
|
211
|
-
}
|
|
212
|
-
/**
|
|
213
|
-
* Factory pattern for creating multiple fixtures
|
|
214
|
-
*/
|
|
215
|
-
factory(name) {
|
|
216
|
-
return {
|
|
217
|
-
create: async (data) => {
|
|
218
|
-
return this.fixture(name, data);
|
|
219
|
-
},
|
|
220
|
-
createMany: async (count, dataOverrides) => {
|
|
221
|
-
const results = [];
|
|
222
|
-
for (let i = 0; i < count; i++) {
|
|
223
|
-
const data = Array.isArray(dataOverrides)
|
|
224
|
-
? dataOverrides[i]
|
|
225
|
-
: typeof dataOverrides === 'function'
|
|
226
|
-
? dataOverrides(i)
|
|
227
|
-
: dataOverrides;
|
|
228
|
-
results.push(await this.fixture(name, data));
|
|
229
|
-
}
|
|
230
|
-
return results;
|
|
231
|
-
}
|
|
232
|
-
};
|
|
233
|
-
}
|
|
234
|
-
/**
|
|
235
|
-
* Clear all fixtures (typically called in afterEach)
|
|
236
|
-
*/
|
|
237
|
-
static async cleanupFixtures() {
|
|
238
|
-
TapTools._fixtureData.clear();
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFwYnVuZGxlLmNsYXNzZXMudGFwdG9vbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c190YXBidW5kbGUvdGFwYnVuZGxlLmNsYXNzZXMudGFwdG9vbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSx3QkFBd0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFNekQsTUFBTSxPQUFPLFNBQVUsU0FBUSxLQUFLO0lBQ2xDLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQztJQUMxQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sUUFBUTthQVFKLG1CQUFjLEdBQUcsSUFBSSxHQUFHLEVBQWUsQUFBekIsQ0FBMEI7YUFFeEMsaUJBQVksR0FHaEIsSUFBSSxBQUhZLENBR1g7SUFFaEIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFxQztRQUN6RCxRQUFRLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQztJQUNsQyxDQUFDO0lBRUQsWUFBWSxVQUF3QjtRQWQ1QixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFDakIsYUFBUSxHQUFRLEVBQUUsQ0FBQztRQUVsQixrQkFBYSxHQUFXLEVBQUUsQ0FBQztRQTJJNUIsY0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFFckM7O1dBRUc7UUFDSSxZQUFPLEdBQUc7WUFDZixHQUFHLEVBQUUsQ0FBQyxHQUFXLEVBQUUsRUFBRTtnQkFDbkIsT0FBTyxRQUFRLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMxQyxDQUFDO1lBQ0QsR0FBRyxFQUFFLENBQUMsR0FBVyxFQUFFLEtBQVUsRUFBRSxFQUFFO2dCQUMvQixRQUFRLENBQUMsY0FBYyxDQUFDLEdB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
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as plugins from './tapbundle.plugins.js';
|
|
2
|
-
export class TapWrap {
|
|
3
|
-
constructor(optionsArg) {
|
|
4
|
-
this.options = optionsArg;
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFwYnVuZGxlLmNsYXNzZXMudGFwd3JhcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzX3RhcGJ1bmRsZS90YXBidW5kbGUuY2xhc3Nlcy50YXB3cmFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sd0JBQXdCLENBQUM7QUFPbEQsTUFBTSxPQUFPLE9BQU87SUFFbEIsWUFBWSxVQUEyQjtRQUNyQyxJQUFJLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQztJQUM1QixDQUFDO0NBQ0YifQ==
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import * as consolecolor from '@push.rocks/consolecolor';
|
|
2
|
-
import * as smartdelay from '@push.rocks/smartdelay';
|
|
3
|
-
import * as smartenv from '@push.rocks/smartenv';
|
|
4
|
-
import * as smartexpect from '@push.rocks/smartexpect';
|
|
5
|
-
import * as smartfile from '@push.rocks/smartfile';
|
|
6
|
-
import * as smartjson from '@push.rocks/smartjson';
|
|
7
|
-
import * as smartpromise from '@push.rocks/smartpromise';
|
|
8
|
-
export { consolecolor, smartdelay, smartenv, smartexpect, smartfile, smartjson, smartpromise };
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
// pushrocks
|
|
2
|
-
import * as consolecolor from '@push.rocks/consolecolor';
|
|
3
|
-
import * as smartdelay from '@push.rocks/smartdelay';
|
|
4
|
-
import * as smartenv from '@push.rocks/smartenv';
|
|
5
|
-
import * as smartexpect from '@push.rocks/smartexpect';
|
|
6
|
-
import * as smartfile from '@push.rocks/smartfile';
|
|
7
|
-
import * as smartjson from '@push.rocks/smartjson';
|
|
8
|
-
import * as smartpromise from '@push.rocks/smartpromise';
|
|
9
|
-
export { consolecolor, smartdelay, smartenv, smartexpect, smartfile, smartjson, smartpromise };
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFwYnVuZGxlLnBsdWdpbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c190YXBidW5kbGUvdGFwYnVuZGxlLnBsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUNaLE9BQU8sS0FBSyxZQUFZLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxLQUFLLFVBQVUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEtBQUssUUFBUSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxXQUFXLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxLQUFLLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEtBQUssU0FBUyxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sS0FBSyxZQUFZLE1BQU0sMEJBQTBCLENBQUM7QUFFekQsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxDQUFDIn0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import * as plugins from './tapbundle.plugins.js';
|
|
2
|
-
export class TapCreator {
|
|
3
|
-
}
|
|
4
|
-
export let tapCreator = new TapCreator();
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFwYnVuZGxlLnRhcGNyZWF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c190YXBidW5kbGUvdGFwYnVuZGxlLnRhcGNyZWF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSx3QkFBd0IsQ0FBQztBQUVsRCxNQUFNLE9BQU8sVUFBVTtDQUV0QjtBQUVELE1BQU0sQ0FBQyxJQUFJLFVBQVUsR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDIn0=
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import * as plugins from './tapbundle.plugins.js';
|
|
2
|
-
import { tap } from './tapbundle.classes.tap.js';
|
|
3
|
-
class WebHelpers {
|
|
4
|
-
constructor() {
|
|
5
|
-
const smartenv = new plugins.smartenv.Smartenv();
|
|
6
|
-
// Initialize HTML template tag function
|
|
7
|
-
this.html = (strings, ...values) => {
|
|
8
|
-
let result = '';
|
|
9
|
-
for (let i = 0; i < strings.length; i++) {
|
|
10
|
-
result += strings[i];
|
|
11
|
-
if (i < values.length) {
|
|
12
|
-
result += values[i];
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
return result;
|
|
16
|
-
};
|
|
17
|
-
// Initialize fixture function based on environment
|
|
18
|
-
if (smartenv.isBrowser) {
|
|
19
|
-
this.fixture = async (htmlString) => {
|
|
20
|
-
const container = document.createElement('div');
|
|
21
|
-
container.innerHTML = htmlString.trim();
|
|
22
|
-
const element = container.firstChild;
|
|
23
|
-
return element;
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
// Node.js environment - provide a stub or alternative implementation
|
|
28
|
-
this.fixture = async (htmlString) => {
|
|
29
|
-
throw new Error('WebHelpers.fixture is only available in browser environment');
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
export const webhelpers = new WebHelpers();
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzX3RhcGJ1bmRsZS93ZWJoZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sd0JBQXdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWpELE1BQU0sVUFBVTtJQUlkO1FBQ0UsTUFBTSxRQUFRLEdBQUcsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWpELHdDQUF3QztRQUN4QyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsT0FBNkIsRUFBRSxHQUFHLE1BQWEsRUFBRSxFQUFFO1lBQzlELElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztZQUNoQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUN4QyxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNyQixJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ3RCLE1BQU0sSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RCLENBQUM7WUFDSCxDQUFDO1lBQ0QsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxDQUFDO1FBRUYsbURBQW1EO1FBQ25ELElBQUksUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxFQUFFLFVBQWtCLEVBQXdCLEVBQUU7Z0JBQ2hFLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2hELFNBQVMsQ0FBQyxTQUFTLEdBQUcsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUN4QyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsVUFBeUIsQ0FBQztnQkFDcEQsT0FBTyxPQUFPLENBQUM7WUFDakIsQ0FBQyxDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixxRUFBcUU7WUFDckUsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLEVBQUUsVUFBa0IsRUFBZ0IsRUFBRTtnQkFDeEQsTUFBTSxJQUFJLEtBQUssQ0FBQyw2REFBNkQsQ0FBQyxDQUFDO1lBQ2pGLENBQUMsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQyJ9
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import * as plugins from './plugins.js';
|
|
2
|
-
import { TapTools } from '../ts_tapbundle/tapbundle.classes.taptools.js';
|
|
3
|
-
/**
|
|
4
|
-
* Initialize path helpers for the TapTools class
|
|
5
|
-
* This provides Node.js-specific path operations to the browser-compatible tapbundle
|
|
6
|
-
*/
|
|
7
|
-
export const initializePathHelpers = () => {
|
|
8
|
-
TapTools.setPathHelpers({
|
|
9
|
-
join: (...args) => plugins.path.join(...args),
|
|
10
|
-
dirname: (path) => plugins.path.dirname(path)
|
|
11
|
-
});
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5wYXRoaW5qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHNfdGFwYnVuZGxlX25vZGUvY2xhc3Nlcy5wYXRoaW5qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUV6RTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxHQUFHLEVBQUU7SUFDeEMsUUFBUSxDQUFDLGNBQWMsQ0FBQztRQUN0QixJQUFJLEVBQUUsQ0FBQyxHQUFHLElBQWMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDdkQsT0FBTyxFQUFFLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7S0FDdEQsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDIn0=
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import * as crypto from 'crypto';
|
|
2
|
-
import * as fs from 'fs';
|
|
3
|
-
import * as path from 'path';
|
|
4
|
-
export { crypto, fs, path, };
|
|
5
|
-
import * as qenv from '@push.rocks/qenv';
|
|
6
|
-
import * as smartcrypto from '@push.rocks/smartcrypto';
|
|
7
|
-
import * as smartfile from '@push.rocks/smartfile';
|
|
8
|
-
import * as smartpath from '@push.rocks/smartpath';
|
|
9
|
-
import * as smartrequest from '@push.rocks/smartrequest';
|
|
10
|
-
import * as smartshell from '@push.rocks/smartshell';
|
|
11
|
-
export { qenv, smartcrypto, smartfile, smartpath, smartrequest, smartshell, };
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
// node native
|
|
2
|
-
import * as crypto from 'crypto';
|
|
3
|
-
import * as fs from 'fs';
|
|
4
|
-
import * as path from 'path';
|
|
5
|
-
export { crypto, fs, path, };
|
|
6
|
-
// @push.rocks scope
|
|
7
|
-
import * as qenv from '@push.rocks/qenv';
|
|
8
|
-
import * as smartcrypto from '@push.rocks/smartcrypto';
|
|
9
|
-
import * as smartfile from '@push.rocks/smartfile';
|
|
10
|
-
import * as smartpath from '@push.rocks/smartpath';
|
|
11
|
-
import * as smartrequest from '@push.rocks/smartrequest';
|
|
12
|
-
import * as smartshell from '@push.rocks/smartshell';
|
|
13
|
-
export { qenv, smartcrypto, smartfile, smartpath, smartrequest, smartshell, };
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2lucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzX3RhcGJ1bmRsZV9ub2RlL3BsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYztBQUNkLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQ2pDLE9BQU8sS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQ3pCLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBRTdCLE9BQU8sRUFBRSxNQUFNLEVBQUMsRUFBRSxFQUFFLElBQUksR0FBRyxDQUFDO0FBRTVCLG9CQUFvQjtBQUNwQixPQUFPLEtBQUssSUFBSSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sS0FBSyxXQUFXLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxLQUFLLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEtBQUssU0FBUyxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sS0FBSyxZQUFZLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxLQUFLLFVBQVUsTUFBTSx3QkFBd0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEdBQUcsQ0FBQyJ9
|