@nsxbet/playwright-orchestrator 0.5.3 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/fixture.d.ts +43 -0
- package/dist/fixture.d.ts.map +1 -0
- package/dist/fixture.js +98 -0
- package/dist/fixture.js.map +1 -0
- package/dist/reporter.d.ts.map +1 -1
- package/dist/reporter.js +11 -3
- package/dist/reporter.js.map +1 -1
- package/package.json +6 -1
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Playwright Orchestrator Fixture
|
|
3
|
+
*
|
|
4
|
+
* A Playwright fixture that filters tests based on a JSON shard file.
|
|
5
|
+
* This provides actual test skipping (unlike the reporter which only adds metadata).
|
|
6
|
+
*
|
|
7
|
+
* Usage in your test setup file (e.g., tests/setup.ts):
|
|
8
|
+
* ```typescript
|
|
9
|
+
* import { test } from '@playwright/test';
|
|
10
|
+
* import { setupOrchestratorFilter } from '@nsxbet/playwright-orchestrator/fixture';
|
|
11
|
+
*
|
|
12
|
+
* setupOrchestratorFilter(test);
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* Environment variables:
|
|
16
|
+
* - ORCHESTRATOR_SHARD_FILE: Path to JSON file with array of test IDs
|
|
17
|
+
* - ORCHESTRATOR_DEBUG: Set to "1" to enable debug logging
|
|
18
|
+
*
|
|
19
|
+
* @module @nsxbet/playwright-orchestrator/fixture
|
|
20
|
+
*/
|
|
21
|
+
import type { TestType } from '@playwright/test';
|
|
22
|
+
/**
|
|
23
|
+
* Sets up the orchestrator filter as a beforeEach hook.
|
|
24
|
+
* This will skip tests that are not in the current shard.
|
|
25
|
+
*
|
|
26
|
+
* @param test - The test object from @playwright/test
|
|
27
|
+
*/
|
|
28
|
+
export declare function setupOrchestratorFilter<T extends object, W extends object>(test: TestType<T, W>): void;
|
|
29
|
+
/**
|
|
30
|
+
* Check if a test should run based on the shard file.
|
|
31
|
+
* Can be called manually in individual tests.
|
|
32
|
+
*
|
|
33
|
+
* @param testInfo - The testInfo object from Playwright
|
|
34
|
+
* @returns true if the test should run, false if it should be skipped
|
|
35
|
+
*/
|
|
36
|
+
export declare function shouldRunTest(testInfo: {
|
|
37
|
+
file: string;
|
|
38
|
+
titlePath: string[];
|
|
39
|
+
project: {
|
|
40
|
+
name: string;
|
|
41
|
+
};
|
|
42
|
+
}): boolean;
|
|
43
|
+
//# sourceMappingURL=fixture.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixture.d.ts","sourceRoot":"","sources":["../src/fixture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAmDjD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EACxE,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GACnB,IAAI,CAoBN;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3B,GAAG,OAAO,CAWV"}
|
package/dist/fixture.js
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Playwright Orchestrator Fixture
|
|
3
|
+
*
|
|
4
|
+
* A Playwright fixture that filters tests based on a JSON shard file.
|
|
5
|
+
* This provides actual test skipping (unlike the reporter which only adds metadata).
|
|
6
|
+
*
|
|
7
|
+
* Usage in your test setup file (e.g., tests/setup.ts):
|
|
8
|
+
* ```typescript
|
|
9
|
+
* import { test } from '@playwright/test';
|
|
10
|
+
* import { setupOrchestratorFilter } from '@nsxbet/playwright-orchestrator/fixture';
|
|
11
|
+
*
|
|
12
|
+
* setupOrchestratorFilter(test);
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* Environment variables:
|
|
16
|
+
* - ORCHESTRATOR_SHARD_FILE: Path to JSON file with array of test IDs
|
|
17
|
+
* - ORCHESTRATOR_DEBUG: Set to "1" to enable debug logging
|
|
18
|
+
*
|
|
19
|
+
* @module @nsxbet/playwright-orchestrator/fixture
|
|
20
|
+
*/
|
|
21
|
+
import * as fs from 'node:fs';
|
|
22
|
+
import * as path from 'node:path';
|
|
23
|
+
// Cache the shard file to avoid re-reading on every test
|
|
24
|
+
let cachedAllowedTestIds = null;
|
|
25
|
+
let cacheInitialized = false;
|
|
26
|
+
function loadShardFile() {
|
|
27
|
+
if (cacheInitialized)
|
|
28
|
+
return cachedAllowedTestIds;
|
|
29
|
+
cacheInitialized = true;
|
|
30
|
+
const shardFile = process.env.ORCHESTRATOR_SHARD_FILE;
|
|
31
|
+
if (!shardFile || !fs.existsSync(shardFile)) {
|
|
32
|
+
if (process.env.ORCHESTRATOR_DEBUG === '1') {
|
|
33
|
+
console.log('[Orchestrator] No shard file, running all tests');
|
|
34
|
+
}
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
try {
|
|
38
|
+
const testIds = JSON.parse(fs.readFileSync(shardFile, 'utf-8'));
|
|
39
|
+
cachedAllowedTestIds = new Set(testIds);
|
|
40
|
+
console.log(`[Orchestrator] Loaded ${cachedAllowedTestIds.size} tests for this shard`);
|
|
41
|
+
return cachedAllowedTestIds;
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
console.error('[Orchestrator] Failed to load shard file:', error);
|
|
45
|
+
throw error;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
function buildTestId(filePath, titlePath, projectName) {
|
|
49
|
+
const file = path.relative(process.cwd(), filePath).replace(/\\/g, '/');
|
|
50
|
+
const fileName = path.basename(filePath);
|
|
51
|
+
// Filter titlePath to exclude project name, filename, and empty strings
|
|
52
|
+
const filteredTitles = titlePath.filter((title) => {
|
|
53
|
+
if (!title || title === '')
|
|
54
|
+
return false;
|
|
55
|
+
if (title === projectName)
|
|
56
|
+
return false;
|
|
57
|
+
if (title === fileName)
|
|
58
|
+
return false;
|
|
59
|
+
return true;
|
|
60
|
+
});
|
|
61
|
+
return [file, ...filteredTitles].join('::');
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Sets up the orchestrator filter as a beforeEach hook.
|
|
65
|
+
* This will skip tests that are not in the current shard.
|
|
66
|
+
*
|
|
67
|
+
* @param test - The test object from @playwright/test
|
|
68
|
+
*/
|
|
69
|
+
export function setupOrchestratorFilter(test) {
|
|
70
|
+
// biome-ignore lint/correctness/noEmptyPattern: Playwright requires empty destructuring for fixtures
|
|
71
|
+
test.beforeEach(async ({}, testInfo) => {
|
|
72
|
+
const allowedTestIds = loadShardFile();
|
|
73
|
+
if (allowedTestIds) {
|
|
74
|
+
const testId = buildTestId(testInfo.file, testInfo.titlePath, testInfo.project.name);
|
|
75
|
+
if (!allowedTestIds.has(testId)) {
|
|
76
|
+
if (process.env.ORCHESTRATOR_DEBUG === '1') {
|
|
77
|
+
console.log(`[Orchestrator Skip] ${testId}`);
|
|
78
|
+
}
|
|
79
|
+
test.skip(true, 'Not in shard');
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Check if a test should run based on the shard file.
|
|
86
|
+
* Can be called manually in individual tests.
|
|
87
|
+
*
|
|
88
|
+
* @param testInfo - The testInfo object from Playwright
|
|
89
|
+
* @returns true if the test should run, false if it should be skipped
|
|
90
|
+
*/
|
|
91
|
+
export function shouldRunTest(testInfo) {
|
|
92
|
+
const allowedTestIds = loadShardFile();
|
|
93
|
+
if (!allowedTestIds)
|
|
94
|
+
return true;
|
|
95
|
+
const testId = buildTestId(testInfo.file, testInfo.titlePath, testInfo.project.name);
|
|
96
|
+
return allowedTestIds.has(testId);
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=fixture.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixture.js","sourceRoot":"","sources":["../src/fixture.ts"],"names":[],"mappings":"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"}
|
package/dist/reporter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../src/reporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH,OAAO,KAAK,EACV,UAAU,EACV,QAAQ,EACR,KAAK,EACL,QAAQ,EACT,MAAM,2BAA2B,CAAC;AAEnC,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,QAAQ;IAC3D,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,KAAK,CAA0C;IAEvD,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK;IAsB1C,WAAW,CAAC,IAAI,EAAE,QAAQ;IAa1B;;;;;;;;;OASG;IACH,OAAO,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../src/reporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH,OAAO,KAAK,EACV,UAAU,EACV,QAAQ,EACR,KAAK,EACL,QAAQ,EACT,MAAM,2BAA2B,CAAC;AAEnC,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,QAAQ;IAC3D,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,KAAK,CAA0C;IAEvD,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK;IAsB1C,WAAW,CAAC,IAAI,EAAE,QAAQ;IAa1B;;;;;;;;;OASG;IACH,OAAO,CAAC,WAAW;CAsBpB"}
|
package/dist/reporter.js
CHANGED
|
@@ -72,13 +72,21 @@ export default class OrchestratorReporter {
|
|
|
72
72
|
.relative(process.cwd(), test.location.file)
|
|
73
73
|
.replace(/\\/g, '/');
|
|
74
74
|
const fileName = path.basename(test.location.file);
|
|
75
|
-
// Filter titlePath to exclude project name and
|
|
75
|
+
// Filter titlePath to exclude project name, filename, and empty strings
|
|
76
76
|
// titlePath typically starts with [projectName, fileName, ...describes, testTitle]
|
|
77
77
|
const titlePath = test.titlePath();
|
|
78
|
+
const projectName = test.parent?.project()?.name;
|
|
78
79
|
const filteredTitles = titlePath.filter((title) => {
|
|
79
|
-
// Skip
|
|
80
|
+
// Skip empty strings
|
|
81
|
+
if (!title || title === '')
|
|
82
|
+
return false;
|
|
83
|
+
// Skip if it's the project name
|
|
84
|
+
if (title === projectName)
|
|
85
|
+
return false;
|
|
80
86
|
// Skip if it matches the filename
|
|
81
|
-
|
|
87
|
+
if (title === fileName)
|
|
88
|
+
return false;
|
|
89
|
+
return true;
|
|
82
90
|
});
|
|
83
91
|
return [file, ...filteredTitles].join('::');
|
|
84
92
|
}
|
package/dist/reporter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reporter.js","sourceRoot":"","sources":["../src/reporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAQlC,MAAM,CAAC,OAAO,OAAO,oBAAoB;IAC/B,cAAc,GAAuB,IAAI,CAAC;IAC1C,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,GAAG,CAAC;IAEvD,OAAO,CAAC,OAAmB,EAAE,MAAa;QACxC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;QAEtD,IAAI,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5C,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;YACjE,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;YAChE,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;YACvC,OAAO,CAAC,GAAG,CACT,kBAAkB,IAAI,CAAC,cAAc,CAAC,IAAI,uBAAuB,CAClE,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;YAClE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,WAAW,CAAC,IAAc;QACxB,IAAI,CAAC,IAAI,CAAC,cAAc;YAAE,OAAO;QAEjC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEtC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC,CAAC;YACrE,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,UAAU,MAAM,EAAE,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACK,WAAW,CAAC,IAAc;QAChC,MAAM,IAAI,GAAG,IAAI;aACd,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;aAC3C,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnD,
|
|
1
|
+
{"version":3,"file":"reporter.js","sourceRoot":"","sources":["../src/reporter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nsxbet/playwright-orchestrator",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "Intelligent Playwright test distribution across CI shards using historical timing data",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -15,6 +15,11 @@
|
|
|
15
15
|
"types": "./dist/reporter.d.ts",
|
|
16
16
|
"import": "./dist/reporter.js",
|
|
17
17
|
"require": "./dist/reporter.js"
|
|
18
|
+
},
|
|
19
|
+
"./fixture": {
|
|
20
|
+
"types": "./dist/fixture.d.ts",
|
|
21
|
+
"import": "./dist/fixture.js",
|
|
22
|
+
"require": "./dist/fixture.js"
|
|
18
23
|
}
|
|
19
24
|
},
|
|
20
25
|
"bin": {
|