just-test-node 2.0.0-alpha.0 → 2.0.0-alpha.1
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/lib/OptionsDefinitions.d.ts +1 -0
- package/lib/OptionsDefinitions.js +16 -10
- package/lib/Suite.d.ts +4 -3
- package/lib/Suite.js +9 -11
- package/lib/SuiteProvider.d.ts +9 -0
- package/lib/SuiteProvider.js +88 -0
- package/lib/examples/dir-suite/@test-suite +0 -0
- package/lib/examples/dir-suite/child-dir-suite/@test-suite +0 -0
- package/lib/{exampleTestFile.test.d.ts → examples/dir-suite/child-dir-suite/childDirTests.test.d.ts} +0 -0
- package/lib/examples/dir-suite/child-dir-suite/childDirTests.test.js +9 -0
- package/lib/examples/dir-suite/inDirSuite.test.d.ts +2 -0
- package/lib/examples/dir-suite/inDirSuite.test.js +9 -0
- package/lib/examples/dir-suite/just-a-folder/inJustAFolderTest.d.ts +2 -0
- package/lib/examples/dir-suite/just-a-folder/inJustAFolderTest.js +9 -0
- package/lib/examples/exampleTestFile.test.d.ts +2 -0
- package/lib/examples/exampleTestFile.test.js +57 -0
- package/lib/index.js +42 -26
- package/package.json +8 -8
- package/lib/exampleTestFile.test.js +0 -62
|
@@ -7,6 +7,7 @@ export interface Options {
|
|
|
7
7
|
discover: boolean;
|
|
8
8
|
reporter: "spec" | "json";
|
|
9
9
|
testFailureExitCode: number;
|
|
10
|
+
directorySuitesGlob: string;
|
|
10
11
|
}
|
|
11
12
|
export declare function validateOptions(options: Options): void;
|
|
12
13
|
export interface OptionDefinition extends ArgsOptionDefinition {
|
|
@@ -8,24 +8,24 @@ function validateOptions(options) {
|
|
|
8
8
|
exports.validateOptions = validateOptions;
|
|
9
9
|
exports.optionsDefinitions = [
|
|
10
10
|
{
|
|
11
|
-
name: '
|
|
11
|
+
name: 'help', alias: 'h',
|
|
12
|
+
type: Boolean,
|
|
13
|
+
defaultValue: false,
|
|
14
|
+
description: "Show help."
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
name: 'glob',
|
|
12
18
|
type: String,
|
|
13
|
-
defaultValue: "
|
|
19
|
+
defaultValue: "./{*.test.js,!(node_modules)/**/*.test.js}",
|
|
14
20
|
description: "Test files glob pattern."
|
|
15
21
|
},
|
|
16
22
|
{
|
|
17
|
-
name: "filter",
|
|
23
|
+
name: "filter",
|
|
18
24
|
type: String,
|
|
19
25
|
defaultOption: true,
|
|
20
26
|
defaultValue: "",
|
|
21
27
|
description: "Filters tests."
|
|
22
28
|
},
|
|
23
|
-
{
|
|
24
|
-
name: 'help', alias: 'h',
|
|
25
|
-
type: Boolean,
|
|
26
|
-
defaultValue: false,
|
|
27
|
-
description: "Show help."
|
|
28
|
-
},
|
|
29
29
|
{
|
|
30
30
|
name: 'debug',
|
|
31
31
|
type: Boolean,
|
|
@@ -49,7 +49,13 @@ exports.optionsDefinitions = [
|
|
|
49
49
|
type: Number,
|
|
50
50
|
defaultValue: 1,
|
|
51
51
|
description: `The exit code to use when has test failures.`,
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
name: 'directorySuitesGlob',
|
|
55
|
+
type: String,
|
|
56
|
+
defaultValue: "./{@test-suite,!(node_modules)/**/@test-suite}",
|
|
57
|
+
description: "Directory suite files glob pattern."
|
|
52
58
|
}
|
|
53
59
|
];
|
|
54
60
|
|
|
55
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wdGlvbnNEZWZpbml0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFhQSxTQUFnQixlQUFlLENBQUMsT0FBZ0I7SUFDL0MsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQy9DLE1BQU0sbUJBQW1CLENBQUM7QUFDNUIsQ0FBQztBQUhELDBDQUdDO0FBTVksUUFBQSxrQkFBa0IsR0FBdUI7SUFDckQ7UUFDQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHO1FBQ3hCLElBQUksRUFBRSxPQUFPO1FBQ2IsWUFBWSxFQUFFLEtBQUs7UUFDbkIsV0FBVyxFQUFFLFlBQVk7S0FDekI7SUFDRDtRQUNDLElBQUksRUFBRSxNQUFNO1FBQ1osSUFBSSxFQUFFLE1BQU07UUFDWixZQUFZLEVBQUUsNENBQTRDO1FBQzFELFdBQVcsRUFBRSwwQkFBMEI7S0FDdkM7SUFDRDtRQUNDLElBQUksRUFBRSxRQUFRO1FBQ2QsSUFBSSxFQUFFLE1BQU07UUFDWixhQUFhLEVBQUUsSUFBSTtRQUNuQixZQUFZLEVBQUUsRUFBRTtRQUNoQixXQUFXLEVBQUUsZ0JBQWdCO0tBQzdCO0lBQ0Q7UUFDQyxJQUFJLEVBQUUsT0FBTztRQUNiLElBQUksRUFBRSxPQUFPO1FBQ2IsWUFBWSxFQUFFLEtBQUs7UUFDbkIsV0FBVyxFQUFFLG9DQUFvQztLQUNqRDtJQUNEO1FBQ0MsSUFBSSxFQUFFLFVBQVU7UUFDaEIsSUFBSSxFQUFFLE9BQU87UUFDYixZQUFZLEVBQUUsS0FBSztRQUNuQixXQUFXLEVBQUUsMENBQTBDO0tBQ3ZEO0lBQ0Q7UUFDQyxJQUFJLEVBQUUsVUFBVTtRQUNoQixJQUFJLEVBQUUsTUFBTTtRQUNaLFlBQVksRUFBRSxNQUFNO1FBQ3BCLFdBQVcsRUFBRSx3REFBd0Q7S0FDckU7SUFDRDtRQUNDLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsSUFBSSxFQUFFLE1BQU07UUFDWixZQUFZLEVBQUUsQ0FBQztRQUNmLFdBQVcsRUFBRSw4Q0FBOEM7S0FDM0Q7SUFDRDtRQUNDLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsSUFBSSxFQUFFLE1BQU07UUFDWixZQUFZLEVBQUUsZ0RBQWdEO1FBQzlELFdBQVcsRUFBRSxxQ0FBcUM7S0FDbEQ7Q0FDRCxDQUFDIiwiZmlsZSI6Ik9wdGlvbnNEZWZpbml0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIuLlxcc3JjIn0=
|
package/lib/Suite.d.ts
CHANGED
|
@@ -19,9 +19,10 @@ export declare class Suite implements TestSuite {
|
|
|
19
19
|
title: string;
|
|
20
20
|
location: FunctionCodeRange;
|
|
21
21
|
parent?: Suite;
|
|
22
|
-
childrenSuites: Suite[];
|
|
23
|
-
tests: Test[];
|
|
24
22
|
private isPartial;
|
|
23
|
+
tests: Test[];
|
|
24
|
+
private _childrenSuites;
|
|
25
|
+
childrenSuites: ReadonlyArray<Suite>;
|
|
25
26
|
onSuiteStarted: Event1<Suite>;
|
|
26
27
|
onSuiteEnded: Event1<SuiteEndedArgs>;
|
|
27
28
|
onTestStarted: Event1<Test>;
|
|
@@ -31,9 +32,9 @@ export declare class Suite implements TestSuite {
|
|
|
31
32
|
describe(title: string | {
|
|
32
33
|
name: string;
|
|
33
34
|
}, suiteFunction: (suite: Suite) => void): void;
|
|
35
|
+
addChildSuite(childSuite: Suite): void;
|
|
34
36
|
test(title: string, testFunction: (test: TestParams) => Promise<void> | void): void;
|
|
35
37
|
testFunc(namedTestFunction: (test: TestParams) => Promise<void> | void): void;
|
|
36
|
-
testFuncs(...namedTestFunctions: ((test: TestParams) => Promise<void> | void)[]): void;
|
|
37
38
|
private getTitleFor;
|
|
38
39
|
run(params: RunParams): Promise<boolean>;
|
|
39
40
|
private getStatus;
|
package/lib/Suite.js
CHANGED
|
@@ -9,9 +9,10 @@ class Suite {
|
|
|
9
9
|
constructor() {
|
|
10
10
|
this.title = "";
|
|
11
11
|
this.location = null;
|
|
12
|
-
this.childrenSuites = [];
|
|
13
|
-
this.tests = [];
|
|
14
12
|
this.isPartial = false;
|
|
13
|
+
this.tests = [];
|
|
14
|
+
this._childrenSuites = [];
|
|
15
|
+
this.childrenSuites = this._childrenSuites;
|
|
15
16
|
this.onSuiteStarted = new itay_events_1.Event1();
|
|
16
17
|
this.onSuiteEnded = new itay_events_1.Event1();
|
|
17
18
|
this.onTestStarted = new itay_events_1.Event1();
|
|
@@ -29,13 +30,16 @@ class Suite {
|
|
|
29
30
|
let childSuite = new Suite();
|
|
30
31
|
childSuite.title = typeof (title) === "string" ? title : title.name;
|
|
31
32
|
childSuite.location = (0, code_position_resolution_1.getFunctionCodeRange)(suiteFunction, this.describe);
|
|
33
|
+
this.addChildSuite(childSuite);
|
|
34
|
+
suiteFunction(childSuite);
|
|
35
|
+
}
|
|
36
|
+
addChildSuite(childSuite) {
|
|
32
37
|
childSuite.onTestStarted.add(t => this.onTestStarted.trigger(t));
|
|
33
38
|
childSuite.onTestEnded.add(result => this.onTestEnded.trigger(result));
|
|
34
39
|
childSuite.onSuiteStarted.add(s => this.onSuiteStarted.trigger(s));
|
|
35
40
|
childSuite.onSuiteEnded.add(s => this.onSuiteEnded.trigger(s));
|
|
36
41
|
childSuite.parent = this;
|
|
37
|
-
this.
|
|
38
|
-
suiteFunction(childSuite);
|
|
42
|
+
this._childrenSuites.push(childSuite);
|
|
39
43
|
}
|
|
40
44
|
test(title, testFunction) {
|
|
41
45
|
const location = (0, code_position_resolution_1.getFunctionCodeRange)(testFunction, this.test);
|
|
@@ -45,12 +49,6 @@ class Suite {
|
|
|
45
49
|
const location = (0, code_position_resolution_1.getFunctionCodeRange)(namedTestFunction, this.testFunc);
|
|
46
50
|
this.tests.push(new Test_1.Test(this.getTitleFor(namedTestFunction), namedTestFunction, this, location));
|
|
47
51
|
}
|
|
48
|
-
testFuncs(...namedTestFunctions) {
|
|
49
|
-
for (const test of namedTestFunctions) {
|
|
50
|
-
const location = (0, code_position_resolution_1.getFunctionCodeRange)(test, this.testFuncs);
|
|
51
|
-
this.tests.push(new Test_1.Test(this.getTitleFor(test), test, this, location));
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
52
|
getTitleFor(func) {
|
|
55
53
|
return func.name.replace(/_/g, " ");
|
|
56
54
|
}
|
|
@@ -112,4 +110,4 @@ class Suite {
|
|
|
112
110
|
}
|
|
113
111
|
exports.Suite = Suite;
|
|
114
112
|
|
|
115
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
113
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,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
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Suite } from "./Suite";
|
|
2
|
+
export declare class SuiteProvider {
|
|
3
|
+
root: Suite;
|
|
4
|
+
private directorySuites;
|
|
5
|
+
constructor(directorySuiteFilesPaths: string[]);
|
|
6
|
+
private findParentForDirAt;
|
|
7
|
+
private setUnderRoot;
|
|
8
|
+
getSuiteForTestFile(filePath: string): Suite;
|
|
9
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.SuiteProvider = void 0;
|
|
23
|
+
const path = __importStar(require("path"));
|
|
24
|
+
const Suite_1 = require("./Suite");
|
|
25
|
+
class SuiteProvider {
|
|
26
|
+
constructor(directorySuiteFilesPaths) {
|
|
27
|
+
this.root = new Suite_1.Suite();
|
|
28
|
+
this.directorySuites = [];
|
|
29
|
+
const dirs = directorySuiteFilesPaths.map(e => new DirectorySuite(path.resolve(e)));
|
|
30
|
+
dirs.sort(e => e.path.length);
|
|
31
|
+
for (let i = 0; i < dirs.length; i++) {
|
|
32
|
+
const current = dirs[i];
|
|
33
|
+
const parent = this.findParentForDirAt(dirs, i);
|
|
34
|
+
if (parent)
|
|
35
|
+
parent.setAsParentOf(current);
|
|
36
|
+
else
|
|
37
|
+
this.setUnderRoot(current);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
findParentForDirAt(dirs, i) {
|
|
41
|
+
const current = dirs[i];
|
|
42
|
+
for (let j = i - 1; j >= 0; j--) {
|
|
43
|
+
const checkedParent = dirs[j];
|
|
44
|
+
if (current.path.startsWith(checkedParent.path))
|
|
45
|
+
return checkedParent;
|
|
46
|
+
}
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
setUnderRoot(dirSuite) {
|
|
50
|
+
this.directorySuites.push(dirSuite);
|
|
51
|
+
this.root.addChildSuite(dirSuite.suite);
|
|
52
|
+
}
|
|
53
|
+
getSuiteForTestFile(filePath) {
|
|
54
|
+
filePath = path.resolve(filePath);
|
|
55
|
+
for (const dirSuite of this.directorySuites) {
|
|
56
|
+
const suite = dirSuite.getSuiteOrNull(filePath);
|
|
57
|
+
if (suite)
|
|
58
|
+
return suite;
|
|
59
|
+
}
|
|
60
|
+
return this.root;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
exports.SuiteProvider = SuiteProvider;
|
|
64
|
+
class DirectorySuite {
|
|
65
|
+
constructor(directorySuiteFilePath) {
|
|
66
|
+
this.path = path.dirname(directorySuiteFilePath);
|
|
67
|
+
this.subDirectorySuites = [];
|
|
68
|
+
this.suite = new Suite_1.Suite();
|
|
69
|
+
this.suite.title = path.basename(this.path);
|
|
70
|
+
this.suite.location = { filePath: directorySuiteFilePath, start: { line: 0, column: 0 }, end: { line: 0, column: 0 } };
|
|
71
|
+
}
|
|
72
|
+
setAsParentOf(child) {
|
|
73
|
+
this.subDirectorySuites.push(child);
|
|
74
|
+
this.suite.addChildSuite(child.suite);
|
|
75
|
+
}
|
|
76
|
+
getSuiteOrNull(filePath) {
|
|
77
|
+
if (!filePath.startsWith(this.path))
|
|
78
|
+
return null;
|
|
79
|
+
for (const subDirSuite of this.subDirectorySuites) {
|
|
80
|
+
const suite = subDirSuite.getSuiteOrNull(filePath);
|
|
81
|
+
if (suite)
|
|
82
|
+
return suite;
|
|
83
|
+
}
|
|
84
|
+
return this.suite;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,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QUUsc0JBQXNCLEVBQUUsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUN4SCxDQUFDO0lBRU0sYUFBYSxDQUFDLEtBQXFCO1FBQ3pDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxjQUFjLENBQUMsUUFBZ0I7UUFDckMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNsQyxPQUFPLElBQUksQ0FBQztRQUViLEtBQUssTUFBTSxXQUFXLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQ2xELE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFbkQsSUFBSSxLQUFLO2dCQUNSLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDbkIsQ0FBQztDQUNEIiwiZmlsZSI6IlN1aXRlUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiLi5cXHNyYyJ9
|
|
File without changes
|
|
File without changes
|
package/lib/{exampleTestFile.test.d.ts → examples/dir-suite/child-dir-suite/childDirTests.test.d.ts}
RENAMED
|
File without changes
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
function default_1(suite) {
|
|
4
|
+
suite.test("test in child-dir-suite", t => {
|
|
5
|
+
});
|
|
6
|
+
}
|
|
7
|
+
exports.default = default_1;
|
|
8
|
+
|
|
9
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImV4YW1wbGVzL2Rpci1zdWl0ZS9jaGlsZC1kaXItc3VpdGUvY2hpbGREaXJUZXN0cy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBR0EsbUJBQXlCLEtBQWdCO0lBQ3hDLEtBQUssQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDLEVBQUU7SUFDMUMsQ0FBQyxDQUFDLENBQUM7QUFDSixDQUFDO0FBSEQsNEJBR0MiLCJmaWxlIjoiZXhhbXBsZXMvZGlyLXN1aXRlL2NoaWxkLWRpci1zdWl0ZS9jaGlsZERpclRlc3RzLnRlc3QuanMiLCJzb3VyY2VSb290IjoiLi5cXC4uXFwuLlxcLi5cXHNyYyJ9
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
function default_1(suite) {
|
|
4
|
+
suite.test("test in dir-suite", t => {
|
|
5
|
+
});
|
|
6
|
+
}
|
|
7
|
+
exports.default = default_1;
|
|
8
|
+
|
|
9
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImV4YW1wbGVzL2Rpci1zdWl0ZS9pbkRpclN1aXRlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSxtQkFBeUIsS0FBZ0I7SUFDeEMsS0FBSyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsRUFBRTtJQUNwQyxDQUFDLENBQUMsQ0FBQztBQUNKLENBQUM7QUFIRCw0QkFHQyIsImZpbGUiOiJleGFtcGxlcy9kaXItc3VpdGUvaW5EaXJTdWl0ZS50ZXN0LmpzIiwic291cmNlUm9vdCI6Ii4uXFwuLlxcLi5cXHNyYyJ9
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
function default_1(suite) {
|
|
4
|
+
suite.test("test in just-a-folder", t => {
|
|
5
|
+
});
|
|
6
|
+
}
|
|
7
|
+
exports.default = default_1;
|
|
8
|
+
|
|
9
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImV4YW1wbGVzL2Rpci1zdWl0ZS9qdXN0LWEtZm9sZGVyL2luSnVzdEFGb2xkZXJUZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBR0EsbUJBQXlCLEtBQWdCO0lBQ3hDLEtBQUssQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLEVBQUU7SUFDeEMsQ0FBQyxDQUFDLENBQUM7QUFDSixDQUFDO0FBSEQsNEJBR0MiLCJmaWxlIjoiZXhhbXBsZXMvZGlyLXN1aXRlL2p1c3QtYS1mb2xkZXIvaW5KdXN0QUZvbGRlclRlc3QuanMiLCJzb3VyY2VSb290IjoiLi5cXC4uXFwuLlxcLi5cXHNyYyJ9
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
function someFunction() { }
|
|
4
|
+
function default_1(suite) {
|
|
5
|
+
suite.describe("Passing suite", suite => {
|
|
6
|
+
suite.test("Simple test", t => {
|
|
7
|
+
});
|
|
8
|
+
suite.test("Async", async (t) => {
|
|
9
|
+
await Promise.resolve("Hi");
|
|
10
|
+
});
|
|
11
|
+
suite.describe(someFunction, suite => {
|
|
12
|
+
suite.test("Test", t => {
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
suite.describe("Failing suite", suite => {
|
|
17
|
+
suite.test("No stage error", t => {
|
|
18
|
+
throw "asdf";
|
|
19
|
+
});
|
|
20
|
+
suite.test("Arrage error", t => {
|
|
21
|
+
t.arrange();
|
|
22
|
+
throw "asdf";
|
|
23
|
+
});
|
|
24
|
+
suite.test("Act error", t => {
|
|
25
|
+
t.act();
|
|
26
|
+
throw "asdf";
|
|
27
|
+
});
|
|
28
|
+
suite.test("Assert error", t => {
|
|
29
|
+
t.assert();
|
|
30
|
+
throw "asdf";
|
|
31
|
+
});
|
|
32
|
+
suite.test("Throw Error", t => {
|
|
33
|
+
t.assert();
|
|
34
|
+
throw new Error("Some error message.");
|
|
35
|
+
});
|
|
36
|
+
suite.test("Throws after await", async (t) => {
|
|
37
|
+
await new Promise(r => setTimeout(r, 1));
|
|
38
|
+
t.assert();
|
|
39
|
+
throw "error";
|
|
40
|
+
});
|
|
41
|
+
suite.test("Timeout reached.", async (t) => {
|
|
42
|
+
t.timeout = 1;
|
|
43
|
+
await new Promise(r => setTimeout(r, 100));
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
suite.describe("Empty suite", suite => {
|
|
47
|
+
});
|
|
48
|
+
suite.describe("Named functions", suite => {
|
|
49
|
+
suite.testFunc(named_function_test_with_spaces);
|
|
50
|
+
suite.testFunc(function inline_function() { });
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
exports.default = default_1;
|
|
54
|
+
function named_function_test_with_spaces(t) {
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImV4YW1wbGVzL2V4YW1wbGVUZXN0RmlsZS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsU0FBUyxZQUFZLEtBQUssQ0FBQztBQUUzQixtQkFBeUIsS0FBZ0I7SUFDeEMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUU7UUFFdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLEVBQUU7UUFDOUIsQ0FBQyxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUMsQ0FBQyxFQUFDLEVBQUU7WUFDN0IsTUFBTSxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDcEMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDdkIsQ0FBQyxDQUFDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUgsS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUU7UUFFdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsRUFBRTtZQUNoQyxNQUFNLE1BQU0sQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDOUIsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ1osTUFBTSxNQUFNLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztRQUVILEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQzNCLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNSLE1BQU0sTUFBTSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsRUFBRTtZQUM5QixDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWCxNQUFNLE1BQU0sQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDN0IsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLEVBQUMsQ0FBQyxFQUFDLEVBQUU7WUFDMUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUV6QyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWCxNQUFNLE9BQU8sQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLEVBQUMsQ0FBQyxFQUFDLEVBQUU7WUFDeEMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7WUFDZCxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7SUFFSCxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsRUFBRTtJQUN0QyxDQUFDLENBQUMsQ0FBQztJQUVILEtBQUssQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLEVBQUU7UUFDekMsS0FBSyxDQUFDLFFBQVEsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQ2hELEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxlQUFlLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDaEQsQ0FBQyxDQUFDLENBQUM7QUFDSixDQUFDO0FBOURELDRCQThEQztBQUVELFNBQVMsK0JBQStCLENBQUMsQ0FBYTtBQUN0RCxDQUFDIiwiZmlsZSI6ImV4YW1wbGVzL2V4YW1wbGVUZXN0RmlsZS50ZXN0LmpzIiwic291cmNlUm9vdCI6Ii4uXFwuLlxcc3JjIn0=
|
package/lib/index.js
CHANGED
|
@@ -28,8 +28,8 @@ const glob_1 = __importDefault(require("glob"));
|
|
|
28
28
|
const path_1 = __importDefault(require("path"));
|
|
29
29
|
const OptionsDefinitions_1 = require("./OptionsDefinitions");
|
|
30
30
|
const help_1 = require("./help");
|
|
31
|
-
const Suite_1 = require("./Suite");
|
|
32
31
|
const reporters_1 = require("./reporters");
|
|
32
|
+
const SuiteProvider_1 = require("./SuiteProvider");
|
|
33
33
|
main();
|
|
34
34
|
async function main() {
|
|
35
35
|
try {
|
|
@@ -39,12 +39,18 @@ async function main() {
|
|
|
39
39
|
(0, help_1.printHelp)(OptionsDefinitions_1.optionsDefinitions);
|
|
40
40
|
return;
|
|
41
41
|
}
|
|
42
|
-
|
|
42
|
+
const restoreConsole = disableConsole();
|
|
43
|
+
const testFilesPromise = getTestFilesAsync(options);
|
|
44
|
+
const directorySuitesPromise = getDirectorySuitesAsync(options);
|
|
45
|
+
const directorySuites = await directorySuitesPromise;
|
|
46
|
+
const suiteProvider = new SuiteProvider_1.SuiteProvider(directorySuites);
|
|
47
|
+
const testFiles = await testFilesPromise;
|
|
48
|
+
restoreConsole();
|
|
43
49
|
if (options.discover) {
|
|
44
|
-
await outputDiscoveredTests(testFiles,
|
|
50
|
+
await outputDiscoveredTests(testFiles, suiteProvider);
|
|
45
51
|
return;
|
|
46
52
|
}
|
|
47
|
-
const passed = await test(testFiles, options);
|
|
53
|
+
const passed = await test(testFiles, suiteProvider, options);
|
|
48
54
|
if (!passed)
|
|
49
55
|
process.exit(options.testFailureExitCode);
|
|
50
56
|
}
|
|
@@ -54,25 +60,37 @@ async function main() {
|
|
|
54
60
|
}
|
|
55
61
|
}
|
|
56
62
|
;
|
|
57
|
-
function
|
|
63
|
+
function disableConsole() {
|
|
64
|
+
const original = console;
|
|
65
|
+
function nothing() { }
|
|
66
|
+
;
|
|
67
|
+
console = { log: nothing, info: nothing, debug: nothing, warn: nothing, error: nothing };
|
|
68
|
+
return () => { console = original; };
|
|
69
|
+
}
|
|
70
|
+
async function getTestFilesAsync(options) {
|
|
71
|
+
return await globAsync(options.glob);
|
|
72
|
+
}
|
|
73
|
+
async function getDirectorySuitesAsync(options) {
|
|
74
|
+
return await globAsync(options.directorySuitesGlob);
|
|
75
|
+
}
|
|
76
|
+
function globAsync(pattern) {
|
|
58
77
|
return new Promise((resolve, reject) => {
|
|
59
|
-
(0, glob_1.default)(
|
|
60
|
-
if (error)
|
|
78
|
+
(0, glob_1.default)(pattern, (error, matches) => {
|
|
79
|
+
if (error)
|
|
61
80
|
reject(error);
|
|
62
|
-
|
|
63
|
-
else {
|
|
81
|
+
else
|
|
64
82
|
resolve(matches);
|
|
65
|
-
}
|
|
66
83
|
});
|
|
67
84
|
});
|
|
68
85
|
}
|
|
69
|
-
async function test(files, options) {
|
|
70
|
-
const suite = await createRootSuite(files, !!options.debug);
|
|
86
|
+
async function test(files, suiteProvider, options) {
|
|
71
87
|
const reporter = createReporter(options.reporter);
|
|
88
|
+
disableConsole();
|
|
89
|
+
const suite = await createTree(files, suiteProvider);
|
|
72
90
|
reporter.listenTo(suite);
|
|
73
91
|
if (options.filter)
|
|
74
92
|
suite.treeShake(options.filter.toLowerCase());
|
|
75
|
-
return await suite.run({ debug:
|
|
93
|
+
return await suite.run({ debug: options.debug });
|
|
76
94
|
}
|
|
77
95
|
function createReporter(reporter) {
|
|
78
96
|
switch (reporter) {
|
|
@@ -82,18 +100,16 @@ function createReporter(reporter) {
|
|
|
82
100
|
return new reporters_1.JsonReporter(console);
|
|
83
101
|
}
|
|
84
102
|
}
|
|
85
|
-
async function
|
|
86
|
-
let
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
for (let testFunc of testFileFunctions) {
|
|
92
|
-
testFunc(rootSuite);
|
|
103
|
+
async function createTree(filesPaths, suiteProvider) {
|
|
104
|
+
for (let filePath of filesPaths) {
|
|
105
|
+
const testFuncPromise = getTestFileFunctionAsync(filePath);
|
|
106
|
+
const suite = suiteProvider.getSuiteForTestFile(filePath);
|
|
107
|
+
const testFunc = await testFuncPromise;
|
|
108
|
+
testFunc(suite);
|
|
93
109
|
}
|
|
94
|
-
return
|
|
110
|
+
return suiteProvider.root;
|
|
95
111
|
}
|
|
96
|
-
async function
|
|
112
|
+
async function getTestFileFunctionAsync(file) {
|
|
97
113
|
let testFileFunction;
|
|
98
114
|
try {
|
|
99
115
|
testFileFunction = await Promise.resolve().then(() => __importStar(require(path_1.default.resolve(file))));
|
|
@@ -108,9 +124,9 @@ async function getTestFileFunction(file) {
|
|
|
108
124
|
}
|
|
109
125
|
return testFileFunction;
|
|
110
126
|
}
|
|
111
|
-
async function outputDiscoveredTests(files,
|
|
112
|
-
let suite = await
|
|
127
|
+
async function outputDiscoveredTests(files, suiteProvider) {
|
|
128
|
+
let suite = await createTree(files, suiteProvider);
|
|
113
129
|
console.log(JSON.stringify(suite.discover()));
|
|
114
130
|
}
|
|
115
131
|
|
|
116
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
132
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "just-test-node",
|
|
3
|
-
"version": "2.0.0-alpha.
|
|
3
|
+
"version": "2.0.0-alpha.1",
|
|
4
4
|
"description": "just-test on node.",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"typings": "./lib/index.d.ts",
|
|
@@ -10,12 +10,12 @@
|
|
|
10
10
|
"scripts": {
|
|
11
11
|
"build": "gulp build",
|
|
12
12
|
"prepublishOnly": "gulp clean && gulp build",
|
|
13
|
-
"test": "gulp build && node ./lib/index.js",
|
|
14
|
-
"test-json": "
|
|
15
|
-
"test-json-partial": "
|
|
16
|
-
"test-discover": "
|
|
17
|
-
"test-ts": "gulp build && ts-node ./src/index.ts",
|
|
18
|
-
"test-ts-discover": "
|
|
13
|
+
"test": "gulp build && node ./lib/index.js --directorySuitesGlob=./lib/**/@test-suite",
|
|
14
|
+
"test-json": "npm run test -- --reporter=json",
|
|
15
|
+
"test-json-partial": "npm run test -- --reporter=json \"Simple test\"",
|
|
16
|
+
"test-discover": "npm run test -- --discover",
|
|
17
|
+
"test-ts": "gulp build && ts-node ./src/index.ts --glob=./src/**/*.test.ts --directorySuitesGlob=./src/**/@test-suite",
|
|
18
|
+
"test-ts-discover": "npm run test-ts -- --discover"
|
|
19
19
|
},
|
|
20
20
|
"author": {
|
|
21
21
|
"name": "Itay Ronen",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"command-line-args": "^5.2.0",
|
|
52
52
|
"glob": "^7.2.0",
|
|
53
53
|
"itay-events": "^3.0.1",
|
|
54
|
-
"just-test-api": "^2.0.
|
|
54
|
+
"just-test-api": "^2.0.1"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
57
|
"@types/chalk": "^2.2.0",
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
function someFunction() { }
|
|
4
|
-
function default_1(suite) {
|
|
5
|
-
suite.describe("Passing suite", suite => {
|
|
6
|
-
suite.test("Simple test", t => {
|
|
7
|
-
});
|
|
8
|
-
suite.test("Async", async (t) => {
|
|
9
|
-
await Promise.resolve("Hi");
|
|
10
|
-
});
|
|
11
|
-
suite.describe(someFunction, suite => {
|
|
12
|
-
suite.test("Test", t => {
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
});
|
|
16
|
-
suite.describe("Failing suite", suite => {
|
|
17
|
-
suite.test("No stage error", t => {
|
|
18
|
-
throw "asdf";
|
|
19
|
-
});
|
|
20
|
-
suite.test("Arrage error", t => {
|
|
21
|
-
t.arrange();
|
|
22
|
-
throw "asdf";
|
|
23
|
-
});
|
|
24
|
-
suite.test("Act error", t => {
|
|
25
|
-
t.act();
|
|
26
|
-
throw "asdf";
|
|
27
|
-
});
|
|
28
|
-
suite.test("Assert error", t => {
|
|
29
|
-
t.assert();
|
|
30
|
-
throw "asdf";
|
|
31
|
-
});
|
|
32
|
-
suite.test("Throw Error", t => {
|
|
33
|
-
t.assert();
|
|
34
|
-
throw new Error("Some error message.");
|
|
35
|
-
});
|
|
36
|
-
suite.test("Throws after await", async (t) => {
|
|
37
|
-
await new Promise(r => setTimeout(r, 1));
|
|
38
|
-
t.assert();
|
|
39
|
-
throw "error";
|
|
40
|
-
});
|
|
41
|
-
suite.test("Timeout reached.", async (t) => {
|
|
42
|
-
t.timeout = 1;
|
|
43
|
-
await new Promise(r => setTimeout(r, 100));
|
|
44
|
-
});
|
|
45
|
-
});
|
|
46
|
-
suite.describe("Empty suite", suite => {
|
|
47
|
-
});
|
|
48
|
-
suite.describe("Named functions", suite => {
|
|
49
|
-
suite.testFunc(named_function_test_with_spaces);
|
|
50
|
-
suite.testFunc(function inline_function() { });
|
|
51
|
-
suite.testFuncs(test1, test2);
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
exports.default = default_1;
|
|
55
|
-
function named_function_test_with_spaces(t) {
|
|
56
|
-
}
|
|
57
|
-
function test1(t) {
|
|
58
|
-
}
|
|
59
|
-
function test2(t) {
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImV4YW1wbGVUZXN0RmlsZS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsU0FBUyxZQUFZLEtBQUssQ0FBQztBQUUzQixtQkFBeUIsS0FBZ0I7SUFDeEMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUU7UUFFdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLEVBQUU7UUFDOUIsQ0FBQyxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUMsQ0FBQyxFQUFDLEVBQUU7WUFDN0IsTUFBTSxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDcEMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDdkIsQ0FBQyxDQUFDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUgsS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUU7UUFFdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsRUFBRTtZQUNoQyxNQUFNLE1BQU0sQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDOUIsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ1osTUFBTSxNQUFNLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztRQUVILEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQzNCLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNSLE1BQU0sTUFBTSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsRUFBRTtZQUM5QixDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWCxNQUFNLE1BQU0sQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDN0IsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLEVBQUMsQ0FBQyxFQUFDLEVBQUU7WUFDMUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUV6QyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWCxNQUFNLE9BQU8sQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLEVBQUMsQ0FBQyxFQUFDLEVBQUU7WUFDeEMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7WUFDZCxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7SUFFSCxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsRUFBRTtJQUN0QyxDQUFDLENBQUMsQ0FBQztJQUVILEtBQUssQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLEVBQUU7UUFDekMsS0FBSyxDQUFDLFFBQVEsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQ2hELEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxlQUFlLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDL0MsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQyxDQUFDLENBQUM7QUFDSixDQUFDO0FBL0RELDRCQStEQztBQUVELFNBQVMsK0JBQStCLENBQUMsQ0FBYTtBQUN0RCxDQUFDO0FBRUQsU0FBUyxLQUFLLENBQUMsQ0FBYTtBQUM1QixDQUFDO0FBRUQsU0FBUyxLQUFLLENBQUMsQ0FBYTtBQUM1QixDQUFDIiwiZmlsZSI6ImV4YW1wbGVUZXN0RmlsZS50ZXN0LmpzIiwic291cmNlUm9vdCI6Ii4uXFxzcmMifQ==
|