@overkill-dev/run 0.0.21 → 0.0.23
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/package.json +2 -2
- package/packages/run/command-line.entry-point.d.ts +2 -2
- package/packages/run/command-line.entry-point.d.ts.map +1 -1
- package/packages/run/command-line.entry-point.js.map +1 -1
- package/packages/run/run.entry-point.d.ts +2 -2
- package/packages/run/run.entry-point.d.ts.map +1 -1
- package/readme.md +28 -18
- package/run/collected-run-plan.js +32 -2
- package/run/collected-run-plan.js.map +1 -1
- package/run/command-line-command.d.ts +10 -1
- package/run/command-line-command.d.ts.map +1 -1
- package/run/command-line-command.js +25 -7
- package/run/command-line-command.js.map +1 -1
- package/run/command-line-runner.d.ts +2 -2
- package/run/command-line-runner.d.ts.map +1 -1
- package/run/command-line-runner.js +71 -5
- package/run/command-line-runner.js.map +1 -1
- package/run/profile-file-glob.js +28 -0
- package/run/profile-file-glob.js.map +1 -0
- package/run/run-config-schema.d.ts +21 -0
- package/run/run-config-schema.d.ts.map +1 -1
- package/run/run-config-schema.js +8 -0
- package/run/run-config-schema.js.map +1 -1
- package/run/run-config.d.ts +2 -1
- package/run/run-config.d.ts.map +1 -1
- package/run/run-config.js +24 -0
- package/run/run-config.js.map +1 -1
- package/run/run-discovery.js +181 -19
- package/run/run-discovery.js.map +1 -1
- package/run/run-input-resolution.js +19 -0
- package/run/run-input-resolution.js.map +1 -0
- package/run/run-list-renderer.js +61 -0
- package/run/run-list-renderer.js.map +1 -0
- package/run/run-local-test-plan.js +5 -5
- package/run/run-local-test-plan.js.map +1 -1
- package/run/run-support.js +23 -0
- package/run/run-support.js.map +1 -1
- package/run/run-test-plan.js +8 -5
- package/run/run-test-plan.js.map +1 -1
- package/run/run-types.d.ts +6 -0
- package/run/run-types.d.ts.map +1 -1
- package/run/run-types.js.map +1 -1
- package/run/run-validation.js +2 -13
- package/run/run-validation.js.map +1 -1
- package/run/run.js +17 -36
- package/run/run.js.map +1 -1
- package/sbom.cdx.json +4 -4
package/package.json
CHANGED
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"import": "./packages/run/run.entry-point.js",
|
|
23
23
|
"types": "./packages/run/run.entry-point.d.ts"
|
|
24
24
|
},
|
|
25
|
-
"./
|
|
25
|
+
"./command-line": {
|
|
26
26
|
"import": "./packages/run/command-line.entry-point.js",
|
|
27
27
|
"types": "./packages/run/command-line.entry-point.d.ts"
|
|
28
28
|
}
|
|
@@ -61,5 +61,5 @@
|
|
|
61
61
|
"./run/supervised-child-process.js"
|
|
62
62
|
],
|
|
63
63
|
"type": "module",
|
|
64
|
-
"version": "0.0.
|
|
64
|
+
"version": "0.0.23"
|
|
65
65
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { commandLineExitCodes } from '../../run/command-line-command.ts';
|
|
2
2
|
export { commandLineRunner } from '../../run/command-line-runner.ts';
|
|
3
|
-
export type { CommandLineBaselineCommands, CommandLineBenchmarkCommands, CommandLineCommand, CommandLineCommandContext, CommandLineExitCode, CommandLineRunnerResult, CommandLineRunTestsRequest } from '../../run/command-line-command.ts';
|
|
3
|
+
export type { CommandLineBaselineCommands, CommandLineBenchmarkCommands, CommandLineCommand, CommandLineCommandContext, CommandLineExitCode, CommandLineListTestsRequest, CommandLineRunnerResult, CommandLineRunTestsRequest } from '../../run/command-line-command.ts';
|
|
4
4
|
export type { CommandLineRunner } from '../../run/command-line-runner.ts';
|
|
5
5
|
export { defineConfig, loadRunConfig, RunConfigError } from '../../run/run-config.ts';
|
|
6
|
-
export type { LoadedRunConfig, RunConfigLoadRequest, RunProjectConfig, RunProjectMeasuredResourceUsage, RunProjectMicrotestExecution, RunProjectMicrotestProfileConfig, RunProjectProfileConfig, RunProjectProfilesConfig, RunProjectResourceBudgets, RunProjectResourceUsageConfig, RunProjectTimeoutConfig, RunProjectUnmeasuredResourceUsage } from '../../run/run-config.ts';
|
|
6
|
+
export type { LoadedRunConfig, RunConfigLoadRequest, RunProjectConfig, RunProjectMeasuredResourceUsage, RunProjectMicrotestExecution, RunProjectMicrotestProfileConfig, RunProjectProfileFiles, RunProjectProfileConfig, RunProjectProfilesConfig, RunProjectResourceBudgets, RunProjectResourceUsageConfig, RunProjectTimeoutConfig, RunProjectUnmeasuredResourceUsage } from '../../run/run-config.ts';
|
|
7
7
|
//# sourceMappingURL=command-line.entry-point.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-line.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/run/command-line.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACH,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACR,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,EACvB,0BAA0B,EAC7B,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACR,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACH,YAAY,EACZ,aAAa,EACb,cAAc,EACjB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACR,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,+BAA+B,EAC/B,4BAA4B,EAC5B,gCAAgC,EAChC,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,uBAAuB,EACvB,iCAAiC,EACpC,MAAM,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"command-line.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/run/command-line.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACH,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACR,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,0BAA0B,EAC7B,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACR,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACH,YAAY,EACZ,aAAa,EACb,cAAc,EACjB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACR,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,+BAA+B,EAC/B,4BAA4B,EAC5B,gCAAgC,EAChC,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,uBAAuB,EACvB,iCAAiC,EACpC,MAAM,yBAAyB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-line.entry-point.js","sourceRoot":"","sources":["../../../../../source/packages/run/command-line.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACH,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"command-line.entry-point.js","sourceRoot":"","sources":["../../../../../source/packages/run/command-line.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACH,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAc1C,OAAO,EACH,YAAY,EACZ,aAAa,EACb,cAAc,EACjB,MAAM,yBAAyB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { orchestrator } from '../../run/run-orchestrator.entry-point.ts';
|
|
2
2
|
export { defineConfig, loadRunConfig, RunConfigError } from '../../run/run-config.ts';
|
|
3
3
|
export { RunResolutionError } from '../../run/run-errors.ts';
|
|
4
|
-
export type { LoadedRunConfig, RunConfigLoadRequest, RunProjectConfig, RunProjectMeasuredResourceUsage, RunProjectMicrotestExecution, RunProjectMicrotestProfileConfig, RunProjectProfileConfig, RunProjectProfilesConfig, RunProjectResourceBudgets, RunProjectResourceUsageConfig, RunProjectTimeoutConfig, RunProjectUnmeasuredResourceUsage } from '../../run/run-config.ts';
|
|
4
|
+
export type { LoadedRunConfig, RunConfigLoadRequest, RunProjectConfig, RunProjectMeasuredResourceUsage, RunProjectMicrotestExecution, RunProjectMicrotestProfileConfig, RunProjectProfileFiles, RunProjectProfileConfig, RunProjectProfilesConfig, RunProjectResourceBudgets, RunProjectResourceUsageConfig, RunProjectTimeoutConfig, RunProjectUnmeasuredResourceUsage } from '../../run/run-config.ts';
|
|
5
5
|
export type { RunResolutionErrorCode } from '../../run/run-errors.ts';
|
|
6
|
-
export type { CollectedRunCase, CollectedRunFile, CollectedRunPlan, ResolvedRun, ResolvedRunPlan, RunCaseFacts, RunCommand, RunConfig, RunDebugRequest, RunEngineFacts, RunEngineSelection, RunEnvironmentFacts, RunExecutionRequest, RunFacts, RunExecutionFacts, RunLoaderConfig, RunMicrotestExecution, RunMicrotestProfileConfig, RunOrchestrator, RunProcessModel, RunProfileConfig, RunProfilesConfig, RunResourceBudgets, RunResourceUsagePolicy, RunReproducibilityFacts, RunRequest, RunScheduling, RunSeed, RunSelection, RunShard, RunTestFamily, RunTimeoutPolicy, SerializedValue } from '../../run/run-types.ts';
|
|
6
|
+
export type { CollectedRunCase, CollectedRunFile, CollectedRunPlan, ResolvedRun, ResolvedRunPlan, RunCaseFacts, RunCommand, RunConfig, RunDebugRequest, RunEngineFacts, RunEngineSelection, RunEnvironmentFacts, RunExecutionRequest, RunFacts, RunExecutionFacts, RunLoaderConfig, RunMicrotestExecution, RunMicrotestProfileConfig, RunOrchestrator, RunProcessModel, RunProfileConfig, RunProfileFiles, RunProfilesConfig, RunResourceBudgets, RunResourceUsagePolicy, RunReproducibilityFacts, RunRequest, RunScheduling, RunSeed, RunSelection, RunShard, RunTestFamily, RunTimeoutPolicy, SerializedValue } from '../../run/run-types.ts';
|
|
7
7
|
//# sourceMappingURL=run.entry-point.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/run/run.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EACH,YAAY,EACZ,aAAa,EACb,cAAc,EACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,YAAY,EACR,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,+BAA+B,EAC/B,4BAA4B,EAC5B,gCAAgC,EAChC,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,uBAAuB,EACvB,iCAAiC,EACpC,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACtE,YAAY,EACR,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,YAAY,EACZ,UAAU,EACV,SAAS,EACT,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,yBAAyB,EACzB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EACV,aAAa,EACb,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,eAAe,EAClB,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"run.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/run/run.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EACH,YAAY,EACZ,aAAa,EACb,cAAc,EACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,YAAY,EACR,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,+BAA+B,EAC/B,4BAA4B,EAC5B,gCAAgC,EAChC,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,uBAAuB,EACvB,iCAAiC,EACpC,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACtE,YAAY,EACR,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,YAAY,EACZ,UAAU,EACV,SAAS,EACT,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,yBAAyB,EACzB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EACV,aAAa,EACb,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,eAAe,EAClB,MAAM,wBAAwB,CAAC"}
|
package/readme.md
CHANGED
|
@@ -18,7 +18,7 @@ Top-level API:
|
|
|
18
18
|
|
|
19
19
|
Command-line business logic is exposed through `@overkill-dev/run/command-line`:
|
|
20
20
|
|
|
21
|
-
- `commandLineRunner.runTests(
|
|
21
|
+
- `commandLineRunner.runTests({ cwd, configPath, runRequest })`
|
|
22
22
|
- `commandLineRunner.listTests(context)`
|
|
23
23
|
- `commandLineRunner.replayRun(context)`
|
|
24
24
|
- `commandLineRunner.replayWitness(context)`
|
|
@@ -37,28 +37,31 @@ Command-line business logic is exposed through `@overkill-dev/run/command-line`:
|
|
|
37
37
|
- `defineConfig(config)`
|
|
38
38
|
- `loadRunConfig({ cwd, configPath })`
|
|
39
39
|
|
|
40
|
-
The current runner accepts explicit file paths through `RunRequest.paths
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
`
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
40
|
+
The current runner accepts explicit file paths through `RunRequest.paths` and
|
|
41
|
+
profile file discovery through `profiles.<name>.files`. Each discovered or
|
|
42
|
+
explicit file is imported as a native Node ESM module and must export a named
|
|
43
|
+
`testNode` value created by the selected engine.
|
|
44
|
+
`commandLineRunner.listTests(...)` resolves those modules and prints a plain
|
|
45
|
+
plan tree without executing tests or loading fallback reporters.
|
|
46
|
+
`RunCommand.engine` may be `{ kind: 'default' }` to use the shared public engine,
|
|
47
|
+
`{ kind: 'instance', engine }` for in-process programmatic callers that also
|
|
48
|
+
create their test nodes with that engine, or `{ kind: 'module', moduleUrl,
|
|
49
|
+
exportName, exportKind }` for supervised programmatic callers that need the
|
|
50
|
+
child process to load the engine without parent-side user-module execution.
|
|
51
|
+
|
|
52
|
+
Filtering, sharding, seeded ordering, records, and replay are separate runner
|
|
53
|
+
milestones. Direct prebuilt `TestPlan` execution belongs to
|
|
54
|
+
`@overkill-dev/engine` through `execute(testPlan)`. The command methods other
|
|
55
|
+
than `runTests` and `listTests` are fixed first-party entrypoints and currently
|
|
53
56
|
return argument errors until their command implementations land.
|
|
54
57
|
|
|
55
58
|
Resource usage measurement is explicit. Project config can enable it under
|
|
56
59
|
`profiles.<name>.resourceUsage.measure`; `RunRequest.measureResourceUsage`
|
|
57
60
|
can override that policy for one run. `resourceUsage.budgets` are thresholds
|
|
58
61
|
and require measurement, while `RunRequest.resourceBudgetOverrides` changes
|
|
59
|
-
individual thresholds for one run.
|
|
60
|
-
`--measure-resource-usage` and `--resource-budget <name=value>`
|
|
61
|
-
|
|
62
|
+
individual thresholds for one run. The `@overkill-dev/test` binary parses
|
|
63
|
+
`--measure-resource-usage` and `--resource-budget <name=value>` into those
|
|
64
|
+
typed request fields.
|
|
62
65
|
|
|
63
66
|
Runner profile names are project-owned. Names such as `microtest`,
|
|
64
67
|
`backend-http`, `ui-browser`, `ui.browser`, and `unit_fast` select profile
|
|
@@ -69,11 +72,18 @@ benchmark commands. Every configured runner profile must declare
|
|
|
69
72
|
`testFamily: 'microtest'`; the selected profile's test family is recorded in
|
|
70
73
|
`RunFacts.execution.testFamily`.
|
|
71
74
|
|
|
75
|
+
Configured microtest profiles may set `files.include` and `files.exclude`.
|
|
76
|
+
`include` is required when `files` is present; `exclude` defaults to `[]`.
|
|
77
|
+
With no run paths, the selected profile's files policy discovers test modules.
|
|
78
|
+
Explicit file paths bypass the files policy. Directory paths require a files
|
|
79
|
+
policy, filter the profile-discovered file set, and cannot be mixed with file
|
|
80
|
+
paths.
|
|
81
|
+
|
|
72
82
|
Microtest profile execution is modeled with two independent fields:
|
|
73
83
|
`execution.processModel` is `in-process` or `supervised-process`, and
|
|
74
84
|
`execution.scheduling` is `concurrent` or `serial`. The default `microtest`
|
|
75
85
|
profile uses supervised concurrent execution. The selected values are recorded
|
|
76
|
-
in `RunFacts.execution` and drive
|
|
86
|
+
in `RunFacts.execution` and drive runner planning.
|
|
77
87
|
|
|
78
88
|
`RunRequest.capabilityRestrictions.mode` controls the current microtest
|
|
79
89
|
restriction policy. The programmatic default is `enabled`; the command-line
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../compare/serialized-value.js";
|
|
1
|
+
import { serializeValue } from "../compare/serialized-value.js";
|
|
2
2
|
import { caseIdentityKey, createCaseId } from "../engine/identity.js";
|
|
3
3
|
function collectedCaseId(file, testCase) {
|
|
4
4
|
return createCaseId(file, testCase.suite, testCase.name, testCase.params);
|
|
@@ -71,7 +71,37 @@ function countOutcomes(plan, perTest) {
|
|
|
71
71
|
skipped: perTest.filter(hasVerdict('skip')).length
|
|
72
72
|
};
|
|
73
73
|
}
|
|
74
|
-
|
|
74
|
+
function collectRunPlanFile(file, cases) {
|
|
75
|
+
return {
|
|
76
|
+
cases: cases.map(function collectCase(testCase) {
|
|
77
|
+
return {
|
|
78
|
+
metadata: serializeValue(testCase.metadata),
|
|
79
|
+
name: testCase.id.name,
|
|
80
|
+
params: testCase.id.params,
|
|
81
|
+
suite: testCase.id.suite
|
|
82
|
+
};
|
|
83
|
+
}),
|
|
84
|
+
file
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
export function collectedRunPlanFromTestPlan(testPlan) {
|
|
88
|
+
const files = new Map();
|
|
89
|
+
for (const testCase of testPlan.cases) {
|
|
90
|
+
const file = testCase.id.file ?? '';
|
|
91
|
+
files.set(file, [...files.get(file) ?? [], testCase]);
|
|
92
|
+
}
|
|
93
|
+
return {
|
|
94
|
+
defined: testPlan.defined,
|
|
95
|
+
files: Array.from(files, function collectFile([file, cases]) {
|
|
96
|
+
return collectRunPlanFile(file, cases);
|
|
97
|
+
}),
|
|
98
|
+
orphans: testPlan.orphans,
|
|
99
|
+
root: {
|
|
100
|
+
metadata: serializeValue(testPlan.root.metadata),
|
|
101
|
+
name: testPlan.root.name
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
}
|
|
75
105
|
export function collectedRunCaseFacts(plan) {
|
|
76
106
|
return collectedCases(plan).map(function toRunCaseFacts(collectedCase) {
|
|
77
107
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collected-run-plan.js","sourceRoot":"","sources":["../../../../source/run/collected-run-plan.ts"],"names":[],"mappings":"AACA,
|
|
1
|
+
{"version":3,"file":"collected-run-plan.js","sourceRoot":"","sources":["../../../../source/run/collected-run-plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,14 @@ export declare const commandLineExitCodes: Readonly<{
|
|
|
12
12
|
}>;
|
|
13
13
|
export type CommandLineExitCode = (typeof commandLineExitCodes)[keyof typeof commandLineExitCodes];
|
|
14
14
|
export type CommandLineRunTestsRequest = RunConfigLoadRequest & {
|
|
15
|
-
readonly
|
|
15
|
+
readonly runRequest: RunRequest;
|
|
16
|
+
};
|
|
17
|
+
export type CommandLineListTestsRequest = RunConfigLoadRequest & {
|
|
18
|
+
readonly listRequest: {
|
|
19
|
+
readonly paths: readonly string[];
|
|
20
|
+
readonly profile: string;
|
|
21
|
+
readonly withOrphans: boolean;
|
|
22
|
+
};
|
|
16
23
|
};
|
|
17
24
|
export type CommandLineCommandContext = RunConfigLoadRequest & {
|
|
18
25
|
readonly arguments: readonly string[];
|
|
@@ -21,6 +28,7 @@ export type CommandLineRunnerResult = {
|
|
|
21
28
|
readonly exitCode: CommandLineExitCode;
|
|
22
29
|
readonly fallbackDiagnostics: readonly string[];
|
|
23
30
|
readonly runResult: RunResult | null;
|
|
31
|
+
readonly stdoutLines: readonly string[];
|
|
24
32
|
};
|
|
25
33
|
export type CommandLineCommand = (context: CommandLineCommandContext) => Promise<CommandLineRunnerResult>;
|
|
26
34
|
export type CommandLineBaselineCommands = {
|
|
@@ -35,6 +43,7 @@ export type CommandLineBenchmarkCommands = {
|
|
|
35
43
|
readonly listBenchmarks: CommandLineCommand;
|
|
36
44
|
readonly runBenchmarks: CommandLineCommand;
|
|
37
45
|
};
|
|
46
|
+
export declare function formatRunnerErrorDiagnostics(errors: readonly RunnerError[]): readonly string[];
|
|
38
47
|
export declare function formatFallbackDiagnostics(result: RunResult, deliveredRunnerErrors: ReadonlySet<RunnerError>): readonly string[];
|
|
39
48
|
export declare function readExitCodeFromRunResult(result: RunResult): CommandLineExitCode;
|
|
40
49
|
export declare function createCommandLineErrorResultFromUnknown(error: unknown): CommandLineRunnerResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-line-command.d.ts","sourceRoot":"","sources":["../../../../source/run/command-line-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAE5E,eAAO,MAAM,oBAAoB;;;;;;;;EAQ/B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,OAAO,oBAAoB,CAAC,CAAC;AAEnG,MAAM,MAAM,0BAA0B,GAAG,oBAAoB,GAAG;IAC5D,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"command-line-command.d.ts","sourceRoot":"","sources":["../../../../source/run/command-line-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAE5E,eAAO,MAAM,oBAAoB;;;;;;;;EAQ/B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,OAAO,oBAAoB,CAAC,CAAC;AAEnG,MAAM,MAAM,0BAA0B,GAAG,oBAAoB,GAAG;IAC5D,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,oBAAoB,GAAG;IAC7D,QAAQ,CAAC,WAAW,EAAE;QAClB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;QAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;KACjC,CAAC;CACL,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,oBAAoB,GAAG;IAC3D,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,yBAAyB,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAE1G,MAAM,MAAM,2BAA2B,GAAG;IACtC,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACvC,QAAQ,CAAC,QAAQ,EAAE,2BAA2B,CAAC;IAC/C,QAAQ,CAAC,cAAc,EAAE,kBAAkB,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,kBAAkB,CAAC;CAC9C,CAAC;AAMF,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,GAAG,SAAS,MAAM,EAAE,CAE9F;AAkED,wBAAgB,yBAAyB,CACrC,MAAM,EAAE,SAAS,EACjB,qBAAqB,EAAE,WAAW,CAAC,WAAW,CAAC,GAChD,SAAS,MAAM,EAAE,CAMnB;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,GAAG,mBAAmB,CAsBhF;AAmCD,wBAAgB,uCAAuC,CAAC,KAAK,EAAE,OAAO,GAAG,uBAAuB,CAoB/F"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ReporterSinkConflictError } from "../engine/reporter.js";
|
|
2
|
-
import { RunResolutionError } from "./run-errors.js";
|
|
2
|
+
import { RunCollectionError, RunResolutionError } from "./run-errors.js";
|
|
3
3
|
import { RunConfigError } from "./run-config.js";
|
|
4
4
|
export const commandLineExitCodes = Object.freeze({
|
|
5
5
|
argumentOrConfig: 3,
|
|
@@ -13,6 +13,9 @@ export const commandLineExitCodes = Object.freeze({
|
|
|
13
13
|
function formatRunnerError(error) {
|
|
14
14
|
return `Overkill runner error: ${error.message}`;
|
|
15
15
|
}
|
|
16
|
+
export function formatRunnerErrorDiagnostics(errors) {
|
|
17
|
+
return errors.map(formatRunnerError);
|
|
18
|
+
}
|
|
16
19
|
function formatError(error) {
|
|
17
20
|
if (error instanceof Error) {
|
|
18
21
|
return error.message;
|
|
@@ -66,7 +69,7 @@ export function formatFallbackDiagnostics(result, deliveredRunnerErrors) {
|
|
|
66
69
|
const unreportedErrors = result.runnerErrors.filter(function wasNotDelivered(error) {
|
|
67
70
|
return !deliveredRunnerErrors.has(error);
|
|
68
71
|
});
|
|
69
|
-
return unreportedErrors
|
|
72
|
+
return formatRunnerErrorDiagnostics(unreportedErrors);
|
|
70
73
|
}
|
|
71
74
|
export function readExitCodeFromRunResult(result) {
|
|
72
75
|
const hasResourceExhaustion = result.runnerErrors.some(function isResourceExhaustion(error) {
|
|
@@ -90,7 +93,22 @@ function createCommandLineErrorResult(exitCode, label, error) {
|
|
|
90
93
|
return {
|
|
91
94
|
exitCode,
|
|
92
95
|
fallbackDiagnostics: formatErrorDiagnostics(label, error),
|
|
93
|
-
runResult: null
|
|
96
|
+
runResult: null,
|
|
97
|
+
stdoutLines: []
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
function createCommandLineResolutionErrorResult(classifiedError, error) {
|
|
101
|
+
if (classifiedError.code() === 'no-tests-collected') {
|
|
102
|
+
return createCommandLineErrorResult(commandLineExitCodes.noTestsCollected, 'no tests collected', error);
|
|
103
|
+
}
|
|
104
|
+
return createCommandLineErrorResult(commandLineExitCodes.argumentOrConfig, 'argument error', error);
|
|
105
|
+
}
|
|
106
|
+
function createCommandLineCollectionErrorResult(error) {
|
|
107
|
+
return {
|
|
108
|
+
exitCode: commandLineExitCodes.runnerError,
|
|
109
|
+
fallbackDiagnostics: formatRunnerErrorDiagnostics([error.runnerError()]),
|
|
110
|
+
runResult: null,
|
|
111
|
+
stdoutLines: []
|
|
94
112
|
};
|
|
95
113
|
}
|
|
96
114
|
export function createCommandLineErrorResultFromUnknown(error) {
|
|
@@ -102,10 +120,10 @@ export function createCommandLineErrorResultFromUnknown(error) {
|
|
|
102
120
|
return createCommandLineErrorResult(commandLineExitCodes.argumentOrConfig, 'configuration error', error);
|
|
103
121
|
}
|
|
104
122
|
if (classifiedError instanceof RunResolutionError) {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
return
|
|
123
|
+
return createCommandLineResolutionErrorResult(classifiedError, error);
|
|
124
|
+
}
|
|
125
|
+
if (classifiedError instanceof RunCollectionError) {
|
|
126
|
+
return createCommandLineCollectionErrorResult(classifiedError);
|
|
109
127
|
}
|
|
110
128
|
return createCommandLineErrorResult(commandLineExitCodes.internalCrash, 'internal error', error);
|
|
111
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-line-command.js","sourceRoot":"","sources":["../../../../source/run/command-line-command.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"command-line-command.js","sourceRoot":"","sources":["../../../../source/run/command-line-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { Reporter } from '../engine/reporter.ts';
|
|
2
2
|
import type { RunOrchestrator } from './run-types.ts';
|
|
3
3
|
import { type LoadedRunConfig, type RunConfigLoadRequest } from './run-config.ts';
|
|
4
|
-
import { type CommandLineBaselineCommands, type CommandLineBenchmarkCommands, type CommandLineCommand, type CommandLineRunTestsRequest, type CommandLineRunnerResult as CommandLineRunnerResultShape } from './command-line-command.ts';
|
|
4
|
+
import { type CommandLineListTestsRequest, type CommandLineBaselineCommands, type CommandLineBenchmarkCommands, type CommandLineCommand, type CommandLineRunTestsRequest, type CommandLineRunnerResult as CommandLineRunnerResultShape } from './command-line-command.ts';
|
|
5
5
|
import { type CommandLineCommandLoaders } from './command-line-command-namespace.ts';
|
|
6
6
|
export type CommandLineRunner = {
|
|
7
7
|
readonly baseline: CommandLineBaselineCommands;
|
|
8
8
|
readonly bench: CommandLineBenchmarkCommands;
|
|
9
|
-
readonly listTests:
|
|
9
|
+
readonly listTests: (request: CommandLineListTestsRequest) => Promise<CommandLineRunnerResult>;
|
|
10
10
|
readonly replayRun: CommandLineCommand;
|
|
11
11
|
readonly replayWitness: CommandLineCommand;
|
|
12
12
|
readonly runTests: (request: CommandLineRunTestsRequest) => Promise<CommandLineRunnerResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-line-runner.d.ts","sourceRoot":"","sources":["../../../../source/run/command-line-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAyB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE7E,OAAO,EAEH,KAAK,eAAe,EACpB,KAAK,oBAAoB,EAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,
|
|
1
|
+
{"version":3,"file":"command-line-runner.d.ts","sourceRoot":"","sources":["../../../../source/run/command-line-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAyB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE7E,OAAO,EAEH,KAAK,eAAe,EACpB,KAAK,oBAAoB,EAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAKH,KAAK,2BAA2B,EAEhC,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,IAAI,4BAA4B,EAC/D,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEH,KAAK,yBAAyB,EACjC,MAAM,qCAAqC,CAAC;AAY7C,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,CAAC,QAAQ,EAAE,2BAA2B,CAAC;IAC/C,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,2BAA2B,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC/F,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,aAAa,EAAE,kBAAkB,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,0BAA0B,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAChG,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,4BAA4B,CAAC;AAEnE,MAAM,MAAM,6BAA6B,GAAG,yBAAyB,GAAG;IACpE,QAAQ,CAAC,qBAAqB,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxD,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IACpF,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;CAC1C,CAAC;AAwIF,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,6BAA6B,GAAG,iBAAiB,CAyBtG;AAQD,eAAO,MAAM,iBAAiB,EAAE,iBAM9B,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { orchestrator } from "./run-orchestrator.entry-point.js";
|
|
2
2
|
import { loadRunConfig } from "./run-config.js";
|
|
3
|
-
import { createCommandLineErrorResultFromUnknown, formatFallbackDiagnostics, readExitCodeFromRunResult } from "./command-line-command.js";
|
|
3
|
+
import { createCommandLineErrorResultFromUnknown, formatFallbackDiagnostics, formatRunnerErrorDiagnostics, commandLineExitCodes, readExitCodeFromRunResult } from "./command-line-command.js";
|
|
4
4
|
import { createCommandLineCommandNamespace } from "./command-line-command-namespace.js";
|
|
5
5
|
import { createUnimplementedCommand, loadUnimplementedBaselineCommands, loadUnimplementedBenchmarkCommands } from "./command-line-unimplemented-commands.js";
|
|
6
6
|
import { selectCommandLineReporterFallback } from "./run-reporter-resolution.js";
|
|
7
|
+
import { renderResolvedRunList } from "./run-list-renderer.js";
|
|
7
8
|
async function loadCommandLineReporterFallback(fallback, dependencies) {
|
|
8
9
|
if (fallback.kind === 'configured') {
|
|
9
10
|
return fallback.reporters;
|
|
@@ -14,7 +15,7 @@ async function loadCommandLineReporterFallback(fallback, dependencies) {
|
|
|
14
15
|
return [];
|
|
15
16
|
}
|
|
16
17
|
async function createCommandLineConfig(loadedConfig, request, dependencies) {
|
|
17
|
-
const reporterFallback = selectCommandLineReporterFallback(loadedConfig, request.
|
|
18
|
+
const reporterFallback = selectCommandLineReporterFallback(loadedConfig, request.runRequest.profile);
|
|
18
19
|
return {
|
|
19
20
|
loader: loadedConfig.loader,
|
|
20
21
|
outputRenderer: loadedConfig.outputRenderer,
|
|
@@ -23,24 +24,81 @@ async function createCommandLineConfig(loadedConfig, request, dependencies) {
|
|
|
23
24
|
runtimeStateDir: loadedConfig.runtimeStateDir
|
|
24
25
|
};
|
|
25
26
|
}
|
|
27
|
+
function createCommandLineListConfig(loadedConfig) {
|
|
28
|
+
return {
|
|
29
|
+
loader: loadedConfig.loader,
|
|
30
|
+
outputRenderer: loadedConfig.outputRenderer,
|
|
31
|
+
profiles: loadedConfig.profiles,
|
|
32
|
+
reporters: [],
|
|
33
|
+
runtimeStateDir: loadedConfig.runtimeStateDir
|
|
34
|
+
};
|
|
35
|
+
}
|
|
26
36
|
async function createCommandFromRequest(request, loadedConfig, dependencies) {
|
|
27
37
|
return {
|
|
28
38
|
config: await createCommandLineConfig(loadedConfig, request, dependencies),
|
|
29
39
|
cwd: request.cwd,
|
|
30
40
|
engine: { kind: 'default' },
|
|
31
41
|
request: {
|
|
32
|
-
...request.
|
|
42
|
+
...request.runRequest,
|
|
33
43
|
capabilityRestrictions: { mode: 'enabled' }
|
|
34
44
|
}
|
|
35
45
|
};
|
|
36
46
|
}
|
|
47
|
+
function createCommandFromListRequest(request, loadedConfig) {
|
|
48
|
+
return {
|
|
49
|
+
config: createCommandLineListConfig(loadedConfig),
|
|
50
|
+
cwd: request.cwd,
|
|
51
|
+
engine: { kind: 'default' },
|
|
52
|
+
request: {
|
|
53
|
+
baselineUpdateMode: 'none',
|
|
54
|
+
capabilityRestrictions: { mode: 'enabled' },
|
|
55
|
+
capture: 'buffered',
|
|
56
|
+
debug: {
|
|
57
|
+
mode: 'off',
|
|
58
|
+
selectors: []
|
|
59
|
+
},
|
|
60
|
+
execution: { mode: 'profile-default' },
|
|
61
|
+
measureResourceUsage: null,
|
|
62
|
+
order: 'plan',
|
|
63
|
+
paths: request.listRequest.paths,
|
|
64
|
+
profile: request.listRequest.profile,
|
|
65
|
+
resourceBudgetOverrides: null,
|
|
66
|
+
resourceUsageSamplingIntervalMilliseconds: null,
|
|
67
|
+
seed: { value: null },
|
|
68
|
+
selection: { kind: 'all' },
|
|
69
|
+
shard: { index: 0, total: 1 },
|
|
70
|
+
verbose: false
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
}
|
|
37
74
|
async function runTestsWithLoadedConfig(request, dependencies, loadedConfig) {
|
|
38
75
|
const command = await createCommandFromRequest(request, loadedConfig, dependencies);
|
|
39
76
|
const runResult = await dependencies.orchestrator.runWithReporterDelivery(command);
|
|
40
77
|
return {
|
|
41
78
|
exitCode: readExitCodeFromRunResult(runResult.result),
|
|
42
79
|
fallbackDiagnostics: formatFallbackDiagnostics(runResult.result, new Set(runResult.deliveredRunnerErrors)),
|
|
43
|
-
runResult: runResult.result
|
|
80
|
+
runResult: runResult.result,
|
|
81
|
+
stdoutLines: []
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
async function listTestsWithLoadedConfig(request, dependencies, loadedConfig) {
|
|
85
|
+
const command = createCommandFromListRequest(request, loadedConfig);
|
|
86
|
+
const resolvedRun = await dependencies.orchestrator.resolve(command);
|
|
87
|
+
if (resolvedRun.collectionRunnerErrors.length > 0) {
|
|
88
|
+
return {
|
|
89
|
+
exitCode: commandLineExitCodes.runnerError,
|
|
90
|
+
fallbackDiagnostics: formatRunnerErrorDiagnostics(resolvedRun.collectionRunnerErrors),
|
|
91
|
+
runResult: null,
|
|
92
|
+
stdoutLines: []
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
return {
|
|
96
|
+
exitCode: commandLineExitCodes.pass,
|
|
97
|
+
fallbackDiagnostics: [],
|
|
98
|
+
runResult: null,
|
|
99
|
+
stdoutLines: renderResolvedRunList(resolvedRun, {
|
|
100
|
+
withOrphans: request.listRequest.withOrphans
|
|
101
|
+
})
|
|
44
102
|
};
|
|
45
103
|
}
|
|
46
104
|
export function createCommandLineRunner(dependencies) {
|
|
@@ -48,7 +106,15 @@ export function createCommandLineRunner(dependencies) {
|
|
|
48
106
|
return {
|
|
49
107
|
baseline: commandNamespace.baseline,
|
|
50
108
|
bench: commandNamespace.bench,
|
|
51
|
-
listTests
|
|
109
|
+
async listTests(request) {
|
|
110
|
+
try {
|
|
111
|
+
const loadedConfig = await dependencies.loadRunConfig(request);
|
|
112
|
+
return await listTestsWithLoadedConfig(request, dependencies, loadedConfig);
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
return createCommandLineErrorResultFromUnknown(error);
|
|
116
|
+
}
|
|
117
|
+
},
|
|
52
118
|
replayRun: createUnimplementedCommand('replay'),
|
|
53
119
|
replayWitness: createUnimplementedCommand('replay-witness'),
|
|
54
120
|
async runTests(request) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-line-runner.js","sourceRoot":"","sources":["../../../../source/run/command-line-runner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EACH,aAAa,EAGhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACH,uCAAuC,EACvC,yBAAyB,EACzB,yBAAyB,EAM5B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACH,iCAAiC,EAEpC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACH,0BAA0B,EAC1B,iCAAiC,EACjC,kCAAkC,EACrC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACH,iCAAiC,EAEpC,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"command-line-runner.js","sourceRoot":"","sources":["../../../../source/run/command-line-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { isAbsolute } from 'node:path';
|
|
2
|
+
function globSegments(pattern) {
|
|
3
|
+
return pattern.split(/[\\/]+/u);
|
|
4
|
+
}
|
|
5
|
+
function configMessage(message) {
|
|
6
|
+
return `Invalid ${message.charAt(0).toLowerCase()}${message.slice(1)}`;
|
|
7
|
+
}
|
|
8
|
+
export function invalidProfileFileGlobMessage(field, pattern) {
|
|
9
|
+
const trimmedPattern = pattern.trim();
|
|
10
|
+
if (trimmedPattern.length === 0) {
|
|
11
|
+
return `Profile files.${field} glob pattern must not be blank.`;
|
|
12
|
+
}
|
|
13
|
+
if (trimmedPattern.startsWith('!')) {
|
|
14
|
+
return `Profile files.${field} negated glob patterns are not supported.`;
|
|
15
|
+
}
|
|
16
|
+
if (isAbsolute(pattern)) {
|
|
17
|
+
return `Profile files.${field} glob pattern must be relative to cwd.`;
|
|
18
|
+
}
|
|
19
|
+
if (globSegments(pattern).includes('..')) {
|
|
20
|
+
return `Profile files.${field} glob pattern must not contain parent segments.`;
|
|
21
|
+
}
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
export function invalidProfileFileGlobConfigMessage(field, pattern) {
|
|
25
|
+
const message = invalidProfileFileGlobMessage(field, pattern);
|
|
26
|
+
return message === null ? null : configMessage(message);
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=profile-file-glob.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile-file-glob.js","sourceRoot":"","sources":["../../../../source/run/profile-file-glob.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIvC,SAAS,YAAY,CAAC,OAAe;IACjC,OAAO,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,aAAa,CAAC,OAAe;IAClC,OAAO,WAAW,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAA2B,EAAE,OAAe;IACtF,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAEtC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,iBAAiB,KAAK,kCAAkC,CAAC;IACpE,CAAC;IAED,IAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,OAAO,iBAAiB,KAAK,2CAA2C,CAAC;IAC7E,CAAC;IAED,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACtB,OAAO,iBAAiB,KAAK,wCAAwC,CAAC;IAC1E,CAAC;IAED,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO,iBAAiB,KAAK,iDAAiD,CAAC;IACnF,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,KAA2B,EAAE,OAAe;IAC5F,MAAM,OAAO,GAAG,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAE9D,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAC5D,CAAC"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod/v4';
|
|
2
2
|
import { type DefinedOutputRenderer } from '../engine/reporter-output.ts';
|
|
3
3
|
import { type DefinedReporter } from '../engine/reporter.ts';
|
|
4
|
+
declare const profileFilesSchema: z.ZodReadonly<z.ZodObject<{
|
|
5
|
+
exclude: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
6
|
+
include: z.ZodReadonly<z.ZodTuple<[z.ZodString], z.ZodString>>;
|
|
7
|
+
}, z.core.$strict>>;
|
|
4
8
|
export declare const resourceBudgetsSchema: z.ZodReadonly<z.ZodObject<{
|
|
5
9
|
activeResourceCount: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
6
10
|
javaScriptEngineHeapBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
@@ -52,6 +56,10 @@ export declare const microtestProfileSchema: z.ZodReadonly<z.ZodObject<{
|
|
|
52
56
|
processModel: z.ZodLiteral<"supervised-process">;
|
|
53
57
|
scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
|
|
54
58
|
}, z.core.$strict>>], "processModel">>;
|
|
59
|
+
files: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
|
|
60
|
+
exclude: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
61
|
+
include: z.ZodReadonly<z.ZodTuple<[z.ZodString], z.ZodString>>;
|
|
62
|
+
}, z.core.$strict>>>;
|
|
55
63
|
reporters: z.ZodOptional<z.ZodReadonly<z.ZodTuple<[z.ZodCustom<DefinedReporter, DefinedReporter>], z.ZodCustom<DefinedReporter, DefinedReporter>>>>;
|
|
56
64
|
resourceUsage: z.ZodOptional<z.ZodUnion<readonly [z.ZodReadonly<z.ZodObject<{
|
|
57
65
|
budgets: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
|
|
@@ -80,6 +88,10 @@ declare const profileSchema: z.ZodDiscriminatedUnion<[z.ZodReadonly<z.ZodObject<
|
|
|
80
88
|
processModel: z.ZodLiteral<"supervised-process">;
|
|
81
89
|
scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
|
|
82
90
|
}, z.core.$strict>>], "processModel">>;
|
|
91
|
+
files: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
|
|
92
|
+
exclude: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
93
|
+
include: z.ZodReadonly<z.ZodTuple<[z.ZodString], z.ZodString>>;
|
|
94
|
+
}, z.core.$strict>>>;
|
|
83
95
|
reporters: z.ZodOptional<z.ZodReadonly<z.ZodTuple<[z.ZodCustom<DefinedReporter, DefinedReporter>], z.ZodCustom<DefinedReporter, DefinedReporter>>>>;
|
|
84
96
|
resourceUsage: z.ZodOptional<z.ZodUnion<readonly [z.ZodReadonly<z.ZodObject<{
|
|
85
97
|
budgets: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
|
|
@@ -108,6 +120,10 @@ declare const profilesSchema: z.ZodReadonly<z.ZodRecord<z.ZodString, z.ZodDiscri
|
|
|
108
120
|
processModel: z.ZodLiteral<"supervised-process">;
|
|
109
121
|
scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
|
|
110
122
|
}, z.core.$strict>>], "processModel">>;
|
|
123
|
+
files: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
|
|
124
|
+
exclude: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
125
|
+
include: z.ZodReadonly<z.ZodTuple<[z.ZodString], z.ZodString>>;
|
|
126
|
+
}, z.core.$strict>>>;
|
|
111
127
|
reporters: z.ZodOptional<z.ZodReadonly<z.ZodTuple<[z.ZodCustom<DefinedReporter, DefinedReporter>], z.ZodCustom<DefinedReporter, DefinedReporter>>>>;
|
|
112
128
|
resourceUsage: z.ZodOptional<z.ZodUnion<readonly [z.ZodReadonly<z.ZodObject<{
|
|
113
129
|
budgets: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
|
|
@@ -142,6 +158,10 @@ export declare const projectConfigSchema: z.ZodReadonly<z.ZodObject<{
|
|
|
142
158
|
processModel: z.ZodLiteral<"supervised-process">;
|
|
143
159
|
scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
|
|
144
160
|
}, z.core.$strict>>], "processModel">>;
|
|
161
|
+
files: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
|
|
162
|
+
exclude: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
163
|
+
include: z.ZodReadonly<z.ZodTuple<[z.ZodString], z.ZodString>>;
|
|
164
|
+
}, z.core.$strict>>>;
|
|
145
165
|
reporters: z.ZodOptional<z.ZodReadonly<z.ZodTuple<[z.ZodCustom<DefinedReporter, DefinedReporter>], z.ZodCustom<DefinedReporter, DefinedReporter>>>>;
|
|
146
166
|
resourceUsage: z.ZodOptional<z.ZodUnion<readonly [z.ZodReadonly<z.ZodObject<{
|
|
147
167
|
budgets: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
|
|
@@ -166,6 +186,7 @@ export declare const projectConfigSchema: z.ZodReadonly<z.ZodObject<{
|
|
|
166
186
|
runtimeStateDir: z.ZodOptional<z.ZodString>;
|
|
167
187
|
}, z.core.$strict>>;
|
|
168
188
|
export type RunProjectResourceBudgets = z.infer<typeof resourceBudgetsSchema>;
|
|
189
|
+
export type RunProjectProfileFiles = z.infer<typeof profileFilesSchema>;
|
|
169
190
|
export type RunProjectMeasuredResourceUsage = z.infer<typeof measuredResourceUsageSchema>;
|
|
170
191
|
export type RunProjectUnmeasuredResourceUsage = z.infer<typeof unmeasuredResourceUsageSchema>;
|
|
171
192
|
export type RunProjectResourceUsageConfig = z.infer<typeof resourceUsageSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-config-schema.d.ts","sourceRoot":"","sources":["../../../../source/run/run-config-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAoB,KAAK,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC5F,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"run-config-schema.d.ts","sourceRoot":"","sources":["../../../../source/run/run-config-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAoB,KAAK,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC5F,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAsBzE,QAAA,MAAM,kBAAkB;;;mBAKT,CAAC;AAEhB,eAAO,MAAM,qBAAqB;;;;;mBAOnB,CAAC;AAEhB,QAAA,MAAM,2BAA2B;;;;;;;;;mBAMlB,CAAC;AAEhB,QAAA,MAAM,6BAA6B;;mBAIpB,CAAC;AAEhB,eAAO,MAAM,mBAAmB;;;;;;;;;;;qBAA0E,CAAC;AAE3G,eAAO,MAAM,aAAa;;;;mBAMX,CAAC;AAEhB,eAAO,MAAM,wBAAwB;;;;;;qCAanC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBASpB,CAAC;AAEhB,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAEjB,CAAC;AAEH,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCAAiD,CAAC;AAEtE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAQjB,CAAC;AAEhB,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC9E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACxE,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAC1F,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAC9F,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACpE,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AACpF,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACpE,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|