@gate-forge/pack-playwright 0.10.1 → 0.10.2
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/discovery/discover.d.ts +24 -0
- package/dist/discovery/discover.d.ts.map +1 -1
- package/dist/discovery/discover.js +77 -3
- package/dist/discovery/discover.js.map +1 -1
- package/dist/discovery/index.d.ts +1 -0
- package/dist/discovery/index.d.ts.map +1 -1
- package/dist/discovery/index.js +1 -0
- package/dist/discovery/index.js.map +1 -1
- package/dist/discovery/runner-config-paths.d.ts +39 -0
- package/dist/discovery/runner-config-paths.d.ts.map +1 -0
- package/dist/discovery/runner-config-paths.js +181 -0
- package/dist/discovery/runner-config-paths.js.map +1 -0
- package/dist/discovery/runner-file-scope.d.ts +33 -0
- package/dist/discovery/runner-file-scope.d.ts.map +1 -1
- package/dist/discovery/runner-file-scope.js +53 -0
- package/dist/discovery/runner-file-scope.js.map +1 -1
- package/dist/discovery/static-discovery.d.ts +53 -0
- package/dist/discovery/static-discovery.d.ts.map +1 -1
- package/dist/discovery/static-discovery.js +127 -0
- package/dist/discovery/static-discovery.js.map +1 -1
- package/dist/discovery/supervised-run.d.ts +51 -2
- package/dist/discovery/supervised-run.d.ts.map +1 -1
- package/dist/discovery/supervised-run.js +89 -7
- package/dist/discovery/supervised-run.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -3,6 +3,7 @@ import { repoRelative } from './pytest-adapter.js';
|
|
|
3
3
|
import type { PytestCollectionResult } from './pytest-adapter.js';
|
|
4
4
|
import { type NativeInstance } from './reconcile.js';
|
|
5
5
|
import { type RepoRelativeFileFilter, type StaticRegistrationWarning } from './static-discovery.js';
|
|
6
|
+
import { type RunnerFileVerdict } from './runner-file-scope.js';
|
|
6
7
|
/** Options for one discovery run. */
|
|
7
8
|
export interface DiscoverOptions {
|
|
8
9
|
/** Absolute repo root. */
|
|
@@ -67,6 +68,29 @@ export interface DiscoverResult {
|
|
|
67
68
|
* Each entry is a complete diagnostic line.
|
|
68
69
|
*/
|
|
69
70
|
configWarnings: string[];
|
|
71
|
+
/**
|
|
72
|
+
* What the runners' own configuration says about any repo-relative
|
|
73
|
+
* file — the same three-state answer this run used to decide the
|
|
74
|
+
* catalog. Consumers ask it about files the catalog no longer holds
|
|
75
|
+
* (a deleted spec, a changed helper), so the answer stays available
|
|
76
|
+
* without re-running discovery.
|
|
77
|
+
*/
|
|
78
|
+
fileVerdict: (file: string) => RunnerFileVerdict;
|
|
79
|
+
/**
|
|
80
|
+
* The repository's own test infrastructure, as the import graph proves
|
|
81
|
+
* it: files reachable from a CONFIGURED-runner catalog test file by
|
|
82
|
+
* relative import (transitively, bounded by the scan's traversal
|
|
83
|
+
* budget) — the helper/fixture modules the suite's own tests load —
|
|
84
|
+
* PLUS the files every resolved runner configuration NAMES by a
|
|
85
|
+
* relative path string (its reporter, `globalSetup`/`globalTeardown`, a
|
|
86
|
+
* project `storageState`, a `require.resolve('./…')`) and their own
|
|
87
|
+
* import closure. No test imports those, so a graph rooted at the
|
|
88
|
+
* catalog's test files can never reach them; both halves are read by
|
|
89
|
+
* the same parser and the same import resolution. Empty when a budget
|
|
90
|
+
* cut resolution short: an incomplete graph must attribute nothing,
|
|
91
|
+
* never guess.
|
|
92
|
+
*/
|
|
93
|
+
testInfrastructureFiles: string[];
|
|
70
94
|
/**
|
|
71
95
|
* Coarse per-step wall-clock timings (`check --timing`): static scan,
|
|
72
96
|
* native list, pytest collection, and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../../src/discovery/discover.ts"],"names":[],"mappings":"AA4BA,OAAO,EAGL,KAAK,KAAK,EACV,KAAK,eAAe,EAMpB,KAAK,eAAe,EAGpB,KAAK,WAAW,EAGjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAGL,YAAY,EACb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAIlE,OAAO,EAML,KAAK,cAAc,EAEpB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../../src/discovery/discover.ts"],"names":[],"mappings":"AA4BA,OAAO,EAGL,KAAK,KAAK,EACV,KAAK,eAAe,EAMpB,KAAK,eAAe,EAGpB,KAAK,WAAW,EAGjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAGL,YAAY,EACb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAIlE,OAAO,EAML,KAAK,cAAc,EAEpB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAIL,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAG/B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAOL,KAAK,iBAAiB,EACvB,MAAM,wBAAwB,CAAC;AAEhC,qCAAqC;AACrC,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,sCAAsC;IACtC,MAAM,EAAE,eAAe,CAAC;IACxB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CACjB,KAAK,EAAE,eAAe,EACtB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,EAAE,MAAM,OAAO,CAAC,sBAAsB,CAAC,KAC3C,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrC,wDAAwD;IACxD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC;AAED,uFAAuF;AACvF,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,WAAW,CAAC;IACrB,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,YAAY,EAAE,KAAK,EAAE,CAAC;IACtB,yEAAyE;IACzE,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/C;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,wEAAwE;IACxE,oBAAoB,EAAE,yBAAyB,EAAE,CAAC;IAClD;;;;;;OAMG;IACH,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB;;;;;;OAMG;IACH,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,iBAAiB,CAAC;IACjD;;;;;;;;;;;;;OAaG;IACH,uBAAuB,EAAE,MAAM,EAAE,CAAC;IAClC;;;;OAIG;IACH,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED,0EAA0E;AAC1E,MAAM,WAAW,gBAAgB;IAC/B,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,YAAY,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,eAAe,EAAE,MAAM,CAAC;IACxB,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAKtE;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAyJ3F;AA+nBD;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAIjE;AAwGD,OAAO,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -32,8 +32,9 @@ import { collectPytestSuite, pytestCollectArgv, repoRelative, } from './pytest-a
|
|
|
32
32
|
import { CypressRunnerAdapter } from './cypress-runner-adapter.js';
|
|
33
33
|
import { VitestRunnerAdapter } from './vitest-runner-adapter.js';
|
|
34
34
|
import { declaresNoNamedProject, fileDigest, findPlaywrightConfig, listNativePlaywrightTests, reconciliationKey, } from './reconcile.js';
|
|
35
|
-
import {
|
|
36
|
-
import {
|
|
35
|
+
import { runnerConfigPaths } from './runner-config-paths.js';
|
|
36
|
+
import { namedPathGraph, scanTestFiles, UNRESOLVED_TITLE_PLACEHOLDER, } from './static-discovery.js';
|
|
37
|
+
import { playwrightFileScopes, runnerFileVerdict, runnerForFile, scopeSelectsFile, vitestFileScopes, } from './runner-file-scope.js';
|
|
37
38
|
/**
|
|
38
39
|
* The diagnostic for a playwright config that declares no
|
|
39
40
|
* named project: test-gates join catalog rows to planned
|
|
@@ -204,6 +205,11 @@ export async function discoverTestCatalog(options) {
|
|
|
204
205
|
: {}),
|
|
205
206
|
registrationWarnings: scan.registrationWarnings,
|
|
206
207
|
configWarnings,
|
|
208
|
+
fileVerdict: (file) => runnerFileVerdict(scopes.configured, scopes.other, cwd, file),
|
|
209
|
+
testInfrastructureFiles: [
|
|
210
|
+
...importReachableFrom(scan, new Set(entries.filter((row) => row.runner === config.runner).map((row) => row.file))),
|
|
211
|
+
...namedPathGraph(cwd, runnerConfigPaths(cwd, config.runner)).files,
|
|
212
|
+
].sort(),
|
|
207
213
|
timings: {
|
|
208
214
|
scanMs,
|
|
209
215
|
nativeListMs,
|
|
@@ -212,6 +218,43 @@ export async function discoverTestCatalog(options) {
|
|
|
212
218
|
},
|
|
213
219
|
};
|
|
214
220
|
}
|
|
221
|
+
/**
|
|
222
|
+
* Every file the given roots reach by relative import, transitively,
|
|
223
|
+
* minus the roots themselves.
|
|
224
|
+
*
|
|
225
|
+
* FAIL-OPEN for attribution: when the scan's import traversal hit its
|
|
226
|
+
* budget the graph is incomplete, so the answer is the EMPTY set — a
|
|
227
|
+
* partial graph must attribute nothing rather than attribute most of a
|
|
228
|
+
* suite's helpers and guess at the rest.
|
|
229
|
+
*
|
|
230
|
+
* Args:
|
|
231
|
+
* scan: the static scan whose import edges are read.
|
|
232
|
+
* roots: the files to start from (the suite's own test files).
|
|
233
|
+
*
|
|
234
|
+
* Returns:
|
|
235
|
+
* Set<string>: the reachable files, roots excluded.
|
|
236
|
+
*/
|
|
237
|
+
function importReachableFrom(scan, roots) {
|
|
238
|
+
if (scan.budgetExceeded)
|
|
239
|
+
return new Set();
|
|
240
|
+
const edges = new Map();
|
|
241
|
+
for (const row of scan.importsByFile)
|
|
242
|
+
edges.set(row.file, row.imports);
|
|
243
|
+
const reached = new Set();
|
|
244
|
+
const queue = [...roots];
|
|
245
|
+
while (queue.length > 0) {
|
|
246
|
+
const file = queue.pop();
|
|
247
|
+
for (const target of edges.get(file) ?? []) {
|
|
248
|
+
if (reached.has(target))
|
|
249
|
+
continue;
|
|
250
|
+
reached.add(target);
|
|
251
|
+
queue.push(target);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
for (const root of roots)
|
|
255
|
+
reached.delete(root);
|
|
256
|
+
return reached;
|
|
257
|
+
}
|
|
215
258
|
/** Assembles catalog rows from the scan + native enumeration. */
|
|
216
259
|
class CatalogBuilder {
|
|
217
260
|
cwd;
|
|
@@ -227,6 +270,8 @@ class CatalogBuilder {
|
|
|
227
270
|
unclaimed = new Set();
|
|
228
271
|
/** Memoized file → owning runner (`''` ⇒ claimed by no runner). */
|
|
229
272
|
owners = new Map();
|
|
273
|
+
/** Memoized file → what the runners' own configuration says about it. */
|
|
274
|
+
verdicts = new Map();
|
|
230
275
|
/**
|
|
231
276
|
* The runner a static-only row carries when no other runner's own
|
|
232
277
|
* selection claims its file: the CONFIGURED runner, whose enumeration
|
|
@@ -264,6 +309,24 @@ class CatalogBuilder {
|
|
|
264
309
|
this.owners.set(file, owner);
|
|
265
310
|
return owner;
|
|
266
311
|
}
|
|
312
|
+
/**
|
|
313
|
+
* What the runners' own configuration says about this file, beyond
|
|
314
|
+
* which runner owns it: a file no runner collects AND that the
|
|
315
|
+
* configured runner's configuration disclaims (an explicit
|
|
316
|
+
* `testIgnore`, or a path outside every authoritative project's
|
|
317
|
+
* `testDir`) is not a member of any suite, so it never becomes a
|
|
318
|
+
* catalog row and never makes the inventory incomplete. A file nothing
|
|
319
|
+
* claimed and nothing disclaimed is still a gap — a possibly misplaced
|
|
320
|
+
* test stays visible.
|
|
321
|
+
*/
|
|
322
|
+
verdictOf(file) {
|
|
323
|
+
const known = this.verdicts.get(file);
|
|
324
|
+
if (known !== undefined)
|
|
325
|
+
return known;
|
|
326
|
+
const verdict = runnerFileVerdict(this.scopes.configured, this.scopes.other, this.cwd, file);
|
|
327
|
+
this.verdicts.set(file, verdict);
|
|
328
|
+
return verdict;
|
|
329
|
+
}
|
|
267
330
|
/** Records one file's attribution for the runner summary line. */
|
|
268
331
|
recordAttribution(owner, file) {
|
|
269
332
|
if (owner === '') {
|
|
@@ -405,18 +468,29 @@ class CatalogBuilder {
|
|
|
405
468
|
rows.push(this.playwrightRow(instance, staticEntry, gap, template));
|
|
406
469
|
}
|
|
407
470
|
}
|
|
471
|
+
// A file the runners' own configuration disclaims is not a member of
|
|
472
|
+
// any suite: the owner excluded it (or it sits outside every
|
|
473
|
+
// project's testDir), so it becomes no row at all — neither a case
|
|
474
|
+
// nor an unresolved gap. It stays visible in the runner summary.
|
|
475
|
+
const isMember = (file) => this.verdictOf(file) !== 'disclaimed';
|
|
408
476
|
for (const [key, staticEntry] of this.staticByKey) {
|
|
409
477
|
if (matchedStaticKeys.has(key) || templateConsumed.has(key))
|
|
410
478
|
continue;
|
|
479
|
+
if (!isMember(staticEntry.file))
|
|
480
|
+
continue;
|
|
411
481
|
rows.push(this.staticOnlyRow(staticEntry));
|
|
412
482
|
}
|
|
413
483
|
// Remaining unresolved static gaps become visible rows (never
|
|
414
484
|
// omitted): unprovable shapes the runner did NOT enumerate (they
|
|
415
485
|
// cannot execute) stay typed unresolved entries and block the
|
|
416
|
-
// inventory honestly
|
|
486
|
+
// inventory honestly — unless the runner's own configuration
|
|
487
|
+
// disclaims their file, in which case they are not this suite's
|
|
488
|
+
// cases at all.
|
|
417
489
|
for (const [key, gap] of [...gapsByKey.entries()].sort((a, b) => (a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0))) {
|
|
418
490
|
if (enumeratedKeys.has(key))
|
|
419
491
|
continue;
|
|
492
|
+
if (!isMember(gap.file))
|
|
493
|
+
continue;
|
|
420
494
|
const row = this.unresolvedRow(gap);
|
|
421
495
|
const extras = gapExtras.get(key);
|
|
422
496
|
if (extras !== undefined && row.unresolvedReason !== undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discover.js","sourceRoot":"","sources":["../../src/discovery/discover.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"discover.js","sourceRoot":"","sources":["../../src/discovery/discover.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ export * from './reconcile.js';
|
|
|
11
11
|
export * from './prepare-barrier.js';
|
|
12
12
|
export { localPlaywrightCliCandidates } from '../runner-resolution.js';
|
|
13
13
|
export { CONFIG_SEARCH_PRUNED_DIRS, PLAYWRIGHT_CONFIG_NAMES } from './config-locations.js';
|
|
14
|
+
export * from './runner-config-paths.js';
|
|
14
15
|
export * from './pytest-adapter.js';
|
|
15
16
|
export * from './discover.js';
|
|
16
17
|
export * from './adapters.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/discovery/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/discovery/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC"}
|
package/dist/discovery/index.js
CHANGED
|
@@ -11,6 +11,7 @@ export * from './reconcile.js';
|
|
|
11
11
|
export * from './prepare-barrier.js';
|
|
12
12
|
export { localPlaywrightCliCandidates } from '../runner-resolution.js';
|
|
13
13
|
export { CONFIG_SEARCH_PRUNED_DIRS, PLAYWRIGHT_CONFIG_NAMES } from './config-locations.js';
|
|
14
|
+
export * from './runner-config-paths.js';
|
|
14
15
|
export * from './pytest-adapter.js';
|
|
15
16
|
export * from './discover.js';
|
|
16
17
|
export * from './adapters.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/discovery/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/discovery/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether one token names an existing regular FILE inside the
|
|
3
|
+
* repository.
|
|
4
|
+
*
|
|
5
|
+
* A DIRECTORY is not a file, and the difference is load-bearing: every
|
|
6
|
+
* accepted path joins the input snapshot, which refuses a non-file
|
|
7
|
+
* input. Accepting the `e2e` in `npm ci --prefix e2e` (a real directory
|
|
8
|
+
* in every repository) therefore turned the whole run into
|
|
9
|
+
* `unsupported input snapshot: input snapshot rejects non-file input
|
|
10
|
+
* 'e2e'` — exit 2 on a repository that was green before. So the check
|
|
11
|
+
* stats the path and accepts a regular file only, exactly as the name
|
|
12
|
+
* of this function promises.
|
|
13
|
+
*
|
|
14
|
+
* Args:
|
|
15
|
+
* cwd: absolute repo root.
|
|
16
|
+
* token: one argv token or shell word.
|
|
17
|
+
*
|
|
18
|
+
* Returns:
|
|
19
|
+
* string | null: the normalized repo-relative posix path, or null when
|
|
20
|
+
* the token is a flag, a URL, an absolute path outside the repository,
|
|
21
|
+
* or names nothing that is an existing regular file inside it (a
|
|
22
|
+
* `${service:id:port}` placeholder, a binary on PATH, a directory).
|
|
23
|
+
*/
|
|
24
|
+
export declare function existingRepoFile(cwd: string, token: string): string | null;
|
|
25
|
+
/**
|
|
26
|
+
* Every runner configuration the CONFIGURED runner can be pointed at:
|
|
27
|
+
* the resolved one first, then every sibling config name at the
|
|
28
|
+
* repository root, then every config a `package.json` script names.
|
|
29
|
+
*
|
|
30
|
+
* Args:
|
|
31
|
+
* cwd: absolute repo root.
|
|
32
|
+
* runner: the configured runner name (`config.runner`).
|
|
33
|
+
*
|
|
34
|
+
* Returns:
|
|
35
|
+
* string[]: normalized repo-relative posix paths, sorted, always
|
|
36
|
+
* including the resolved configuration when one exists.
|
|
37
|
+
*/
|
|
38
|
+
export declare function runnerConfigPaths(cwd: string, runner: string): string[];
|
|
39
|
+
//# sourceMappingURL=runner-config-paths.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner-config-paths.d.ts","sourceRoot":"","sources":["../../src/discovery/runner-config-paths.ts"],"names":[],"mappings":"AAkDA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAY1E;AAgDD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAuBvE"}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Every runner configuration the CONFIGURED runner can be pointed at.
|
|
3
|
+
*
|
|
4
|
+
* The resolved configuration is only ONE of them. A repository
|
|
5
|
+
* legitimately keeps several — `playwright.config.ts` for the suite the
|
|
6
|
+
* gate reads, plus `dev-stack` / `headed` / `demo` wrappers — and a
|
|
7
|
+
* repository's `package.json` scripts name them. Every one of them
|
|
8
|
+
* declares how tests run, so every one of them is attributable, and
|
|
9
|
+
* what a configuration NAMES (its reporter, global setup and teardown)
|
|
10
|
+
* is test infrastructure exactly like what the suite's own tests import.
|
|
11
|
+
*
|
|
12
|
+
* This module is the ONE enumeration: discovery roots the
|
|
13
|
+
* test-infrastructure import graph here, and the CLI's scope inputs read
|
|
14
|
+
* the same list, so the two can never disagree about which
|
|
15
|
+
* configurations exist.
|
|
16
|
+
*/
|
|
17
|
+
import { existsSync, readFileSync, readdirSync, statSync } from 'node:fs';
|
|
18
|
+
import { isAbsolute, join, relative, resolve } from 'node:path';
|
|
19
|
+
import { findPlaywrightConfig } from './reconcile.js';
|
|
20
|
+
/**
|
|
21
|
+
* A Playwright configuration at the repository root, including the
|
|
22
|
+
* suffixed WRAPPERS a repository legitimately keeps beside the suite
|
|
23
|
+
* config (`playwright.config.dev-stack.ts`, `.headed-run.ts`, …).
|
|
24
|
+
* Playwright resolves only the first of them, but every one of them
|
|
25
|
+
* declares how tests run, so every one of them is attributable.
|
|
26
|
+
*/
|
|
27
|
+
const PLAYWRIGHT_CONFIG_PATTERN = /^playwright\.config(?:\.[^.]+)*\.[cm]?[jt]sx?$/;
|
|
28
|
+
/** Candidate config file names per non-Playwright runner (probe order). */
|
|
29
|
+
const RUNNER_CONFIG_CANDIDATES = {
|
|
30
|
+
vitest: [
|
|
31
|
+
'vitest.config.ts',
|
|
32
|
+
'vitest.config.mts',
|
|
33
|
+
'vitest.config.js',
|
|
34
|
+
'vitest.config.mjs',
|
|
35
|
+
'vite.config.ts',
|
|
36
|
+
'vite.config.mts',
|
|
37
|
+
'vite.config.js',
|
|
38
|
+
],
|
|
39
|
+
cypress: [
|
|
40
|
+
'cypress.config.ts',
|
|
41
|
+
'cypress.config.mts',
|
|
42
|
+
'cypress.config.js',
|
|
43
|
+
'cypress.config.cjs',
|
|
44
|
+
'cypress.config.mjs',
|
|
45
|
+
],
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Whether one token names an existing regular FILE inside the
|
|
49
|
+
* repository.
|
|
50
|
+
*
|
|
51
|
+
* A DIRECTORY is not a file, and the difference is load-bearing: every
|
|
52
|
+
* accepted path joins the input snapshot, which refuses a non-file
|
|
53
|
+
* input. Accepting the `e2e` in `npm ci --prefix e2e` (a real directory
|
|
54
|
+
* in every repository) therefore turned the whole run into
|
|
55
|
+
* `unsupported input snapshot: input snapshot rejects non-file input
|
|
56
|
+
* 'e2e'` — exit 2 on a repository that was green before. So the check
|
|
57
|
+
* stats the path and accepts a regular file only, exactly as the name
|
|
58
|
+
* of this function promises.
|
|
59
|
+
*
|
|
60
|
+
* Args:
|
|
61
|
+
* cwd: absolute repo root.
|
|
62
|
+
* token: one argv token or shell word.
|
|
63
|
+
*
|
|
64
|
+
* Returns:
|
|
65
|
+
* string | null: the normalized repo-relative posix path, or null when
|
|
66
|
+
* the token is a flag, a URL, an absolute path outside the repository,
|
|
67
|
+
* or names nothing that is an existing regular file inside it (a
|
|
68
|
+
* `${service:id:port}` placeholder, a binary on PATH, a directory).
|
|
69
|
+
*/
|
|
70
|
+
export function existingRepoFile(cwd, token) {
|
|
71
|
+
if (token.length === 0 || token.startsWith('-'))
|
|
72
|
+
return null;
|
|
73
|
+
if (token.includes('://') || token.includes('${'))
|
|
74
|
+
return null;
|
|
75
|
+
const absolute = isAbsolute(token) ? token : resolve(cwd, token);
|
|
76
|
+
const repoRelative = relative(cwd, absolute).split('\\').join('/');
|
|
77
|
+
if (repoRelative.length === 0 || repoRelative.startsWith('../'))
|
|
78
|
+
return null;
|
|
79
|
+
try {
|
|
80
|
+
if (!statSync(absolute).isFile())
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
catch {
|
|
84
|
+
return null;
|
|
85
|
+
}
|
|
86
|
+
return repoRelative;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* The config paths a repository's `package.json` scripts name.
|
|
90
|
+
*
|
|
91
|
+
* Only the three spellings npm/playwright actually accept are read
|
|
92
|
+
* (`--config=<path>`, `--config <path>`, `-c <path>`), and only tokens
|
|
93
|
+
* that resolve to an existing file inside the repository survive — a
|
|
94
|
+
* script naming a path that does not exist contributes nothing.
|
|
95
|
+
*
|
|
96
|
+
* Args:
|
|
97
|
+
* cwd: absolute repo root.
|
|
98
|
+
*
|
|
99
|
+
* Returns:
|
|
100
|
+
* string[]: normalized repo-relative config paths, sorted.
|
|
101
|
+
*/
|
|
102
|
+
function scriptNamedConfigs(cwd) {
|
|
103
|
+
const manifest = join(cwd, 'package.json');
|
|
104
|
+
if (!existsSync(manifest))
|
|
105
|
+
return [];
|
|
106
|
+
let scripts;
|
|
107
|
+
try {
|
|
108
|
+
const parsed = JSON.parse(readFileSync(manifest, 'utf8'));
|
|
109
|
+
if (typeof parsed !== 'object' || parsed === null)
|
|
110
|
+
return [];
|
|
111
|
+
scripts = 'scripts' in parsed ? parsed.scripts : undefined;
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
// An unreadable manifest is not this function's finding: the gate's
|
|
115
|
+
// own manifest handling reports it.
|
|
116
|
+
return [];
|
|
117
|
+
}
|
|
118
|
+
if (typeof scripts !== 'object' || scripts === null)
|
|
119
|
+
return [];
|
|
120
|
+
const found = new Set();
|
|
121
|
+
for (const command of Object.values(scripts)) {
|
|
122
|
+
if (typeof command !== 'string')
|
|
123
|
+
continue;
|
|
124
|
+
const tokens = command.split(/\s+/).filter((token) => token.length > 0);
|
|
125
|
+
for (const [index, token] of tokens.entries()) {
|
|
126
|
+
const inline = token.startsWith('--config=') ? token.slice('--config='.length) : null;
|
|
127
|
+
const separate = token === '--config' || token === '-c' ? (tokens[index + 1] ?? null) : null;
|
|
128
|
+
for (const candidate of [inline, separate]) {
|
|
129
|
+
if (candidate === null)
|
|
130
|
+
continue;
|
|
131
|
+
const resolved = existingRepoFile(cwd, candidate);
|
|
132
|
+
if (resolved !== null)
|
|
133
|
+
found.add(resolved);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return [...found].sort();
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Every runner configuration the CONFIGURED runner can be pointed at:
|
|
141
|
+
* the resolved one first, then every sibling config name at the
|
|
142
|
+
* repository root, then every config a `package.json` script names.
|
|
143
|
+
*
|
|
144
|
+
* Args:
|
|
145
|
+
* cwd: absolute repo root.
|
|
146
|
+
* runner: the configured runner name (`config.runner`).
|
|
147
|
+
*
|
|
148
|
+
* Returns:
|
|
149
|
+
* string[]: normalized repo-relative posix paths, sorted, always
|
|
150
|
+
* including the resolved configuration when one exists.
|
|
151
|
+
*/
|
|
152
|
+
export function runnerConfigPaths(cwd, runner) {
|
|
153
|
+
const found = new Set();
|
|
154
|
+
if (runner === 'playwright') {
|
|
155
|
+
const resolved = findPlaywrightConfig(cwd);
|
|
156
|
+
if (resolved !== null)
|
|
157
|
+
found.add(resolved);
|
|
158
|
+
let entries = [];
|
|
159
|
+
try {
|
|
160
|
+
entries = readdirSync(cwd);
|
|
161
|
+
}
|
|
162
|
+
catch {
|
|
163
|
+
entries = [];
|
|
164
|
+
}
|
|
165
|
+
for (const name of entries) {
|
|
166
|
+
if (PLAYWRIGHT_CONFIG_PATTERN.test(name) && existsSync(join(cwd, name))) {
|
|
167
|
+
found.add(name);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
else {
|
|
172
|
+
for (const name of RUNNER_CONFIG_CANDIDATES[runner] ?? []) {
|
|
173
|
+
if (existsSync(join(cwd, name)))
|
|
174
|
+
found.add(name);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
for (const name of scriptNamedConfigs(cwd))
|
|
178
|
+
found.add(name);
|
|
179
|
+
return [...found].sort();
|
|
180
|
+
}
|
|
181
|
+
//# sourceMappingURL=runner-config-paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner-config-paths.js","sourceRoot":"","sources":["../../src/discovery/runner-config-paths.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,6 +53,12 @@ export interface RunnerFileScope {
|
|
|
53
53
|
*/
|
|
54
54
|
note?: string;
|
|
55
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* What a runner's own configuration says about one file: it collects it
|
|
58
|
+
* (`claimed`), it explicitly does not (`disclaimed`), or nothing declared
|
|
59
|
+
* it either way (`unclaimed`).
|
|
60
|
+
*/
|
|
61
|
+
export type RunnerFileVerdict = 'claimed' | 'disclaimed' | 'unclaimed';
|
|
56
62
|
/**
|
|
57
63
|
* Whether a runner's own configuration collects this file.
|
|
58
64
|
*
|
|
@@ -66,6 +72,33 @@ export interface RunnerFileScope {
|
|
|
66
72
|
* non-authoritative scope always returns true (fail open).
|
|
67
73
|
*/
|
|
68
74
|
export declare function scopeSelectsFile(scope: RunnerFileScope, cwd: string, repoRelativeFile: string): boolean;
|
|
75
|
+
/**
|
|
76
|
+
* What a runner's OWN configuration says about one file, in three
|
|
77
|
+
* states instead of two.
|
|
78
|
+
*
|
|
79
|
+
* - `claimed`: some runner's selection collects it.
|
|
80
|
+
* - `disclaimed`: no runner collects it AND the configured runner's own
|
|
81
|
+
* configuration says so — an explicit `testIgnore` match, or a path
|
|
82
|
+
* outside every authoritative project's `testDir`. The owner declared
|
|
83
|
+
* this file out of the suite, so it is not a gap in the suite's
|
|
84
|
+
* inventory.
|
|
85
|
+
* - `unclaimed`: no runner collects it and nothing declared that, so it
|
|
86
|
+
* may be a misplaced test — a real gap that stays visible.
|
|
87
|
+
*
|
|
88
|
+
* Every scope is FAIL-OPEN as everywhere else in this module: a
|
|
89
|
+
* non-authoritative scope claims every file and disclaims nothing, so a
|
|
90
|
+
* selection that cannot be read faithfully never turns into silence.
|
|
91
|
+
*
|
|
92
|
+
* Args:
|
|
93
|
+
* configuredScopes: the CONFIGURED runner's own selection.
|
|
94
|
+
* otherScopes: every other runner's selection.
|
|
95
|
+
* cwd: absolute repo root.
|
|
96
|
+
* file: repo-relative posix path.
|
|
97
|
+
*
|
|
98
|
+
* Returns:
|
|
99
|
+
* RunnerFileVerdict: the three-state answer.
|
|
100
|
+
*/
|
|
101
|
+
export declare function runnerFileVerdict(configuredScopes: readonly RunnerFileScope[], otherScopes: readonly RunnerFileScope[], cwd: string, file: string): RunnerFileVerdict;
|
|
69
102
|
/**
|
|
70
103
|
* Whether ANY of the runner's scopes collects the file — the union over
|
|
71
104
|
* projects, which is how a runner collects a file at all.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-file-scope.d.ts","sourceRoot":"","sources":["../../src/discovery/runner-file-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAOH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAElF,qDAAqD;AACrD,MAAM,WAAW,eAAe;IAC9B,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,8DAA8D;IAC9D,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,2EAA2E;IAC3E,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;
|
|
1
|
+
{"version":3,"file":"runner-file-scope.d.ts","sourceRoot":"","sources":["../../src/discovery/runner-file-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAOH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAElF,qDAAqD;AACrD,MAAM,WAAW,eAAe;IAC9B,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,8DAA8D;IAC9D,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,2EAA2E;IAC3E,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,YAAY,GAAG,WAAW,CAAC;AAuRvE;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,eAAe,EACtB,GAAG,EAAE,MAAM,EACX,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAST;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,iBAAiB,CAC/B,gBAAgB,EAAE,SAAS,eAAe,EAAE,EAC5C,WAAW,EAAE,SAAS,eAAe,EAAE,EACvC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACX,iBAAiB,CAoBnB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,SAAS,eAAe,EAAE,EAClC,GAAG,EAAE,MAAM,EACX,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAGT;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,SAAS,oBAAoB,EAAE,GACxC,eAAe,EAAE,CA2BnB;AAgUD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,EAAE,CAO/D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAC3B,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,SAAS,eAAe,EAAE,EAC5C,WAAW,EAAE,SAAS,eAAe,EAAE,EACvC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAOf"}
|