testplane 8.19.7 → 8.19.9
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/build/package.json +9 -5
- package/build/src/browser/browser.d.ts +48 -29
- package/build/src/browser/browser.js +29 -23
- package/build/src/browser/browser.js.map +1 -1
- package/build/src/browser/client-bridge/error.d.ts +3 -0
- package/build/src/browser/client-bridge/error.js +3 -0
- package/build/src/browser/client-bridge/error.js.map +1 -1
- package/build/src/browser/commands/assert-view/errors/assert-view-error.d.ts +3 -0
- package/build/src/browser/commands/assert-view/errors/assert-view-error.js +3 -0
- package/build/src/browser/commands/assert-view/errors/assert-view-error.js.map +1 -1
- package/build/src/browser/commands/assert-view/errors/image-diff-error.d.ts +3 -0
- package/build/src/browser/commands/assert-view/errors/image-diff-error.js +3 -0
- package/build/src/browser/commands/assert-view/errors/image-diff-error.js.map +1 -1
- package/build/src/browser/commands/assert-view/errors/no-ref-image-error.d.ts +3 -0
- package/build/src/browser/commands/assert-view/errors/no-ref-image-error.js +3 -0
- package/build/src/browser/commands/assert-view/errors/no-ref-image-error.js.map +1 -1
- package/build/src/browser/commands/runStep.d.ts +3 -2
- package/build/src/browser/commands/runStep.js +9 -4
- package/build/src/browser/commands/runStep.js.map +1 -1
- package/build/src/browser/core-error.d.ts +3 -0
- package/build/src/browser/core-error.js +3 -0
- package/build/src/browser/core-error.js.map +1 -1
- package/build/src/browser/existing-browser.d.ts +116 -10
- package/build/src/browser/existing-browser.js +1 -1
- package/build/src/browser/existing-browser.js.map +1 -1
- package/build/src/browser/history/callstack.js +9 -10
- package/build/src/browser/history/callstack.js.map +1 -1
- package/build/src/browser/history/index.js +8 -7
- package/build/src/browser/history/index.js.map +1 -1
- package/build/src/browser/history/utils.d.ts +0 -13
- package/build/src/browser/history/utils.js +2 -14
- package/build/src/browser/history/utils.js.map +1 -1
- package/build/src/browser/new-browser.d.ts +21 -29
- package/build/src/browser/new-browser.js +38 -29
- package/build/src/browser/new-browser.js.map +1 -1
- package/build/src/browser/screen-shooter/viewport/coord-validator/errors/height-viewport-error.d.ts +1 -0
- package/build/src/browser/screen-shooter/viewport/coord-validator/errors/height-viewport-error.js +1 -0
- package/build/src/browser/screen-shooter/viewport/coord-validator/errors/height-viewport-error.js.map +1 -1
- package/build/src/browser/screen-shooter/viewport/coord-validator/errors/offset-viewport-error.d.ts +1 -0
- package/build/src/browser/screen-shooter/viewport/coord-validator/errors/offset-viewport-error.js +1 -0
- package/build/src/browser/screen-shooter/viewport/coord-validator/errors/offset-viewport-error.js.map +1 -1
- package/build/src/browser/stacktrace/constants.d.ts +1 -0
- package/build/src/browser/stacktrace/constants.js +5 -1
- package/build/src/browser/stacktrace/constants.js.map +1 -1
- package/build/src/browser/stacktrace/utils.d.ts +1 -1
- package/build/src/browser/stacktrace/utils.js +35 -12
- package/build/src/browser/stacktrace/utils.js.map +1 -1
- package/build/src/browser-pool/basic-pool.d.ts +16 -13
- package/build/src/browser-pool/basic-pool.js +21 -15
- package/build/src/browser-pool/basic-pool.js.map +1 -1
- package/build/src/browser-pool/caching-pool.d.ts +22 -20
- package/build/src/browser-pool/caching-pool.js +20 -23
- package/build/src/browser-pool/caching-pool.js.map +1 -1
- package/build/src/browser-pool/cancelled-error.d.ts +3 -0
- package/build/src/browser-pool/cancelled-error.js +3 -0
- package/build/src/browser-pool/cancelled-error.js.map +1 -1
- package/build/src/browser-pool/index.d.ts +2 -2
- package/build/src/browser-pool/index.js +8 -8
- package/build/src/browser-pool/index.js.map +1 -1
- package/build/src/browser-pool/limited-pool.d.ts +24 -29
- package/build/src/browser-pool/limited-pool.js +33 -36
- package/build/src/browser-pool/limited-pool.js.map +1 -1
- package/build/src/browser-pool/limited-use-set.d.ts +21 -12
- package/build/src/browser-pool/limited-use-set.js +12 -17
- package/build/src/browser-pool/limited-use-set.js.map +1 -1
- package/build/src/browser-pool/per-browser-limited-pool.d.ts +10 -9
- package/build/src/browser-pool/per-browser-limited-pool.js +14 -10
- package/build/src/browser-pool/per-browser-limited-pool.js.map +1 -1
- package/build/src/browser-pool/types.d.ts +11 -0
- package/build/src/browser-pool/types.js +3 -0
- package/build/src/browser-pool/types.js.map +1 -0
- package/build/src/browser-pool/utils.d.ts +1 -1
- package/build/src/browser-pool/utils.js +4 -1
- package/build/src/browser-pool/utils.js.map +1 -1
- package/build/src/cli/index.d.ts +4 -1
- package/build/src/cli/index.js +34 -28
- package/build/src/cli/index.js.map +1 -1
- package/build/src/cli/info.d.ts +2 -1
- package/build/src/cli/info.js +4 -1
- package/build/src/cli/info.js.map +1 -1
- package/build/src/config/types.d.ts +16 -1
- package/build/src/errors/abort-on-reconnect-error.d.ts +3 -0
- package/build/src/errors/abort-on-reconnect-error.js +3 -0
- package/build/src/errors/abort-on-reconnect-error.js.map +1 -1
- package/build/src/errors/testplane-internal-error.d.ts +3 -0
- package/build/src/errors/testplane-internal-error.js +3 -0
- package/build/src/errors/testplane-internal-error.js.map +1 -1
- package/build/src/events/index.d.ts +1 -1
- package/build/src/events/index.js.map +1 -1
- package/build/src/index.d.ts +7 -2
- package/build/src/runner/browser-env/vite/browser-modules/mocha/parser.d.ts +0 -1
- package/build/src/runner/browser-env/vite/browser-modules/mocha/parser.js.map +1 -1
- package/build/src/runner/browser-env/vite/browser-modules/tsconfig.tsbuildinfo +1 -1
- package/build/src/runner/browser-env/vite/browser-modules/types.d.ts +1 -2
- package/build/src/runner/runner.d.ts +2 -1
- package/build/src/runner/runner.js.map +1 -1
- package/build/src/test-reader/build-instructions.d.ts +27 -30
- package/build/src/test-reader/build-instructions.js +21 -18
- package/build/src/test-reader/build-instructions.js.map +1 -1
- package/build/src/test-reader/index.d.ts +12 -8
- package/build/src/test-reader/index.js +53 -48
- package/build/src/test-reader/index.js.map +1 -1
- package/build/src/test-reader/sets-builder/index.d.ts +14 -10
- package/build/src/test-reader/sets-builder/index.js +110 -91
- package/build/src/test-reader/sets-builder/index.js.map +1 -1
- package/build/src/test-reader/sets-builder/set-collection.d.ts +7 -8
- package/build/src/test-reader/sets-builder/set-collection.js +40 -40
- package/build/src/test-reader/sets-builder/set-collection.js.map +1 -1
- package/build/src/test-reader/sets-builder/test-set.d.ts +19 -14
- package/build/src/test-reader/sets-builder/test-set.js +88 -59
- package/build/src/test-reader/sets-builder/test-set.js.map +1 -1
- package/build/src/test-reader/test-parser-api.d.ts +1 -1
- package/build/src/test-reader/test-parser.d.ts +17 -15
- package/build/src/test-reader/test-parser.js +56 -57
- package/build/src/test-reader/test-parser.js.map +1 -1
- package/build/src/test-reader/tree-builder.d.ts +13 -9
- package/build/src/test-reader/tree-builder.js +3 -3
- package/build/src/test-reader/tree-builder.js.map +1 -1
- package/build/src/testplane.d.ts +3 -3
- package/build/src/testplane.js +2 -2
- package/build/src/testplane.js.map +1 -1
- package/build/src/types/index.d.ts +27 -16
- package/build/src/types/index.js +15 -0
- package/build/src/types/index.js.map +1 -1
- package/build/src/validators.d.ts +1 -1
- package/build/src/validators.js +14 -8
- package/build/src/validators.js.map +1 -1
- package/build/src/worker/index.d.ts +1 -1
- package/build/src/worker/runner/browser-agent.d.ts +22 -18
- package/build/src/worker/runner/browser-agent.js +6 -3
- package/build/src/worker/runner/browser-agent.js.map +1 -1
- package/build/src/worker/runner/browser-pool.d.ts +1 -2
- package/build/src/worker/runner/caching-test-parser.d.ts +20 -21
- package/build/src/worker/runner/caching-test-parser.js +13 -11
- package/build/src/worker/runner/caching-test-parser.js.map +1 -1
- package/build/src/worker/runner/index.d.ts +1 -1
- package/build/src/worker/runner/index.js +2 -2
- package/build/src/worker/runner/index.js.map +1 -1
- package/build/src/worker/runner/sequence-test-parser.d.ts +14 -13
- package/build/src/worker/runner/sequence-test-parser.js +16 -10
- package/build/src/worker/runner/sequence-test-parser.js.map +1 -1
- package/build/src/worker/runner/simple-test-parser.d.ts +13 -10
- package/build/src/worker/runner/simple-test-parser.js +16 -10
- package/build/src/worker/runner/simple-test-parser.js.map +1 -1
- package/build/src/worker/runner/test-runner/index.js +2 -2
- package/build/src/worker/runner/test-runner/index.js.map +1 -1
- package/build/src/worker/runner/test-runner/types.d.ts +1 -1
- package/build/src/worker/testplane-facade.d.ts +1 -12
- package/build/src/worker/testplane-facade.js +25 -21
- package/build/src/worker/testplane-facade.js.map +1 -1
- package/build/src/worker/testplane.d.ts +2 -1
- package/build/src/worker/testplane.js +2 -2
- package/build/src/worker/testplane.js.map +1 -1
- package/package.json +9 -5
- package/typings/clear-require.d.ts +3 -0
- package/typings/escape-string-regexp.d.ts +3 -0
- package/typings/global.d.ts +9 -6
- package/build/src/browser-pool/pool.d.ts +0 -13
- package/build/src/browser-pool/pool.js +0 -18
- package/build/src/browser-pool/pool.js.map +0 -1
- package/typings/api.d.ts +0 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/test-reader/sets-builder/index.
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/test-reader/sets-builder/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
declare class SetCollection {
|
|
3
|
-
static create(sets: any): import("./set-collection");
|
|
4
|
-
constructor(sets: any);
|
|
5
|
-
groupByFile(): _.Dictionary<any[]>;
|
|
6
|
-
getAllFiles(): any[];
|
|
7
|
-
groupByBrowser(): _.Dictionary<any[]>;
|
|
1
|
+
import { TestSet } from "./test-set";
|
|
2
|
+
export declare class SetCollection {
|
|
8
3
|
#private;
|
|
4
|
+
static create(sets: Record<string, TestSet>): SetCollection;
|
|
5
|
+
constructor(sets: Record<string, TestSet>);
|
|
6
|
+
groupByFile(): Record<string, unknown>;
|
|
7
|
+
getAllFiles(): string[];
|
|
8
|
+
groupByBrowser(): Record<string, string[]>;
|
|
9
9
|
}
|
|
10
|
-
import _ = require("lodash");
|
|
@@ -10,44 +10,44 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
10
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
11
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
12
|
};
|
|
13
|
-
var
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
var _SetCollection_instances, _SetCollection_sets, _SetCollection_getBrowsersForFile, _SetCollection_getBrowsers, _SetCollection_getFilesForBrowser, _SetCollection_getFromSets;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.SetCollection = void 0;
|
|
19
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
20
|
+
class SetCollection {
|
|
21
|
+
static create(sets) {
|
|
22
|
+
return new SetCollection(sets);
|
|
23
|
+
}
|
|
24
|
+
constructor(sets) {
|
|
25
|
+
_SetCollection_instances.add(this);
|
|
26
|
+
_SetCollection_sets.set(this, void 0);
|
|
27
|
+
__classPrivateFieldSet(this, _SetCollection_sets, sets, "f");
|
|
28
|
+
}
|
|
29
|
+
groupByFile() {
|
|
30
|
+
const files = this.getAllFiles();
|
|
31
|
+
const browsers = files.map(file => __classPrivateFieldGet(this, _SetCollection_instances, "m", _SetCollection_getBrowsersForFile).call(this, file));
|
|
32
|
+
return lodash_1.default.zipObject(files, browsers);
|
|
33
|
+
}
|
|
34
|
+
getAllFiles() {
|
|
35
|
+
return lodash_1.default.uniq(__classPrivateFieldGet(this, _SetCollection_instances, "m", _SetCollection_getFromSets).call(this, set => set.getFiles()));
|
|
36
|
+
}
|
|
37
|
+
groupByBrowser() {
|
|
38
|
+
const browsers = __classPrivateFieldGet(this, _SetCollection_instances, "m", _SetCollection_getBrowsers).call(this);
|
|
39
|
+
const files = browsers.map(browser => __classPrivateFieldGet(this, _SetCollection_instances, "m", _SetCollection_getFilesForBrowser).call(this, browser));
|
|
40
|
+
return lodash_1.default.zipObject(browsers, files);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
exports.SetCollection = SetCollection;
|
|
44
|
+
_SetCollection_sets = new WeakMap(), _SetCollection_instances = new WeakSet(), _SetCollection_getBrowsersForFile = function _SetCollection_getBrowsersForFile(path) {
|
|
45
|
+
return __classPrivateFieldGet(this, _SetCollection_instances, "m", _SetCollection_getFromSets).call(this, set => set.getBrowsersForFile(path));
|
|
46
|
+
}, _SetCollection_getBrowsers = function _SetCollection_getBrowsers() {
|
|
47
|
+
return __classPrivateFieldGet(this, _SetCollection_instances, "m", _SetCollection_getFromSets).call(this, set => set.getBrowsers());
|
|
48
|
+
}, _SetCollection_getFilesForBrowser = function _SetCollection_getFilesForBrowser(browser) {
|
|
49
|
+
return __classPrivateFieldGet(this, _SetCollection_instances, "m", _SetCollection_getFromSets).call(this, set => set.getFilesForBrowser(browser));
|
|
50
|
+
}, _SetCollection_getFromSets = function _SetCollection_getFromSets(cb) {
|
|
51
|
+
return (0, lodash_1.default)(__classPrivateFieldGet(this, _SetCollection_sets, "f")).map(cb).flatten().uniq().value();
|
|
52
|
+
};
|
|
53
53
|
//# sourceMappingURL=set-collection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set-collection.js","sourceRoot":"","sources":["../../../../src/test-reader/sets-builder/set-collection.
|
|
1
|
+
{"version":3,"file":"set-collection.js","sourceRoot":"","sources":["../../../../src/test-reader/sets-builder/set-collection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,oDAAuB;AAGvB,MAAa,aAAa;IAGtB,MAAM,CAAC,MAAM,CAAC,IAA6B;QACvC,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,YAAY,IAA6B;;QANzC,sCAA+B;QAO3B,uBAAA,IAAI,uBAAS,IAAI,MAAA,CAAC;IACtB,CAAC;IAED,WAAW;QACP,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAA,IAAI,mEAAoB,MAAxB,IAAI,EAAqB,IAAI,CAAC,CAAC,CAAC;QAEnE,OAAO,gBAAC,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,WAAW;QACP,OAAO,gBAAC,CAAC,IAAI,CAAC,uBAAA,IAAI,4DAAa,MAAjB,IAAI,EAAc,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IAMD,cAAc;QACV,MAAM,QAAQ,GAAG,uBAAA,IAAI,4DAAa,MAAjB,IAAI,CAAe,CAAC;QACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,uBAAA,IAAI,mEAAoB,MAAxB,IAAI,EAAqB,OAAO,CAAC,CAAC,CAAC;QAEzE,OAAO,gBAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;CAaJ;AA5CD,sCA4CC;8JAtBuB,IAAY;IAC5B,OAAO,uBAAA,IAAI,4DAAa,MAAjB,IAAI,EAAc,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;AAClE,CAAC;IAUG,OAAO,uBAAA,IAAI,4DAAa,MAAjB,IAAI,EAAc,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;AACvD,CAAC,iFAEmB,OAAe;IAC/B,OAAO,uBAAA,IAAI,4DAAa,MAAjB,IAAI,EAAc,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;AACrE,CAAC,mEAEe,EAAwB;IACpC,OAAO,IAAA,gBAAC,EAAC,uBAAA,IAAI,2BAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,EAAO,CAAC;AAC/D,CAAC"}
|
|
@@ -1,16 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
getBrowsers(): any;
|
|
10
|
-
getFilesForBrowser(browser: any): any;
|
|
11
|
-
getBrowsersForFile(file: any): any;
|
|
12
|
-
useFiles(files: any): void;
|
|
13
|
-
useBrowsers(browsers: any): void;
|
|
1
|
+
import * as globExtra from "glob-extra";
|
|
2
|
+
import { SetsConfigParsed } from "../../config/types";
|
|
3
|
+
export type TestSetData = {
|
|
4
|
+
files: Array<string>;
|
|
5
|
+
ignoreFiles?: Array<string>;
|
|
6
|
+
browsers?: Array<string>;
|
|
7
|
+
};
|
|
8
|
+
export declare class TestSet {
|
|
14
9
|
#private;
|
|
10
|
+
static create(set: SetsConfigParsed): TestSet;
|
|
11
|
+
constructor(set: SetsConfigParsed);
|
|
12
|
+
expandFiles(expandOpts: globExtra.ExpandOpts, globOpts?: globExtra.GlobOpts): Promise<TestSetData>;
|
|
13
|
+
transformDirsToMasks(): Promise<string[]>;
|
|
14
|
+
resolveFiles(projectRoot: string): void;
|
|
15
|
+
getFiles(): string[];
|
|
16
|
+
getBrowsers(): string[];
|
|
17
|
+
getFilesForBrowser(browser: string): string[];
|
|
18
|
+
getBrowsersForFile(file: string): string[];
|
|
19
|
+
useFiles(files: string[]): void;
|
|
20
|
+
useBrowsers(browsers: string[]): void;
|
|
15
21
|
}
|
|
16
|
-
import Promise = require("bluebird");
|
|
@@ -1,4 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
3
26
|
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
4
27
|
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
@@ -10,65 +33,71 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
33
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
34
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
35
|
};
|
|
13
|
-
var
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
resolveFiles(projectRoot) {
|
|
48
|
-
__classPrivateFieldGet(this, _TestSet_set, "f").files = __classPrivateFieldGet(this, _TestSet_set, "f").files.map(file => path.resolve(projectRoot, file));
|
|
49
|
-
}
|
|
50
|
-
getFiles() {
|
|
51
|
-
return __classPrivateFieldGet(this, _TestSet_set, "f").files;
|
|
52
|
-
}
|
|
53
|
-
getBrowsers() {
|
|
54
|
-
return __classPrivateFieldGet(this, _TestSet_set, "f").browsers;
|
|
55
|
-
}
|
|
56
|
-
getFilesForBrowser(browser) {
|
|
57
|
-
return _.includes(__classPrivateFieldGet(this, _TestSet_set, "f").browsers, browser) ? __classPrivateFieldGet(this, _TestSet_set, "f").files : [];
|
|
58
|
-
}
|
|
59
|
-
getBrowsersForFile(file) {
|
|
60
|
-
return _.includes(__classPrivateFieldGet(this, _TestSet_set, "f").files, file) ? __classPrivateFieldGet(this, _TestSet_set, "f").browsers : [];
|
|
61
|
-
}
|
|
62
|
-
useFiles(files) {
|
|
63
|
-
if (_.isEmpty(files)) {
|
|
64
|
-
return;
|
|
36
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
|
+
};
|
|
39
|
+
var _TestSet_set;
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.TestSet = void 0;
|
|
42
|
+
const globExtra = __importStar(require("glob-extra"));
|
|
43
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
44
|
+
const micromatch_1 = __importDefault(require("micromatch"));
|
|
45
|
+
const path_1 = __importDefault(require("path"));
|
|
46
|
+
const promises_1 = __importDefault(require("fs/promises"));
|
|
47
|
+
class TestSet {
|
|
48
|
+
static create(set) {
|
|
49
|
+
return new TestSet(set);
|
|
50
|
+
}
|
|
51
|
+
constructor(set) {
|
|
52
|
+
_TestSet_set.set(this, void 0);
|
|
53
|
+
__classPrivateFieldSet(this, _TestSet_set, lodash_1.default.clone(set), "f");
|
|
54
|
+
}
|
|
55
|
+
async expandFiles(expandOpts, globOpts = {}) {
|
|
56
|
+
const { files, ignoreFiles = [] } = __classPrivateFieldGet(this, _TestSet_set, "f");
|
|
57
|
+
globOpts = lodash_1.default.clone(globOpts);
|
|
58
|
+
globOpts.ignore = []
|
|
59
|
+
.concat(globOpts.ignore || [], ignoreFiles)
|
|
60
|
+
.map(p => path_1.default.resolve(expandOpts.root, p));
|
|
61
|
+
return globExtra
|
|
62
|
+
.expandPaths(files, expandOpts, globOpts)
|
|
63
|
+
.then(expandedFiles => (__classPrivateFieldSet(this, _TestSet_set, lodash_1.default.extend(__classPrivateFieldGet(this, _TestSet_set, "f"), { files: expandedFiles }), "f")));
|
|
64
|
+
}
|
|
65
|
+
async transformDirsToMasks() {
|
|
66
|
+
return Promise.all(__classPrivateFieldGet(this, _TestSet_set, "f").files.map(file => {
|
|
67
|
+
if (globExtra.isMask(file)) {
|
|
68
|
+
return file;
|
|
65
69
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
+
return promises_1.default
|
|
71
|
+
.stat(file)
|
|
72
|
+
.then(stat => (stat.isDirectory() ? path_1.default.join(file, "**") : file))
|
|
73
|
+
.catch(() => Promise.reject(new Error(`Cannot read such file or directory: '${file}'`)));
|
|
74
|
+
})).then(files => (__classPrivateFieldGet(this, _TestSet_set, "f").files = files));
|
|
75
|
+
}
|
|
76
|
+
resolveFiles(projectRoot) {
|
|
77
|
+
__classPrivateFieldGet(this, _TestSet_set, "f").files = __classPrivateFieldGet(this, _TestSet_set, "f").files.map(file => path_1.default.resolve(projectRoot, file));
|
|
78
|
+
}
|
|
79
|
+
getFiles() {
|
|
80
|
+
return __classPrivateFieldGet(this, _TestSet_set, "f").files;
|
|
81
|
+
}
|
|
82
|
+
getBrowsers() {
|
|
83
|
+
return __classPrivateFieldGet(this, _TestSet_set, "f").browsers;
|
|
84
|
+
}
|
|
85
|
+
getFilesForBrowser(browser) {
|
|
86
|
+
return lodash_1.default.includes(__classPrivateFieldGet(this, _TestSet_set, "f").browsers, browser) ? __classPrivateFieldGet(this, _TestSet_set, "f").files : [];
|
|
87
|
+
}
|
|
88
|
+
getBrowsersForFile(file) {
|
|
89
|
+
return lodash_1.default.includes(__classPrivateFieldGet(this, _TestSet_set, "f").files, file) ? __classPrivateFieldGet(this, _TestSet_set, "f").browsers : [];
|
|
90
|
+
}
|
|
91
|
+
useFiles(files) {
|
|
92
|
+
if (lodash_1.default.isEmpty(files)) {
|
|
93
|
+
return;
|
|
70
94
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
95
|
+
__classPrivateFieldGet(this, _TestSet_set, "f").files = lodash_1.default.isEmpty(__classPrivateFieldGet(this, _TestSet_set, "f").files) ? files : (0, micromatch_1.default)(files, __classPrivateFieldGet(this, _TestSet_set, "f").files);
|
|
96
|
+
}
|
|
97
|
+
useBrowsers(browsers) {
|
|
98
|
+
__classPrivateFieldGet(this, _TestSet_set, "f").browsers = lodash_1.default.isEmpty(browsers) ? __classPrivateFieldGet(this, _TestSet_set, "f").browsers : lodash_1.default.intersection(__classPrivateFieldGet(this, _TestSet_set, "f").browsers, browsers);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
exports.TestSet = TestSet;
|
|
102
|
+
_TestSet_set = new WeakMap();
|
|
74
103
|
//# sourceMappingURL=test-set.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-set.js","sourceRoot":"","sources":["../../../../src/test-reader/sets-builder/test-set.
|
|
1
|
+
{"version":3,"file":"test-set.js","sourceRoot":"","sources":["../../../../src/test-reader/sets-builder/test-set.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { EventEmitter } from "events";
|
|
3
3
|
import { GlobalHelper } from "../types";
|
|
4
|
-
type Context = GlobalHelper & Record<string, Record<string, unknown>>;
|
|
4
|
+
export type Context = GlobalHelper & Record<string, Record<string, unknown>>;
|
|
5
5
|
type Methods = Record<string, (...args: unknown[]) => unknown>;
|
|
6
6
|
export declare class TestParserAPI {
|
|
7
7
|
#private;
|
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { EventEmitter } from "events";
|
|
3
|
+
import { Test } from "./test-object";
|
|
4
|
+
import { Config } from "../config";
|
|
5
|
+
import { BrowserConfig } from "../config/browser-config";
|
|
6
|
+
export type TestParserOpts = {
|
|
7
|
+
testRunEnv?: "nodejs" | "browser";
|
|
8
|
+
};
|
|
9
|
+
export type TestParserParseOpts = {
|
|
10
|
+
browserId: string;
|
|
11
|
+
grep?: RegExp;
|
|
12
|
+
config: BrowserConfig;
|
|
13
|
+
};
|
|
14
|
+
export declare class TestParser extends EventEmitter {
|
|
15
15
|
#private;
|
|
16
|
+
constructor(opts?: TestParserOpts);
|
|
17
|
+
loadFiles(files: string[], config: Config): Promise<void>;
|
|
18
|
+
parse(files: string[], { browserId, config, grep }: TestParserParseOpts): Test[];
|
|
16
19
|
}
|
|
17
|
-
import { EventEmitter } from "events";
|
|
@@ -10,32 +10,33 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
10
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
11
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
12
|
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
13
16
|
var _TestParser_instances, _TestParser_opts, _TestParser_failedTests, _TestParser_buildInstructions, _TestParser_applyInstructionsEvents, _TestParser_passthroughFileEvents, _TestParser_clearRequireCache, _TestParser_validateUniqTitles;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
const
|
|
30
|
-
const
|
|
31
|
-
const
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
* @param {"nodejs" | "browser" | undefined} opts.testRunEnv - environment to parse tests for
|
|
38
|
-
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.TestParser = void 0;
|
|
19
|
+
const events_1 = require("events");
|
|
20
|
+
const build_instructions_1 = require("./build-instructions");
|
|
21
|
+
const skip_controller_1 = require("./controllers/skip-controller");
|
|
22
|
+
const only_controller_1 = require("./controllers/only-controller");
|
|
23
|
+
const also_controller_1 = require("./controllers/also-controller");
|
|
24
|
+
const config_controller_1 = require("./controllers/config-controller");
|
|
25
|
+
const browser_version_controller_1 = require("./controllers/browser-version-controller");
|
|
26
|
+
const tree_builder_1 = require("./tree-builder");
|
|
27
|
+
const mocha_reader_1 = require("./mocha-reader");
|
|
28
|
+
const events_2 = require("../events");
|
|
29
|
+
const test_parser_api_1 = require("./test-parser-api");
|
|
30
|
+
const test_transformer_1 = require("./test-transformer");
|
|
31
|
+
const events_3 = require("../events");
|
|
32
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
33
|
+
const clear_require_1 = __importDefault(require("clear-require"));
|
|
34
|
+
const path_1 = __importDefault(require("path"));
|
|
35
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
36
|
+
const logger_1 = __importDefault(require("../utils/logger"));
|
|
37
|
+
const crypto_1 = require("../utils/crypto");
|
|
38
|
+
const getFailedTestId = (test) => (0, crypto_1.getShortMD5)(`${test.fullTitle}${test.browserId}${test.browserVersion}`);
|
|
39
|
+
class TestParser extends events_1.EventEmitter {
|
|
39
40
|
constructor(opts = {}) {
|
|
40
41
|
super();
|
|
41
42
|
_TestParser_instances.add(this);
|
|
@@ -44,57 +45,57 @@ class TestParser extends EventEmitter {
|
|
|
44
45
|
_TestParser_buildInstructions.set(this, void 0);
|
|
45
46
|
__classPrivateFieldSet(this, _TestParser_opts, opts, "f");
|
|
46
47
|
__classPrivateFieldSet(this, _TestParser_failedTests, new Set(), "f");
|
|
47
|
-
__classPrivateFieldSet(this, _TestParser_buildInstructions, new InstructionsList(), "f");
|
|
48
|
+
__classPrivateFieldSet(this, _TestParser_buildInstructions, new build_instructions_1.InstructionsList(), "f");
|
|
48
49
|
}
|
|
49
50
|
async loadFiles(files, config) {
|
|
50
|
-
const eventBus = new EventEmitter();
|
|
51
|
+
const eventBus = new events_1.EventEmitter();
|
|
51
52
|
const { system: { ctx, mochaOpts }, } = config;
|
|
52
53
|
const toolGlobals = {
|
|
53
|
-
browser:
|
|
54
|
-
config: ConfigController.create(eventBus),
|
|
55
|
-
ctx:
|
|
56
|
-
only: OnlyController.create(eventBus),
|
|
57
|
-
skip: SkipController.create(eventBus),
|
|
58
|
-
also: AlsoController.create(eventBus),
|
|
54
|
+
browser: (0, browser_version_controller_1.mkProvider)(config.getBrowserIds(), eventBus),
|
|
55
|
+
config: config_controller_1.ConfigController.create(eventBus),
|
|
56
|
+
ctx: lodash_1.default.clone(ctx),
|
|
57
|
+
only: only_controller_1.OnlyController.create(eventBus),
|
|
58
|
+
skip: skip_controller_1.SkipController.create(eventBus),
|
|
59
|
+
also: also_controller_1.AlsoController.create(eventBus),
|
|
59
60
|
};
|
|
60
61
|
global.testplane = toolGlobals;
|
|
61
62
|
global.hermione = toolGlobals;
|
|
62
63
|
__classPrivateFieldGet(this, _TestParser_buildInstructions, "f")
|
|
63
|
-
.push(Instructions.extendWithBrowserId)
|
|
64
|
-
.push(Instructions.extendWithBrowserVersion)
|
|
65
|
-
.push(Instructions.extendWithTimeout)
|
|
66
|
-
.push(Instructions.disableInPassiveBrowser)
|
|
67
|
-
.push(Instructions.buildGlobalSkipInstruction(config));
|
|
64
|
+
.push(build_instructions_1.Instructions.extendWithBrowserId)
|
|
65
|
+
.push(build_instructions_1.Instructions.extendWithBrowserVersion)
|
|
66
|
+
.push(build_instructions_1.Instructions.extendWithTimeout)
|
|
67
|
+
.push(build_instructions_1.Instructions.disableInPassiveBrowser)
|
|
68
|
+
.push(build_instructions_1.Instructions.buildGlobalSkipInstruction(config));
|
|
68
69
|
__classPrivateFieldGet(this, _TestParser_instances, "m", _TestParser_applyInstructionsEvents).call(this, eventBus);
|
|
69
70
|
__classPrivateFieldGet(this, _TestParser_instances, "m", _TestParser_passthroughFileEvents).call(this, eventBus, toolGlobals);
|
|
70
71
|
__classPrivateFieldGet(this, _TestParser_instances, "m", _TestParser_clearRequireCache).call(this, files);
|
|
71
|
-
const revertTransformHook = setupTransformHook({ removeNonJsImports: __classPrivateFieldGet(this, _TestParser_opts, "f").testRunEnv === "browser" });
|
|
72
|
+
const revertTransformHook = (0, test_transformer_1.setupTransformHook)({ removeNonJsImports: __classPrivateFieldGet(this, _TestParser_opts, "f").testRunEnv === "browser" });
|
|
72
73
|
const rand = Math.random();
|
|
73
|
-
const esmDecorator = f => f + `?rand=${rand}`;
|
|
74
|
-
await readFiles(files, { esmDecorator, config: mochaOpts, eventBus });
|
|
74
|
+
const esmDecorator = (f) => f + `?rand=${rand}`;
|
|
75
|
+
await (0, mocha_reader_1.readFiles)(files, { esmDecorator, config: mochaOpts, eventBus });
|
|
75
76
|
if (config.lastFailed.only) {
|
|
76
77
|
try {
|
|
77
78
|
__classPrivateFieldSet(this, _TestParser_failedTests, new Set(), "f");
|
|
78
|
-
const inputPaths =
|
|
79
|
+
const inputPaths = lodash_1.default.isArray(config.lastFailed.input)
|
|
79
80
|
? config.lastFailed.input
|
|
80
81
|
: config.lastFailed.input.split(",").map(v => v.trim());
|
|
81
82
|
for (const inputPath of inputPaths) {
|
|
82
|
-
for (const test of await
|
|
83
|
+
for (const test of await fs_extra_1.default.readJSON(inputPath)) {
|
|
83
84
|
__classPrivateFieldGet(this, _TestParser_failedTests, "f").add(getFailedTestId(test));
|
|
84
85
|
}
|
|
85
86
|
}
|
|
86
87
|
}
|
|
87
88
|
catch {
|
|
88
|
-
|
|
89
|
+
logger_1.default.warn(`Could not read failed tests data at ${config.lastFailed.input}. Running all tests instead`);
|
|
89
90
|
}
|
|
90
91
|
}
|
|
91
92
|
revertTransformHook();
|
|
92
93
|
}
|
|
93
94
|
parse(files, { browserId, config, grep }) {
|
|
94
|
-
const treeBuilder = new TreeBuilder();
|
|
95
|
+
const treeBuilder = new tree_builder_1.TreeBuilder();
|
|
95
96
|
__classPrivateFieldGet(this, _TestParser_buildInstructions, "f").exec(files, { treeBuilder, browserId, config });
|
|
96
97
|
if (grep) {
|
|
97
|
-
treeBuilder.addTestFilter(test => grep.test(test.fullTitle()));
|
|
98
|
+
treeBuilder.addTestFilter((test) => grep.test(test.fullTitle()));
|
|
98
99
|
}
|
|
99
100
|
if (config.lastFailed && config.lastFailed.only && __classPrivateFieldGet(this, _TestParser_failedTests, "f").size) {
|
|
100
101
|
treeBuilder.addTestFilter(test => {
|
|
@@ -111,12 +112,13 @@ class TestParser extends EventEmitter {
|
|
|
111
112
|
return tests;
|
|
112
113
|
}
|
|
113
114
|
}
|
|
115
|
+
exports.TestParser = TestParser;
|
|
114
116
|
_TestParser_opts = new WeakMap(), _TestParser_failedTests = new WeakMap(), _TestParser_buildInstructions = new WeakMap(), _TestParser_instances = new WeakSet(), _TestParser_applyInstructionsEvents = function _TestParser_applyInstructionsEvents(eventBus) {
|
|
115
117
|
let currentFile;
|
|
116
118
|
eventBus
|
|
117
|
-
.on(MasterEvents.BEFORE_FILE_READ, ({ file }) => (currentFile = file))
|
|
118
|
-
.on(MasterEvents.AFTER_FILE_READ, () => (currentFile = undefined))
|
|
119
|
-
.on(TestReaderEvents.NEW_BUILD_INSTRUCTION, instruction => __classPrivateFieldGet(this, _TestParser_buildInstructions, "f").push(instruction, currentFile));
|
|
119
|
+
.on(events_3.MasterEvents.BEFORE_FILE_READ, ({ file }) => (currentFile = file))
|
|
120
|
+
.on(events_3.MasterEvents.AFTER_FILE_READ, () => (currentFile = undefined))
|
|
121
|
+
.on(events_2.TestReaderEvents.NEW_BUILD_INSTRUCTION, instruction => __classPrivateFieldGet(this, _TestParser_buildInstructions, "f").push(instruction, currentFile));
|
|
120
122
|
}, _TestParser_passthroughFileEvents = function _TestParser_passthroughFileEvents(eventBus, testplane) {
|
|
121
123
|
const passthroughEvent_ = (event, customOpts = {}) => {
|
|
122
124
|
eventBus.on(event, data => this.emit(event, {
|
|
@@ -126,19 +128,19 @@ _TestParser_opts = new WeakMap(), _TestParser_failedTests = new WeakMap(), _Test
|
|
|
126
128
|
...customOpts,
|
|
127
129
|
}));
|
|
128
130
|
};
|
|
129
|
-
passthroughEvent_(MasterEvents.BEFORE_FILE_READ, { testParser: TestParserAPI.create(testplane, eventBus) });
|
|
130
|
-
passthroughEvent_(MasterEvents.AFTER_FILE_READ);
|
|
131
|
+
passthroughEvent_(events_3.MasterEvents.BEFORE_FILE_READ, { testParser: test_parser_api_1.TestParserAPI.create(testplane, eventBus) });
|
|
132
|
+
passthroughEvent_(events_3.MasterEvents.AFTER_FILE_READ);
|
|
131
133
|
}, _TestParser_clearRequireCache = function _TestParser_clearRequireCache(files) {
|
|
132
134
|
files.forEach(filename => {
|
|
133
|
-
if (
|
|
134
|
-
|
|
135
|
+
if (path_1.default.extname(filename) !== ".mjs") {
|
|
136
|
+
(0, clear_require_1.default)(path_1.default.resolve(filename));
|
|
135
137
|
}
|
|
136
138
|
});
|
|
137
139
|
}, _TestParser_validateUniqTitles = function _TestParser_validateUniqTitles(tests) {
|
|
138
140
|
const titles = {};
|
|
139
141
|
tests.forEach(test => {
|
|
140
142
|
const fullTitle = test.fullTitle();
|
|
141
|
-
const relatePath =
|
|
143
|
+
const relatePath = path_1.default.relative(process.cwd(), test.file);
|
|
142
144
|
if (!titles[fullTitle]) {
|
|
143
145
|
titles[fullTitle] = relatePath;
|
|
144
146
|
return;
|
|
@@ -152,7 +154,4 @@ _TestParser_opts = new WeakMap(), _TestParser_failedTests = new WeakMap(), _Test
|
|
|
152
154
|
}
|
|
153
155
|
});
|
|
154
156
|
};
|
|
155
|
-
module.exports = {
|
|
156
|
-
TestParser,
|
|
157
|
-
};
|
|
158
157
|
//# sourceMappingURL=test-parser.js.map
|