@overkill-dev/run 0.0.4 → 0.0.6
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/assertion-protocol/assertion-evaluation.js +6 -0
- package/assertion-protocol/assertion-evaluation.js.map +1 -0
- package/assertion-protocol/assertion-node.js +33 -0
- package/assertion-protocol/assertion-node.js.map +1 -0
- package/assertion-protocol/assertion-reference.js +49 -0
- package/assertion-protocol/assertion-reference.js.map +1 -0
- package/assertion-protocol/assertions/boolean.js +12 -0
- package/assertion-protocol/assertions/boolean.js.map +1 -0
- package/assertion-protocol/assertions/collection.js +21 -0
- package/assertion-protocol/assertions/collection.js.map +1 -0
- package/assertion-protocol/assertions/dispatch.js +47 -0
- package/assertion-protocol/assertions/dispatch.js.map +1 -0
- package/assertion-protocol/assertions/equality.js +24 -0
- package/assertion-protocol/assertions/equality.js.map +1 -0
- package/assertion-protocol/assertions/fail.js +8 -0
- package/assertion-protocol/assertions/fail.js.map +1 -0
- package/assertion-protocol/assertions/numeric.js +43 -0
- package/assertion-protocol/assertions/numeric.js.map +1 -0
- package/assertion-protocol/assertions/partial.js +17 -0
- package/assertion-protocol/assertions/partial.js.map +1 -0
- package/assertion-protocol/assertions/presence.js +20 -0
- package/assertion-protocol/assertions/presence.js.map +1 -0
- package/assertion-protocol/assertions/string.js +33 -0
- package/assertion-protocol/assertions/string.js.map +1 -0
- package/assertion-protocol/assertions/type-shape.js +43 -0
- package/assertion-protocol/assertions/type-shape.js.map +1 -0
- package/assertion-protocol/collection-count.js +42 -0
- package/assertion-protocol/collection-count.js.map +1 -0
- package/assertion-protocol/evaluation.js +170 -0
- package/assertion-protocol/evaluation.js.map +1 -0
- package/assertion-protocol/partial-matching.js +13 -0
- package/assertion-protocol/partial-matching.js.map +1 -0
- package/assertion-protocol/source-location.js +76 -0
- package/assertion-protocol/source-location.js.map +1 -0
- package/assertion-protocol/thrown-error-record.js +17 -0
- package/assertion-protocol/thrown-error-record.js.map +1 -0
- package/assertion-protocol/thrown-matcher.js +201 -0
- package/assertion-protocol/thrown-matcher.js.map +1 -0
- package/compare/comparison-result.js +47 -0
- package/compare/comparison-result.js.map +1 -0
- package/compare/comparison-state.js +20 -0
- package/compare/comparison-state.js.map +1 -0
- package/compare/comparison.js +78 -0
- package/compare/comparison.js.map +1 -0
- package/compare/diff-path.js +37 -0
- package/compare/diff-path.js.map +1 -0
- package/compare/raw-comparison.js +285 -0
- package/compare/raw-comparison.js.map +1 -0
- package/compare/serialized-value-classification.js +99 -0
- package/compare/serialized-value-classification.js.map +1 -0
- package/compare/serialized-value-shape.js +12 -0
- package/compare/serialized-value-shape.js.map +1 -0
- package/compare/serialized-value-state.js +55 -0
- package/compare/serialized-value-state.js.map +1 -0
- package/compare/serialized-value.js +387 -0
- package/compare/serialized-value.js.map +1 -0
- package/compare/structured-diff.js +382 -0
- package/compare/structured-diff.js.map +1 -0
- package/compare/value-classification.js +112 -0
- package/compare/value-classification.js.map +1 -0
- package/diff/binary-diff.js +49 -0
- package/diff/binary-diff.js.map +1 -0
- package/diff/string-diff.js +22 -0
- package/diff/string-diff.js.map +1 -0
- package/engine/assertion-facade.js +361 -0
- package/engine/assertion-facade.js.map +1 -0
- package/engine/case-execution.js +408 -0
- package/engine/case-execution.js.map +1 -0
- package/engine/custom-assertion-recording.js +175 -0
- package/engine/custom-assertion-recording.js.map +1 -0
- package/engine/execution.d.ts +20 -0
- package/engine/execution.d.ts.map +1 -0
- package/engine/execution.js +323 -0
- package/engine/execution.js.map +1 -0
- package/engine/identity.js +5 -0
- package/engine/identity.js.map +1 -0
- package/engine/reporter-event-queue.js +23 -0
- package/engine/reporter-event-queue.js.map +1 -0
- package/engine/reporter.js +177 -0
- package/engine/reporter.js.map +1 -0
- package/engine/require-assertion-facade.js +127 -0
- package/engine/require-assertion-facade.js.map +1 -0
- package/engine/run-result.js +13 -0
- package/engine/run-result.js.map +1 -0
- package/package.json +17 -3
- package/packages/engine/assertion-protocol.entry-point.js +4 -0
- package/packages/engine/assertion-protocol.entry-point.js.map +1 -0
- package/packages/run/command-line.entry-point.d.ts +5 -0
- package/packages/run/command-line.entry-point.d.ts.map +1 -0
- package/packages/run/command-line.entry-point.js +3 -0
- package/packages/run/command-line.entry-point.js.map +1 -0
- package/packages/run/run.entry-point.d.ts +2 -2
- package/packages/run/run.entry-point.d.ts.map +1 -1
- package/packages/run/run.entry-point.js +1 -1
- package/packages/run/run.entry-point.js.map +1 -1
- package/readme.md +16 -2
- package/run/command-line-runner.d.ts +35 -0
- package/run/command-line-runner.d.ts.map +1 -0
- package/run/command-line-runner.js +109 -0
- package/run/command-line-runner.js.map +1 -0
- package/run/run-config.d.ts +24 -0
- package/run/run-config.d.ts.map +1 -0
- package/run/run-config.js +123 -0
- package/run/run-config.js.map +1 -0
- package/run/run.d.ts +86 -36
- package/run/run.d.ts.map +1 -1
- package/run/run.js +177 -8
- package/run/run.js.map +1 -1
- package/sbom.cdx.json +74 -6
package/run/run.d.ts
CHANGED
|
@@ -1,65 +1,115 @@
|
|
|
1
|
+
import { type SerializedValue as SerializedValueShape } from '../compare/serialized-value.ts';
|
|
2
|
+
import { type Execute } from '../engine/execution.ts';
|
|
1
3
|
import type { CaseId } from '../engine/identity.ts';
|
|
2
|
-
import type
|
|
4
|
+
import { type Reporter } from '../engine/reporter.ts';
|
|
5
|
+
import type { RunResult } from '../engine/run-result.ts';
|
|
3
6
|
import type { TestPlan } from '../engine/test-plan.ts';
|
|
7
|
+
export type SerializedValue = SerializedValueShape;
|
|
4
8
|
export type RunSelection = {
|
|
5
|
-
readonly kind: 'all'
|
|
6
|
-
readonly value: string | null;
|
|
9
|
+
readonly kind: 'all';
|
|
7
10
|
};
|
|
8
11
|
export type RunShard = {
|
|
9
12
|
readonly index: number;
|
|
10
13
|
readonly total: number;
|
|
11
14
|
};
|
|
12
15
|
export type RunExecutionRequest = {
|
|
13
|
-
readonly mode:
|
|
14
|
-
readonly workers: number;
|
|
16
|
+
readonly mode: 'concurrent-in-process';
|
|
15
17
|
};
|
|
16
18
|
export type RunSeed = {
|
|
17
19
|
readonly value: bigint | null;
|
|
18
20
|
};
|
|
19
21
|
export type RunDebugRequest = {
|
|
20
|
-
readonly mode: '
|
|
21
|
-
readonly selectors: readonly
|
|
22
|
+
readonly mode: 'off';
|
|
23
|
+
readonly selectors: readonly [];
|
|
24
|
+
};
|
|
25
|
+
export type RunLoaderConfig = {
|
|
26
|
+
readonly sourceMaps: boolean;
|
|
27
|
+
readonly stripMode: 'strip-only' | 'transform';
|
|
28
|
+
};
|
|
29
|
+
export type RunConfig = {
|
|
30
|
+
readonly loader: RunLoaderConfig;
|
|
31
|
+
readonly reporters: readonly Reporter[];
|
|
32
|
+
readonly runtimeStateDir: string;
|
|
22
33
|
};
|
|
23
34
|
export type RunRequest = {
|
|
35
|
+
readonly baselineUpdateMode: 'none';
|
|
36
|
+
readonly capture: 'buffered' | 'live';
|
|
37
|
+
readonly coverage: false;
|
|
38
|
+
readonly debug: RunDebugRequest;
|
|
39
|
+
readonly execution: RunExecutionRequest;
|
|
40
|
+
readonly order: 'plan';
|
|
24
41
|
readonly paths: readonly string[];
|
|
42
|
+
readonly profile: 'microtest';
|
|
43
|
+
readonly seed: RunSeed;
|
|
25
44
|
readonly selection: RunSelection;
|
|
26
45
|
readonly shard: RunShard;
|
|
27
|
-
readonly
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
readonly
|
|
31
|
-
readonly
|
|
32
|
-
readonly
|
|
33
|
-
readonly debug: RunDebugRequest;
|
|
34
|
-
readonly configPath: string | null;
|
|
46
|
+
readonly verbose: false;
|
|
47
|
+
};
|
|
48
|
+
export type RunCommand = {
|
|
49
|
+
readonly config: RunConfig;
|
|
50
|
+
readonly request: RunRequest;
|
|
51
|
+
readonly testPlan: TestPlan;
|
|
35
52
|
};
|
|
36
53
|
export type RunFacts = {
|
|
37
|
-
readonly
|
|
38
|
-
readonly
|
|
39
|
-
readonly
|
|
40
|
-
readonly
|
|
41
|
-
readonly
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
readonly
|
|
54
|
+
readonly cases: readonly RunCaseFacts[];
|
|
55
|
+
readonly environment: RunEnvironmentFacts;
|
|
56
|
+
readonly execution: RunExecutionFacts;
|
|
57
|
+
readonly loader: RunLoaderConfig;
|
|
58
|
+
readonly reproducibility: RunReproducibilityFacts;
|
|
59
|
+
};
|
|
60
|
+
export type RunCaseFacts = {
|
|
61
|
+
readonly id: CaseId;
|
|
62
|
+
readonly metadata: SerializedValue;
|
|
63
|
+
};
|
|
64
|
+
export type RunEnvironmentFacts = {
|
|
65
|
+
readonly node: {
|
|
66
|
+
readonly arch: string;
|
|
67
|
+
readonly platform: string;
|
|
68
|
+
readonly version: string;
|
|
50
69
|
};
|
|
51
|
-
readonly
|
|
70
|
+
readonly runtimeStateDir: string;
|
|
52
71
|
};
|
|
53
|
-
export type
|
|
54
|
-
readonly
|
|
55
|
-
readonly
|
|
72
|
+
export type RunExecutionFacts = {
|
|
73
|
+
readonly baselineUpdateMode: 'none';
|
|
74
|
+
readonly capture: 'buffered' | 'live';
|
|
75
|
+
readonly coverage: false;
|
|
76
|
+
readonly debug: RunDebugRequest;
|
|
77
|
+
readonly mode: 'concurrent-in-process';
|
|
78
|
+
readonly order: 'plan';
|
|
79
|
+
readonly profile: 'microtest';
|
|
80
|
+
readonly verbose: false;
|
|
81
|
+
};
|
|
82
|
+
export type RunReproducibilityFacts = {
|
|
83
|
+
readonly seed: string;
|
|
84
|
+
readonly shard: RunShard;
|
|
56
85
|
};
|
|
57
86
|
export type ResolvedRun = {
|
|
58
|
-
readonly
|
|
87
|
+
readonly config: RunConfig;
|
|
59
88
|
readonly facts: RunFacts;
|
|
60
|
-
readonly testPlan: TestPlan;
|
|
61
89
|
readonly reporters: readonly Reporter[];
|
|
90
|
+
readonly request: RunRequest;
|
|
91
|
+
readonly testPlan: TestPlan;
|
|
92
|
+
};
|
|
93
|
+
export type RunResolutionErrorCode = 'invalid-request' | 'unsupported-request';
|
|
94
|
+
export declare class RunResolutionError extends Error {
|
|
95
|
+
private readonly errorCode;
|
|
96
|
+
constructor(message: string, options: Readonly<ErrorOptions> | undefined, code: RunResolutionErrorCode);
|
|
97
|
+
code(): RunResolutionErrorCode;
|
|
98
|
+
}
|
|
99
|
+
export type RunOrchestratorDependencies = {
|
|
100
|
+
readonly createSeed: () => bigint;
|
|
101
|
+
readonly execute: Execute;
|
|
102
|
+
readonly node: {
|
|
103
|
+
readonly arch: string;
|
|
104
|
+
readonly platform: string;
|
|
105
|
+
readonly version: string;
|
|
106
|
+
};
|
|
107
|
+
readonly readStartedAt: () => string;
|
|
108
|
+
};
|
|
109
|
+
export type RunOrchestrator = {
|
|
110
|
+
readonly resolve: (command: RunCommand) => Promise<ResolvedRun>;
|
|
111
|
+
readonly run: (command: RunCommand) => Promise<RunResult>;
|
|
62
112
|
};
|
|
63
|
-
export declare function
|
|
64
|
-
export declare
|
|
113
|
+
export declare function createRunOrchestrator(dependencies: RunOrchestratorDependencies): RunOrchestrator;
|
|
114
|
+
export declare const orchestrator: RunOrchestrator;
|
|
65
115
|
//# sourceMappingURL=run.d.ts.map
|
package/run/run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../source/run/run.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../source/run/run.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,KAAK,eAAe,IAAI,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAC9G,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAA4B,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAKvD,MAAM,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAEnD,MAAM,MAAM,YAAY,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IAClB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC1B,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC1B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,YAAY,GAAG,WAAW,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACpB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAC;IACxC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACrB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACnB,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,uBAAuB,CAAC;CACrD,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE;QACX,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,GAAG,qBAAqB,CAAC;AAE/E,qBAAa,kBAAmB,SAAQ,KAAK;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;gBAEhC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE,sBAAsB;IAMtG,IAAI,IAAI,sBAAsB;CAGxC;AAED,MAAM,MAAM,2BAA2B,GAAG;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,MAAM,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE;QACX,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,QAAQ,CAAC,aAAa,EAAE,MAAM,MAAM,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC1B,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAChE,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;CAC7D,CAAC;AAuJF,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,2BAA2B,GAAG,eAAe,CAiBhG;AAyBD,eAAO,MAAM,YAAY,EAAE,eAAwC,CAAC"}
|
package/run/run.js
CHANGED
|
@@ -1,12 +1,181 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { randomBytes } from 'node:crypto';
|
|
2
|
+
import { createWallClock } from '@enormora/wall-clock';
|
|
3
|
+
import { serializeValue } from "../compare/serialized-value.js";
|
|
4
|
+
import { createExecute } from "../engine/execution.js";
|
|
5
|
+
import { createReporterDispatcher } from "../engine/reporter.js";
|
|
6
|
+
const minimumSeedValue = 0n;
|
|
7
|
+
const seedByteLength = 8;
|
|
8
|
+
export class RunResolutionError extends Error {
|
|
9
|
+
errorCode;
|
|
10
|
+
constructor(message, options, code) {
|
|
11
|
+
super(message, options);
|
|
12
|
+
this.name = 'RunResolutionError';
|
|
13
|
+
this.errorCode = code;
|
|
14
|
+
}
|
|
15
|
+
code() {
|
|
16
|
+
return this.errorCode;
|
|
17
|
+
}
|
|
3
18
|
}
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
throw new Error('resolveRun() is not implemented yet.');
|
|
19
|
+
function unsupportedRequest(message) {
|
|
20
|
+
throw new RunResolutionError(message, undefined, 'unsupported-request');
|
|
7
21
|
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
throw new Error('run() is not implemented yet.');
|
|
22
|
+
function invalidRequest(message) {
|
|
23
|
+
throw new RunResolutionError(message, undefined, 'invalid-request');
|
|
11
24
|
}
|
|
25
|
+
function validateRunPaths(request) {
|
|
26
|
+
if (request.paths.length > 0) {
|
|
27
|
+
unsupportedRequest('Path discovery is not implemented yet.');
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
function validateRunShard(request) {
|
|
31
|
+
if (request.shard.index !== 0 || request.shard.total !== 1) {
|
|
32
|
+
unsupportedRequest('Sharding is not implemented yet.');
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
function validateRunSeed(request) {
|
|
36
|
+
if (request.seed.value !== null && request.seed.value < minimumSeedValue) {
|
|
37
|
+
invalidRequest('Run seed must be a nonnegative bigint.');
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
function validateRunRequest(request) {
|
|
41
|
+
validateRunPaths(request);
|
|
42
|
+
validateRunShard(request);
|
|
43
|
+
validateRunSeed(request);
|
|
44
|
+
}
|
|
45
|
+
function resolvedSeed(request, dependencies) {
|
|
46
|
+
return request.seed.value ?? dependencies.createSeed();
|
|
47
|
+
}
|
|
48
|
+
function copyLoaderConfig(loader) {
|
|
49
|
+
return {
|
|
50
|
+
sourceMaps: loader.sourceMaps,
|
|
51
|
+
stripMode: loader.stripMode
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
function copyRunShard(shard) {
|
|
55
|
+
return {
|
|
56
|
+
index: shard.index,
|
|
57
|
+
total: shard.total
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
function copyRunRequest(request) {
|
|
61
|
+
return {
|
|
62
|
+
baselineUpdateMode: request.baselineUpdateMode,
|
|
63
|
+
capture: request.capture,
|
|
64
|
+
coverage: request.coverage,
|
|
65
|
+
debug: {
|
|
66
|
+
mode: request.debug.mode,
|
|
67
|
+
selectors: []
|
|
68
|
+
},
|
|
69
|
+
execution: { mode: request.execution.mode },
|
|
70
|
+
order: request.order,
|
|
71
|
+
paths: Array.from(request.paths),
|
|
72
|
+
profile: request.profile,
|
|
73
|
+
seed: { value: request.seed.value },
|
|
74
|
+
selection: { kind: request.selection.kind },
|
|
75
|
+
shard: copyRunShard(request.shard),
|
|
76
|
+
verbose: request.verbose
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
function copyRunConfig(config) {
|
|
80
|
+
return {
|
|
81
|
+
loader: copyLoaderConfig(config.loader),
|
|
82
|
+
reporters: Array.from(config.reporters),
|
|
83
|
+
runtimeStateDir: config.runtimeStateDir
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
function runCaseFacts(metadata, id) {
|
|
87
|
+
return {
|
|
88
|
+
id,
|
|
89
|
+
metadata: serializeValue(metadata)
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function createRunFacts(command, request, config, dependencies) {
|
|
93
|
+
return {
|
|
94
|
+
cases: command.testPlan.cases.map(function toRunCaseFacts(testCase) {
|
|
95
|
+
return runCaseFacts(testCase.metadata, testCase.id);
|
|
96
|
+
}),
|
|
97
|
+
environment: {
|
|
98
|
+
node: {
|
|
99
|
+
arch: dependencies.node.arch,
|
|
100
|
+
platform: dependencies.node.platform,
|
|
101
|
+
version: dependencies.node.version
|
|
102
|
+
},
|
|
103
|
+
runtimeStateDir: config.runtimeStateDir
|
|
104
|
+
},
|
|
105
|
+
execution: {
|
|
106
|
+
baselineUpdateMode: request.baselineUpdateMode,
|
|
107
|
+
capture: request.capture,
|
|
108
|
+
coverage: request.coverage,
|
|
109
|
+
debug: request.debug,
|
|
110
|
+
mode: request.execution.mode,
|
|
111
|
+
order: request.order,
|
|
112
|
+
profile: request.profile,
|
|
113
|
+
verbose: request.verbose
|
|
114
|
+
},
|
|
115
|
+
loader: config.loader,
|
|
116
|
+
reproducibility: {
|
|
117
|
+
seed: resolvedSeed(request, dependencies).toString(),
|
|
118
|
+
shard: request.shard
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
function freezeValue(value) {
|
|
123
|
+
if (value !== null && typeof value === 'object') {
|
|
124
|
+
for (const propertyValue of Object.values(value)) {
|
|
125
|
+
freezeValue(propertyValue);
|
|
126
|
+
}
|
|
127
|
+
Object.freeze(value);
|
|
128
|
+
}
|
|
129
|
+
return value;
|
|
130
|
+
}
|
|
131
|
+
function createResolvedRun(command, dependencies) {
|
|
132
|
+
validateRunRequest(command.request);
|
|
133
|
+
const request = freezeValue(copyRunRequest(command.request));
|
|
134
|
+
const config = freezeValue(copyRunConfig(command.config));
|
|
135
|
+
const facts = freezeValue(createRunFacts(command, request, config, dependencies));
|
|
136
|
+
return freezeValue({
|
|
137
|
+
config,
|
|
138
|
+
facts,
|
|
139
|
+
reporters: config.reporters,
|
|
140
|
+
request,
|
|
141
|
+
testPlan: command.testPlan
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
export function createRunOrchestrator(dependencies) {
|
|
145
|
+
return {
|
|
146
|
+
async resolve(command) {
|
|
147
|
+
return createResolvedRun(command, dependencies);
|
|
148
|
+
},
|
|
149
|
+
async run(command) {
|
|
150
|
+
const resolvedRun = createResolvedRun(command, dependencies);
|
|
151
|
+
return await dependencies.execute(resolvedRun.testPlan, {
|
|
152
|
+
execution: { mode: 'concurrent-in-process' },
|
|
153
|
+
reporters: resolvedRun.reporters,
|
|
154
|
+
runFacts: resolvedRun.facts,
|
|
155
|
+
startedAt: dependencies.readStartedAt()
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
function createDefaultSeed() {
|
|
161
|
+
return randomBytes(seedByteLength).readBigUInt64BE();
|
|
162
|
+
}
|
|
163
|
+
const defaultWallClock = createWallClock();
|
|
164
|
+
const defaultRunOrchestrator = createRunOrchestrator({
|
|
165
|
+
createSeed: createDefaultSeed,
|
|
166
|
+
execute: createExecute({
|
|
167
|
+
reporterDispatcher: createReporterDispatcher({ wallClock: defaultWallClock }),
|
|
168
|
+
wallClock: defaultWallClock
|
|
169
|
+
}),
|
|
170
|
+
node: {
|
|
171
|
+
arch: process.arch,
|
|
172
|
+
platform: process.platform,
|
|
173
|
+
version: process.versions.node
|
|
174
|
+
},
|
|
175
|
+
readStartedAt() {
|
|
176
|
+
const startedAt = new Date(defaultWallClock.currentTimestampInMilliseconds);
|
|
177
|
+
return startedAt.toISOString();
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
export const orchestrator = defaultRunOrchestrator;
|
|
12
181
|
//# sourceMappingURL=run.js.map
|
package/run/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../source/run/run.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../source/run/run.ts"],"names":[],"mappings":"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"}
|
package/sbom.cdx.json
CHANGED
|
@@ -9,16 +9,16 @@
|
|
|
9
9
|
{
|
|
10
10
|
"type": "application",
|
|
11
11
|
"name": "packtory",
|
|
12
|
-
"version": "0.0.
|
|
12
|
+
"version": "0.0.91"
|
|
13
13
|
}
|
|
14
14
|
]
|
|
15
15
|
},
|
|
16
16
|
"component": {
|
|
17
17
|
"type": "library",
|
|
18
18
|
"name": "@overkill-dev/run",
|
|
19
|
-
"version": "0.0.
|
|
20
|
-
"bom-ref": "pkg:npm/@overkill-dev/run@0.0.
|
|
21
|
-
"purl": "pkg:npm/@overkill-dev/run@0.0.
|
|
19
|
+
"version": "0.0.6",
|
|
20
|
+
"bom-ref": "pkg:npm/@overkill-dev/run@0.0.6",
|
|
21
|
+
"purl": "pkg:npm/@overkill-dev/run@0.0.6"
|
|
22
22
|
}
|
|
23
23
|
},
|
|
24
24
|
"components": [
|
|
@@ -34,6 +34,58 @@
|
|
|
34
34
|
}
|
|
35
35
|
],
|
|
36
36
|
"purl": "pkg:npm/@enormora/wall-clock@0.0.3"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"type": "library",
|
|
40
|
+
"name": "@overkill-dev/reporter-line",
|
|
41
|
+
"version": "0.0.6",
|
|
42
|
+
"bom-ref": "pkg:npm/@overkill-dev/reporter-line@0.0.6",
|
|
43
|
+
"scope": "required",
|
|
44
|
+
"licenses": [
|
|
45
|
+
{
|
|
46
|
+
"expression": "MIT"
|
|
47
|
+
}
|
|
48
|
+
],
|
|
49
|
+
"purl": "pkg:npm/@overkill-dev/reporter-line@0.0.6"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"type": "library",
|
|
53
|
+
"name": "@schema-hub/zod-error-formatter",
|
|
54
|
+
"version": "0.0.15",
|
|
55
|
+
"bom-ref": "pkg:npm/@schema-hub/zod-error-formatter@0.0.15",
|
|
56
|
+
"scope": "required",
|
|
57
|
+
"licenses": [
|
|
58
|
+
{
|
|
59
|
+
"expression": "MIT"
|
|
60
|
+
}
|
|
61
|
+
],
|
|
62
|
+
"purl": "pkg:npm/@schema-hub/zod-error-formatter@0.0.15"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"type": "library",
|
|
66
|
+
"name": "diff",
|
|
67
|
+
"version": "9.0.0",
|
|
68
|
+
"bom-ref": "pkg:npm/diff@9.0.0",
|
|
69
|
+
"scope": "required",
|
|
70
|
+
"licenses": [
|
|
71
|
+
{
|
|
72
|
+
"expression": "BSD-3-Clause"
|
|
73
|
+
}
|
|
74
|
+
],
|
|
75
|
+
"purl": "pkg:npm/diff@9.0.0"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"type": "library",
|
|
79
|
+
"name": "zod",
|
|
80
|
+
"version": "4.4.3",
|
|
81
|
+
"bom-ref": "pkg:npm/zod@4.4.3",
|
|
82
|
+
"scope": "required",
|
|
83
|
+
"licenses": [
|
|
84
|
+
{
|
|
85
|
+
"expression": "MIT"
|
|
86
|
+
}
|
|
87
|
+
],
|
|
88
|
+
"purl": "pkg:npm/zod@4.4.3"
|
|
37
89
|
}
|
|
38
90
|
],
|
|
39
91
|
"dependencies": [
|
|
@@ -41,10 +93,26 @@
|
|
|
41
93
|
"ref": "pkg:npm/@enormora/wall-clock@0.0.3"
|
|
42
94
|
},
|
|
43
95
|
{
|
|
44
|
-
"ref": "pkg:npm/@overkill-dev/
|
|
96
|
+
"ref": "pkg:npm/@overkill-dev/reporter-line@0.0.6"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"ref": "pkg:npm/@overkill-dev/run@0.0.6",
|
|
45
100
|
"dependsOn": [
|
|
46
|
-
"pkg:npm/@enormora/wall-clock@0.0.3"
|
|
101
|
+
"pkg:npm/@enormora/wall-clock@0.0.3",
|
|
102
|
+
"pkg:npm/@overkill-dev/reporter-line@0.0.6",
|
|
103
|
+
"pkg:npm/@schema-hub/zod-error-formatter@0.0.15",
|
|
104
|
+
"pkg:npm/diff@9.0.0",
|
|
105
|
+
"pkg:npm/zod@4.4.3"
|
|
47
106
|
]
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"ref": "pkg:npm/@schema-hub/zod-error-formatter@0.0.15"
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"ref": "pkg:npm/diff@9.0.0"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"ref": "pkg:npm/zod@4.4.3"
|
|
48
116
|
}
|
|
49
117
|
]
|
|
50
118
|
}
|