@overkill-dev/engine 0.0.47 → 0.0.49
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/assertions/boolean.d.ts +0 -7
- package/assertion-protocol/assertions/boolean.d.ts.map +1 -1
- package/assertion-protocol/assertions/collection.d.ts +0 -9
- package/assertion-protocol/assertions/collection.d.ts.map +1 -1
- package/assertion-protocol/assertions/equality.d.ts +0 -11
- package/assertion-protocol/assertions/equality.d.ts.map +1 -1
- package/assertion-protocol/assertions/fail.d.ts +0 -5
- package/assertion-protocol/assertions/fail.d.ts.map +1 -1
- package/assertion-protocol/assertions/numeric.d.ts +0 -13
- package/assertion-protocol/assertions/numeric.d.ts.map +1 -1
- package/assertion-protocol/assertions/partial.d.ts +0 -9
- package/assertion-protocol/assertions/partial.d.ts.map +1 -1
- package/assertion-protocol/assertions/presence.d.ts +0 -11
- package/assertion-protocol/assertions/presence.d.ts.map +1 -1
- package/assertion-protocol/assertions/string.d.ts +0 -13
- package/assertion-protocol/assertions/string.d.ts.map +1 -1
- package/assertion-protocol/assertions/type-shape.d.ts +0 -19
- package/assertion-protocol/assertions/type-shape.d.ts.map +1 -1
- package/assertion-protocol/source-location-forwarding.d.ts +0 -1
- package/assertion-protocol/source-location-forwarding.d.ts.map +1 -1
- package/assertion-protocol/source-location-forwarding.js +15 -3
- package/assertion-protocol/source-location-forwarding.js.map +1 -1
- package/assertion-protocol/source-location.d.ts +0 -1
- package/assertion-protocol/source-location.d.ts.map +1 -1
- package/assertion-protocol/source-location.js +1 -0
- package/assertion-protocol/source-location.js.map +1 -1
- package/assertion-protocol/thrown-matcher.d.ts +1 -2
- package/assertion-protocol/thrown-matcher.d.ts.map +1 -1
- package/compare/serialized-value-shape.d.ts +0 -1
- package/compare/serialized-value-shape.d.ts.map +1 -1
- package/compare/value-classification.d.ts +0 -23
- package/compare/value-classification.d.ts.map +1 -1
- package/engine/assertion-facade.d.ts +2 -5
- package/engine/assertion-facade.d.ts.map +1 -1
- package/engine/async-control.d.ts +0 -26
- package/engine/async-control.d.ts.map +1 -1
- package/engine/async-leak-diagnostics.js +9 -9
- package/engine/async-leak-diagnostics.js.map +1 -1
- package/engine/case-attempt-execution.js +191 -0
- package/engine/case-attempt-execution.js.map +1 -0
- package/engine/case-execution.d.ts +5 -16
- package/engine/case-execution.d.ts.map +1 -1
- package/engine/case-execution.js +25 -24
- package/engine/case-execution.js.map +1 -1
- package/engine/coverage-artifact.d.ts +1 -0
- package/engine/coverage-artifact.d.ts.map +1 -1
- package/engine/custom-assertion-recording.js +1 -1
- package/engine/custom-assertion-recording.js.map +1 -1
- package/engine/engine.d.ts +1 -8
- package/engine/engine.d.ts.map +1 -1
- package/engine/execution-async-leak-policy.js +3 -10
- package/engine/execution-async-leak-policy.js.map +1 -1
- package/engine/execution-global-error-observer.d.ts +2 -4
- package/engine/execution-global-error-observer.d.ts.map +1 -1
- package/engine/execution-global-error-observer.js +20 -46
- package/engine/execution-global-error-observer.js.map +1 -1
- package/engine/execution-options.d.ts +4 -7
- package/engine/execution-options.d.ts.map +1 -1
- package/engine/execution-options.js +7 -2
- package/engine/execution-options.js.map +1 -1
- package/engine/execution-resource-budget-breach.d.ts +0 -9
- package/engine/execution-resource-budget-breach.d.ts.map +1 -1
- package/engine/execution-resource-budget-tracking.js.map +1 -1
- package/engine/execution-resource-tracked-cases.js.map +1 -1
- package/engine/execution-result.js.map +1 -1
- package/engine/execution-supervision-state.js.map +1 -1
- package/engine/execution-supervision.d.ts +0 -16
- package/engine/execution-supervision.d.ts.map +1 -1
- package/engine/execution-supervision.js +50 -33
- package/engine/execution-supervision.js.map +1 -1
- package/engine/execution-test-plan-cases.js +6 -126
- package/engine/execution-test-plan-cases.js.map +1 -1
- package/engine/execution-test-plan-resource-usage.js.map +1 -1
- package/engine/execution.d.ts +0 -10
- package/engine/execution.d.ts.map +1 -1
- package/engine/execution.js +3 -3
- package/engine/execution.js.map +1 -1
- package/engine/identity.d.ts +3 -0
- package/engine/identity.d.ts.map +1 -1
- package/engine/identity.js +6 -1
- package/engine/identity.js.map +1 -1
- package/engine/reporter-dispatcher.d.ts +0 -4
- package/engine/reporter-dispatcher.d.ts.map +1 -1
- package/engine/reporter-dispatcher.js +1 -0
- package/engine/reporter-dispatcher.js.map +1 -1
- package/engine/reporter-event-queue.js.map +1 -1
- package/engine/reporter-output-scope.js +1 -21
- package/engine/reporter-output-scope.js.map +1 -1
- package/engine/reporter.d.ts +2 -1
- package/engine/reporter.d.ts.map +1 -1
- package/engine/reporter.js.map +1 -1
- package/engine/require-assertion-facade.d.ts +2 -5
- package/engine/require-assertion-facade.d.ts.map +1 -1
- package/engine/resource-usage.d.ts +22 -0
- package/engine/resource-usage.d.ts.map +1 -0
- package/engine/retry-policy.d.ts +4 -0
- package/engine/retry-policy.d.ts.map +1 -0
- package/engine/retry-policy.js +22 -0
- package/engine/retry-policy.js.map +1 -0
- package/engine/run-artifact.d.ts +45 -0
- package/engine/run-artifact.d.ts.map +1 -0
- package/engine/run-result.d.ts +17 -72
- package/engine/run-result.d.ts.map +1 -1
- package/engine/run-result.js +15 -12
- package/engine/run-result.js.map +1 -1
- package/engine/run-timings.d.ts +0 -18
- package/engine/run-timings.d.ts.map +1 -1
- package/engine/run-timings.js +1 -51
- package/engine/run-timings.js.map +1 -1
- package/engine/runner-error-reporting.js.map +1 -1
- package/engine/test-attempt-history.js +24 -0
- package/engine/test-attempt-history.js.map +1 -0
- package/engine/test-data.d.ts +0 -6
- package/engine/test-data.d.ts.map +1 -1
- package/engine/test-node.d.ts +0 -19
- package/engine/test-node.d.ts.map +1 -1
- package/engine/test-plan.d.ts +1 -3
- package/engine/test-plan.d.ts.map +1 -1
- package/package.json +14 -4
- package/packages/engine/engine.entry-point.d.ts +6 -1
- package/packages/engine/engine.entry-point.d.ts.map +1 -1
- package/packages/engine/engine.entry-point.js +29 -1
- package/packages/engine/engine.entry-point.js.map +1 -1
- package/readme.md +16 -1
- package/sbom.cdx.json +5 -5
- package/assertion-protocol/assertion-evaluation.d.ts +0 -13
- package/assertion-protocol/assertion-evaluation.d.ts.map +0 -1
- package/assertion-protocol/evaluation.d.ts +0 -32
- package/assertion-protocol/evaluation.d.ts.map +0 -1
- package/compare/comparison-result.d.ts +0 -25
- package/compare/comparison-result.d.ts.map +0 -1
- package/compare/comparison.d.ts +0 -12
- package/compare/comparison.d.ts.map +0 -1
- package/engine/async-leak-diagnostics.d.ts +0 -27
- package/engine/async-leak-diagnostics.d.ts.map +0 -1
- package/engine/custom-assertion-recording.d.ts +0 -33
- package/engine/custom-assertion-recording.d.ts.map +0 -1
- package/engine/execution-async-leak-policy.d.ts +0 -24
- package/engine/execution-async-leak-policy.d.ts.map +0 -1
- package/engine/execution-supervision-state.d.ts +0 -30
- package/engine/execution-supervision-state.d.ts.map +0 -1
- package/engine/reporter-disposal.d.ts +0 -6
- package/engine/reporter-disposal.d.ts.map +0 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
|
-
import { caseIdentityKey } from "./identity.js";
|
|
3
2
|
import { permissionDeniedRunnerErrorFromThrown } from "./run-result.js";
|
|
3
|
+
const runScopeStorage = new AsyncLocalStorage();
|
|
4
|
+
const activeCaseStorage = new AsyncLocalStorage();
|
|
4
5
|
function createStoredValue(initialValue) {
|
|
5
6
|
let currentValue = initialValue;
|
|
6
7
|
return {
|
|
@@ -111,41 +112,7 @@ function createActiveScopes() {
|
|
|
111
112
|
}
|
|
112
113
|
};
|
|
113
114
|
}
|
|
114
|
-
|
|
115
|
-
const neverFatal = Promise.race([]);
|
|
116
|
-
return {
|
|
117
|
-
async fatalSignal() {
|
|
118
|
-
await neverFatal;
|
|
119
|
-
},
|
|
120
|
-
hasFatalError() {
|
|
121
|
-
return false;
|
|
122
|
-
},
|
|
123
|
-
onFatalError() {
|
|
124
|
-
return function removeDisabledFatalHandler() {
|
|
125
|
-
return undefined;
|
|
126
|
-
};
|
|
127
|
-
},
|
|
128
|
-
async runBoundary(run) {
|
|
129
|
-
return await run();
|
|
130
|
-
},
|
|
131
|
-
async runCase(_testCase, run) {
|
|
132
|
-
return await run();
|
|
133
|
-
},
|
|
134
|
-
async runPhase(_phase, run) {
|
|
135
|
-
return await run();
|
|
136
|
-
},
|
|
137
|
-
stop() {
|
|
138
|
-
return undefined;
|
|
139
|
-
},
|
|
140
|
-
takeErrors() {
|
|
141
|
-
return [];
|
|
142
|
-
}
|
|
143
|
-
};
|
|
144
|
-
}
|
|
145
|
-
const runScopeStorage = new AsyncLocalStorage();
|
|
146
|
-
const activeCaseStorage = new AsyncLocalStorage();
|
|
147
|
-
const activeScopes = createActiveScopes();
|
|
148
|
-
const listenersInstalled = createStoredValue(false);
|
|
115
|
+
|
|
149
116
|
function serializedReason(reason) {
|
|
150
117
|
if (reason instanceof Error) {
|
|
151
118
|
return {
|
|
@@ -167,14 +134,16 @@ function hookMessage(hook, reason) {
|
|
|
167
134
|
const label = hook === 'uncaughtException' ? 'Uncaught exception' : 'Unhandled rejection';
|
|
168
135
|
return `${label}: ${reason.message}`;
|
|
169
136
|
}
|
|
137
|
+
function hookOrigin(activeCase) {
|
|
138
|
+
return activeCase === null
|
|
139
|
+
? { attempt: null, case: null, work: null }
|
|
140
|
+
: { attempt: activeCase.attempt, case: activeCase.id, work: activeCase.workId };
|
|
141
|
+
}
|
|
170
142
|
function hookCause(scope, hook, reason, activeCase) {
|
|
171
143
|
return {
|
|
172
144
|
boundary: scope.boundary,
|
|
173
145
|
hook,
|
|
174
|
-
origin:
|
|
175
|
-
case: activeCase?.id ?? null,
|
|
176
|
-
work: activeCase?.workId ?? null
|
|
177
|
-
},
|
|
146
|
+
origin: hookOrigin(activeCase),
|
|
178
147
|
phase: activeCase === null ? scope.phase() : 'body',
|
|
179
148
|
reason: serializedReason(reason)
|
|
180
149
|
};
|
|
@@ -182,6 +151,7 @@ function hookCause(scope, hook, reason, activeCase) {
|
|
|
182
151
|
function attributedError(scope, hook, reason, activeCase) {
|
|
183
152
|
const cause = hookCause(scope, hook, reason, activeCase);
|
|
184
153
|
return {
|
|
154
|
+
attributedToAttempt: activeCase.attempt,
|
|
185
155
|
attributedTo: activeCase.id,
|
|
186
156
|
attributedToWork: activeCase.workId,
|
|
187
157
|
cause,
|
|
@@ -193,6 +163,7 @@ function attributedError(scope, hook, reason, activeCase) {
|
|
|
193
163
|
function runLevelHookError(scope, hook, reason) {
|
|
194
164
|
const cause = hookCause(scope, hook, reason, null);
|
|
195
165
|
return {
|
|
166
|
+
attributedToAttempt: null,
|
|
196
167
|
attributedTo: null,
|
|
197
168
|
attributedToWork: null,
|
|
198
169
|
cause,
|
|
@@ -204,6 +175,7 @@ function runLevelHookError(scope, hook, reason) {
|
|
|
204
175
|
function attributionDriftError(scope, hook, reason, activeCase) {
|
|
205
176
|
const cause = hookCause(scope, hook, reason, activeCase);
|
|
206
177
|
return {
|
|
178
|
+
attributedToAttempt: null,
|
|
207
179
|
attributedTo: null,
|
|
208
180
|
attributedToWork: null,
|
|
209
181
|
cause,
|
|
@@ -219,7 +191,7 @@ function activePermissionCase(input) {
|
|
|
219
191
|
if (!scopeIncludesCase(input.scope, input.activeCase)) {
|
|
220
192
|
return null;
|
|
221
193
|
}
|
|
222
|
-
return input.scope.hasActiveCase(input.activeCase
|
|
194
|
+
return input.scope.hasActiveCase(input.activeCase) ? input.activeCase : null;
|
|
223
195
|
}
|
|
224
196
|
function permissionErrorForScope(input) {
|
|
225
197
|
const activeCase = activePermissionCase(input);
|
|
@@ -243,11 +215,13 @@ function errorForScope(input) {
|
|
|
243
215
|
if (!scopeIncludesCase(input.scope, input.activeCase)) {
|
|
244
216
|
return runLevelHookError(input.scope, input.hook, input.reason);
|
|
245
217
|
}
|
|
246
|
-
if (input.scope.hasActiveCase(input.activeCase
|
|
218
|
+
if (input.scope.hasActiveCase(input.activeCase)) {
|
|
247
219
|
return attributedError(input.scope, input.hook, input.reason, input.activeCase);
|
|
248
220
|
}
|
|
249
221
|
return attributionDriftError(input.scope, input.hook, input.reason, input.activeCase);
|
|
250
222
|
}
|
|
223
|
+
const activeScopes = createActiveScopes();
|
|
224
|
+
const listenersInstalled = createStoredValue(false);
|
|
251
225
|
function currentTargetScopes() {
|
|
252
226
|
const currentScope = runScopeStorage.getStore();
|
|
253
227
|
if (currentScope !== undefined && activeScopes.includes(currentScope)) {
|
|
@@ -311,19 +285,19 @@ export function createExecutionGlobalErrorObserver(boundary) {
|
|
|
311
285
|
processHookListeners.removeWhenIdle();
|
|
312
286
|
}
|
|
313
287
|
},
|
|
314
|
-
async runCase(testCase, run) {
|
|
288
|
+
async runCase(testCase, attempt, run) {
|
|
315
289
|
const activeCase = {
|
|
290
|
+
attempt,
|
|
316
291
|
id: testCase.id,
|
|
317
|
-
key: caseIdentityKey(testCase.id),
|
|
318
292
|
scope,
|
|
319
293
|
workId: testCase.workId
|
|
320
294
|
};
|
|
321
|
-
scope.activeCaseStarted(activeCase
|
|
295
|
+
scope.activeCaseStarted(activeCase);
|
|
322
296
|
try {
|
|
323
297
|
return await activeCaseStorage.run(activeCase, run);
|
|
324
298
|
}
|
|
325
299
|
finally {
|
|
326
|
-
scope.activeCaseStopped(activeCase
|
|
300
|
+
scope.activeCaseStopped(activeCase);
|
|
327
301
|
}
|
|
328
302
|
},
|
|
329
303
|
async runPhase(phase, run) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-global-error-observer.js","sourceRoot":"","sources":["../../../../source/engine/execution-global-error-observer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"execution-global-error-observer.js","sourceRoot":"","sources":["../../../../source/engine/execution-global-error-observer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { type DefinedOutputRenderer } from './reporter-output.ts';
|
|
2
2
|
import type { DefinedReporter, RunFacts } from './reporter.ts';
|
|
3
|
-
import type {
|
|
3
|
+
import type { RunResult } from './run-result.ts';
|
|
4
|
+
import type { RunResourceUsageTracker } from './resource-usage.ts';
|
|
4
5
|
import type { ExecuteTimeoutPolicy, ExecutionSupervisionDependencies } from './execution-supervision.ts';
|
|
5
6
|
import type { ExecuteResourceBudgets } from './execution-resource-budget-breach.ts';
|
|
7
|
+
import { type TestRetryPolicy } from './retry-policy.ts';
|
|
6
8
|
export type ExecuteExecution = {
|
|
7
9
|
readonly maxConcurrency: number | 'unlimited';
|
|
8
10
|
readonly mode: 'concurrent-in-process';
|
|
@@ -11,6 +13,7 @@ export type ExecuteExecution = {
|
|
|
11
13
|
};
|
|
12
14
|
export type ExecuteResultFinalizer = (result: RunResult) => Promise<RunResult>;
|
|
13
15
|
export type ExecuteOptions = {
|
|
16
|
+
readonly retryPolicy: TestRetryPolicy | null;
|
|
14
17
|
readonly execution: ExecuteExecution;
|
|
15
18
|
readonly finalizeResult?: ExecuteResultFinalizer;
|
|
16
19
|
readonly outputRenderer?: DefinedOutputRenderer;
|
|
@@ -22,12 +25,6 @@ export type ExecuteOptions = {
|
|
|
22
25
|
readonly startedAt: string;
|
|
23
26
|
readonly timeoutPolicy?: ExecuteTimeoutPolicy | null;
|
|
24
27
|
};
|
|
25
|
-
export type NormalizedExecuteOptions = ExecuteOptions & {
|
|
26
|
-
readonly finalizeResult: ExecuteResultFinalizer;
|
|
27
|
-
readonly outputRenderer: DefinedOutputRenderer;
|
|
28
|
-
readonly runtimePolicy: RuntimePolicy | null;
|
|
29
|
-
};
|
|
30
28
|
type RuntimePolicy = NonNullable<ExecutionSupervisionDependencies['runtimePolicy']>;
|
|
31
|
-
export declare function executeOptionsWithDefaults(options: ExecuteOptions | undefined): NormalizedExecuteOptions;
|
|
32
29
|
export {};
|
|
33
30
|
//# sourceMappingURL=execution-options.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-options.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"execution-options.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EACR,oBAAoB,EACpB,gCAAgC,EACnC,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AACpF,OAAO,EAAwC,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;MAGzF,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,CAAC;IAC9C,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;CAC1C,GAAG;IACA,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;AAE/E,MAAM,MAAM,cAAc,GAAG;IACzB,QAAQ,CAAC,WAAW,EAAE,eAAe,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,cAAc,CAAC,EAAE,sBAAsB,CAAC;IACjD,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,CAAC;IAC/C,QAAQ,CAAC,eAAe,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACzD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAC/D,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;CACxD,CAAC;qBAQmB,WAAW,CAAC,gCAAgC,CAAC,eAAe,CAAC,CAAC,CAAC;AAmCpF"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createPlainOutputRenderer } from "./reporter-output.js";
|
|
2
|
+
import { assertRetryPolicy, assertRetryFamily } from "./retry-policy.js";
|
|
2
3
|
const epoch = new Date(0);
|
|
3
4
|
const keepResult = async function keepResult(result) {
|
|
4
5
|
return result;
|
|
@@ -9,6 +10,7 @@ function defaultExecuteOptions() {
|
|
|
9
10
|
finalizeResult: keepResult,
|
|
10
11
|
outputRenderer: createPlainOutputRenderer(),
|
|
11
12
|
reporters: [],
|
|
13
|
+
retryPolicy: null,
|
|
12
14
|
resourceBudgets: null,
|
|
13
15
|
resourceUsageTracker: null,
|
|
14
16
|
runtimePolicy: null,
|
|
@@ -18,6 +20,7 @@ function defaultExecuteOptions() {
|
|
|
18
20
|
};
|
|
19
21
|
}
|
|
20
22
|
function executeOptionsWithProvidedDefaults(options) {
|
|
23
|
+
assertRetryPolicy(options.retryPolicy);
|
|
21
24
|
return {
|
|
22
25
|
...options,
|
|
23
26
|
finalizeResult: options.finalizeResult ?? keepResult,
|
|
@@ -27,7 +30,9 @@ function executeOptionsWithProvidedDefaults(options) {
|
|
|
27
30
|
timeoutPolicy: options.timeoutPolicy ?? null
|
|
28
31
|
};
|
|
29
32
|
}
|
|
30
|
-
export function executeOptionsWithDefaults(options) {
|
|
31
|
-
|
|
33
|
+
export function executeOptionsWithDefaults(options, testPlan) {
|
|
34
|
+
const normalized = options === undefined ? defaultExecuteOptions() : executeOptionsWithProvidedDefaults(options);
|
|
35
|
+
assertRetryFamily(normalized.retryPolicy, testPlan);
|
|
36
|
+
return normalized;
|
|
32
37
|
}
|
|
33
38
|
//# sourceMappingURL=execution-options.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-options.js","sourceRoot":"","sources":["../../../../source/engine/execution-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAA8B,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"execution-options.js","sourceRoot":"","sources":["../../../../source/engine/execution-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAA8B,MAAM,sBAAsB,CAAC;AAS7F,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAwB,MAAM,mBAAmB,CAAC;AAkC/F,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;AAC1B,MAAM,UAAU,GAA2B,KAAK,UAAU,UAAU,CAAC,MAAM;IACvE,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEF,SAAS,qBAAqB;IAC1B,OAAO;QACH,SAAS,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QACxC,cAAc,EAAE,UAAU;QAC1B,cAAc,EAAE,yBAAyB,EAAE;QAC3C,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,IAAI;QACrB,oBAAoB,EAAE,IAAI;QAC1B,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE;QAC9B,aAAa,EAAE,IAAI;KACtB,CAAC;AACN,CAAC;AAED,SAAS,kCAAkC,CAAC,OAAuB;IAC/D,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACvC,OAAO;QACH,GAAG,OAAO;QACV,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,UAAU;QACpD,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,yBAAyB,EAAE;QACrE,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,IAAI;QAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;QAC5C,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;KAC/C,CAAC;AACN,CAAC;AAED,MAAM,UAAU,0BAA0B,CACtC,OAAmC,EACnC,QAAkB;IAElB,MAAM,UAAU,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,kCAAkC,CAAC,OAAO,CAAC,CAAC;IACjH,iBAAiB,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACpD,OAAO,UAAU,CAAC;AACtB,CAAC"}
|
|
@@ -1,17 +1,8 @@
|
|
|
1
|
-
import type { ResourceUsageSnapshot } from './run-result.ts';
|
|
2
1
|
export type ExecuteResourceBudgets = {
|
|
3
2
|
readonly activeResourceCount: number | null;
|
|
4
3
|
readonly javaScriptEngineHeapBytes: number | null;
|
|
5
4
|
readonly residentSetBytes: number | null;
|
|
6
5
|
readonly residentSetGrowthBytesPerSecond: number | null;
|
|
7
6
|
};
|
|
8
|
-
type ResourceBudgetMetric = keyof ExecuteResourceBudgets;
|
|
9
|
-
export type ResourceBudgetBreach = {
|
|
10
|
-
readonly budget: number;
|
|
11
|
-
readonly metric: ResourceBudgetMetric;
|
|
12
|
-
readonly observed: number;
|
|
13
|
-
readonly sample: ResourceUsageSnapshot;
|
|
14
|
-
};
|
|
15
|
-
export declare function findResourceBudgetBreach(budgets: ExecuteResourceBudgets | null | undefined, sample: ResourceUsageSnapshot, previousSample: ResourceUsageSnapshot | null): ResourceBudgetBreach | null;
|
|
16
7
|
export {};
|
|
17
8
|
//# sourceMappingURL=execution-resource-budget-breach.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-resource-budget-breach.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-resource-budget-breach.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"execution-resource-budget-breach.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-resource-budget-breach.ts"],"names":[],"mappings":"MAGM,MAAM,sBAAsB,GAAG;IACjC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,+BAA+B,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3D,CAAC;MAII,CAA6B,EAKlC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-resource-budget-tracking.js","sourceRoot":"","sources":["../../../../source/engine/execution-resource-budget-tracking.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"execution-resource-budget-tracking.js","sourceRoot":"","sources":["../../../../source/engine/execution-resource-budget-tracking.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,yBAAyB,EAG5B,MAAM,4BAA4B,CAAC;AAoBpC,MAAM,UAAU,2BAA2B,CAAC,KAAkC;IAC1E,IAAI,cAAc,GAAiC,IAAI,CAAC;IACxD,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,SAAS,YAAY,CAAC,MAA6B;QAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,GAAG,yBAAyB,CAAC;gBACjC,OAAO,EAAE,KAAK,CAAC,eAAe;gBAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,cAAc;gBACd,MAAM;gBACN,WAAW,EAAE,KAAK,CAAC,WAAW;aACjC,CAAC,CAAC;QACP,CAAC;QAED,cAAc,GAAG,MAAM,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAE/C,OAAO;QACH,MAAM;YACF,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;YAC/D,MAAM,aAAa,GAAG,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC;YAC1D,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAEhC,OAAO;gBACH,aAAa;gBACb,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,gBAAgB,CAAC;aACvE,CAAC;QACN,CAAC;QACD,IAAI;YACA,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC;QACxC,CAAC;KACJ,CAAC;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-resource-tracked-cases.js","sourceRoot":"","sources":["../../../../source/engine/execution-resource-tracked-cases.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,2BAA2B,EAE9B,MAAM,yCAAyC,CAAC;AAIjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"execution-resource-tracked-cases.js","sourceRoot":"","sources":["../../../../source/engine/execution-resource-tracked-cases.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,2BAA2B,EAE9B,MAAM,yCAAyC,CAAC;AAIjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AA8BjE,KAAK,UAAU,6BAA6B,CAIxC,KAAY,EACZ,YAAkE,EAClE,sBAA8C;IAE9C,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,MAAM,EAAE,CAAC;IAC7D,MAAM,YAAY,GAAG,MAAM,kBAAkB,CACzC,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAC9B,oBAAoB,CAAC,YAAY,CACpC,CAAC;IAEF,OAAO;QACH,gBAAgB,EAAE;YACd,GAAG,gBAAgB;YACnB,cAAc,EAAE;gBACZ,GAAG,gBAAgB,CAAC,cAAc;gBAClC,GAAG,YAAY;aAClB;SACJ;QACD,aAAa,EAAE,oBAAoB,CAAC,aAAa;KACpD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAI7C,KAAY,EACZ,YAAkE;IAElE,MAAM,EAAE,oBAAoB,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;IAE/C,IAAI,oBAAoB,KAAK,IAAI,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;QACtE,OAAO;YACH,gBAAgB,EAAE,MAAM,YAAY,CAAC,KAAK,CAAC;YAC3C,aAAa,EAAE,IAAI;SACtB,CAAC;IACN,CAAC;IAED,MAAM,sBAAsB,GAAG,2BAA2B,CAAC;QACvD,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY;QACxC,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,IAAI,IAAI;QACtD,oBAAoB;QACpB,WAAW,EAAE,KAAK,CAAC,WAAW;KACjC,CAAC,CAAC;IAEH,IAAI,CAAC;QACD,OAAO,MAAM,6BAA6B,CAAC,KAAK,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,sBAAsB,CAAC,IAAI,EAAE,CAAC;QAE9B,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-result.js","sourceRoot":"","sources":["../../../../source/engine/execution-result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EACH,iBAAiB,EACjB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"execution-result.js","sourceRoot":"","sources":["../../../../source/engine/execution-result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EACH,iBAAiB,EACjB,oBAAoB,EAKvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAWrD,MAAM,UAAU,kBAAkB,CAAC,MAAiB,EAAE,YAAoC;IACtF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,MAAM,mBAAmB,GAAG,CAAE,GAAG,MAAM,CAAC,YAAY,EAAE,GAAG,YAAY,CAAE,CAAC;IAExE,OAAO;QACH,GAAG,MAAM;QACT,YAAY,EAAE,mBAAmB;QACjC,MAAM,EAAE,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,mBAAmB,CAAC;KACpE,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CACxC,KAAc,EACd,OAA0C;IAE1C,MAAM,aAAa,GAAG,MAAM,OAAO,EAAE,CAAC;IAEtC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,cAAc,CACpB,CAAE,KAAK,EAAE,GAAG,aAAa,CAAE,EAC3B,+CAA+C,EAC/C,EAAE,KAAK,EAAE,KAAK,EAAE,CACnB,CAAC;IACN,CAAC;IAED,MAAM,KAAK,CAAC;AAChB,CAAC;AAED,SAAS,SAAS,CAAC,UAAyB;IACxC,OAAO,UAAU,CAAC,OAAO,KAAK,MAAM,CAAC;AACzC,CAAC;AAED,SAAS,cAAc,CAAC,UAAyB;IAC7C,OAAO,UAAU,CAAC,OAAO,KAAK,cAAc,CAAC;AACjD,CAAC;AAED,SAAS,SAAS,CAAC,UAAyB;IACxC,OAAO,UAAU,CAAC,OAAO,KAAK,MAAM,CAAC;AACzC,CAAC;AAED,SAAS,UAAU,CAAC,UAAyB;IACzC,OAAO,UAAU,CAAC,OAAO,KAAK,MAAM,CAAC;AACzC,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAyB;IAChD,OAAO,UAAU,CAAC,OAAO,KAAK,oBAAoB,CAAC;AACvD,CAAC;AAED,SAAS,OAAO,CAAC,UAAyB;IACtC,OAAO,UAAU,CAAC,OAAO,KAAK,SAAS,CAAC;AAC5C,CAAC;AAED,SAAS,aAAa,CAAC,UAAyB;IAC5C,OAAO,UAAU,CAAC,OAAO,KAAK,gBAAgB,CAAC;AACnD,CAAC;AAED,SAAS,aAAa,CAAC,QAAkB,EAAE,OAAiC;IACxE,OAAO;QACH,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM;QACvC,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,UAAU,EAAE,QAAQ,CAAC,eAAe,CAAC,MAAM;QAC3C,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM;QACxC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM;QACnD,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM;QACxC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;QAC9B,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,MAAM;QAC3D,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM;QACnD,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM;KAC7C,CAAC;AACN,CAAC;AAED,SAAS,QAAQ,CAAC,SAA4B;IAC1C,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,WAAW,CAAC,SAAiD;IAClE,OAAO,SAAS,CAAC,GAAG,CAAC,SAAS,OAAO,CAAC,KAAK;QACvC,OAAO,KAAK,CAAC,KAAK,CAAC;IACvB,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,mBAAmB;IACxB,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AACtD,CAAC;AAED,SAAS,uBAAuB,CAC5B,MAAoC,EACpC,KAA4C;IAE5C,OAAO;QACH,UAAU,EAAE,MAAM,CAAC,UAAU,GAAG,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAAG,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,EAAE,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC1D,CAAC;AACN,CAAC;AAED,SAAS,cAAc,CACnB,MAA4B,EAC5B,SAA4B,EAC5B,KAA4C;IAE5C,IAAI,aAAa,GAAG,MAAM,CAAC;IAE3B,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,IAAI,SAAS,CAAC,MAAM,EAAE,UAAU,IAAI,CAAC,EAAE,CAAC;QACvE,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;QACrD,aAAa,GAAG;YACZ,GAAG,aAAa;YAChB,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,mBAAmB,EAAE,EAAE,KAAK,CAAC;SACrF,CAAC;IACN,CAAC;IAED,OAAO,aAAa,CAAC;AACzB,CAAC;AAED,SAAS,WAAW,CAAC,QAAkB,EAAE,OAAiC;IACtE,IAAI,MAAM,GAAyB,EAAE,CAAC;IACtC,MAAM,WAAW,GAAG,IAAI,GAAG,CACvB,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,MAAM;QAC5B,OAAO,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC,CAAC,CACL,CAAC;IAEF,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC9C,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,CAAC;IACnF,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpC,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;QAE5E,IAAI,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACpD,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC;QACjF,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,eAAe,CAC3B,QAAkB,EAClB,OAAiC,EACjC,cAAsC,EACtC,MAAuB;IAEvB,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEjD,OAAO;QACH,SAAS,EAAE,EAAE;QACb,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC;QACvC,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,OAAO;QACP,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,YAAY,EAAE,cAAc;QAC5B,MAAM,EAAE,iBAAiB,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,UAAU,CAAC;QACrE,OAAO;QACP,OAAO,EAAE,iBAAiB,CAAC;YACvB,iCAAiC,EAAE,MAAM,CAAC,iCAAiC;YAC3E,yBAAyB,EAAE,MAAM,CAAC,uBAAuB,GAAG,MAAM,CAAC,qBAAqB;SAC3F,CAAC;KACL,CAAC;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-supervision-state.js","sourceRoot":"","sources":["../../../../source/engine/execution-supervision-state.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"execution-supervision-state.js","sourceRoot":"","sources":["../../../../source/engine/execution-supervision-state.ts"],"names":[],"mappings":"AAmCA,MAAM,UAAU,0BAA0B;IACtC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAsB,CAAC;IAClD,MAAM,YAAY,GAAmD,EAAE,CAAC;IACxE,IAAI,eAAe,GAAG,IAAI,CAAC;IAE3B,OAAO;QACH,eAAe;YACX,OAAO,eAAe,CAAC;QAC3B,CAAC;QACD,WAAW;QACX,aAAa,CAAC,GAAG,EAAE,UAAU;YACzB,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACrC,CAAC;QACD,iBAAiB,CAAC,KAAK;YACnB,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QACD,gBAAgB,CAAC,GAAG;YAChB,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;QACD,YAAY;QACZ,kBAAkB;YACd,eAAe,GAAG,KAAK,CAAC;QAC5B,CAAC;KACJ,CAAC;AACN,CAAC"}
|
|
@@ -1,30 +1,14 @@
|
|
|
1
1
|
import type { Clock } from '@enormora/clock';
|
|
2
2
|
import { type TestRuntimePolicy } from './case-execution.ts';
|
|
3
|
-
import { type ResourceUsageSnapshot } from './run-result.ts';
|
|
4
|
-
import type { TestPlanCase } from './test-plan.ts';
|
|
5
|
-
import { type ExecuteResourceBudgets } from './execution-resource-budget-breach.ts';
|
|
6
3
|
import type { ExecutionGlobalErrorObserver } from './execution-global-error-observer.ts';
|
|
7
|
-
import { type ExecutionConcurrentCase, type ExecutionSupervision as ExecutionSupervisionState } from './execution-supervision-state.ts';
|
|
8
4
|
export type ExecuteTimeoutPolicy = {
|
|
9
5
|
readonly hardTimeoutMilliseconds: number;
|
|
10
6
|
readonly timeoutMilliseconds: number;
|
|
11
7
|
};
|
|
12
|
-
export type ConcurrentCase = ExecutionConcurrentCase;
|
|
13
8
|
export type ExecutionSupervisionDependencies = {
|
|
14
9
|
readonly globalErrorObserver: ExecutionGlobalErrorObserver;
|
|
15
10
|
readonly runtimePolicy?: TestRuntimePolicy | null;
|
|
16
11
|
readonly wallClock: Clock;
|
|
17
12
|
};
|
|
18
|
-
export type ExecutionSupervision = ExecutionSupervisionState;
|
|
19
|
-
type ResourceUsageSampleInput = {
|
|
20
|
-
readonly budgets: ExecuteResourceBudgets | null | undefined;
|
|
21
|
-
readonly dependencies: ExecutionSupervisionDependencies;
|
|
22
|
-
readonly previousSample: ResourceUsageSnapshot | null;
|
|
23
|
-
readonly sample: ResourceUsageSnapshot;
|
|
24
|
-
readonly supervision: ExecutionSupervision;
|
|
25
|
-
};
|
|
26
|
-
export declare const createExecutionSupervision: () => ExecutionSupervision;
|
|
27
|
-
export declare function recordResourceUsageSample(input: ResourceUsageSampleInput): boolean;
|
|
28
|
-
export declare function executeCaseBody(testCase: TestPlanCase, timeoutPolicy: ExecuteTimeoutPolicy | null | undefined, supervision: ExecutionSupervision, dependencies: ExecutionSupervisionDependencies): Promise<ConcurrentCase>;
|
|
29
13
|
export {};
|
|
30
14
|
//# sourceMappingURL=execution-supervision.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-supervision.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-supervision.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAIH,KAAK,iBAAiB,EACzB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"execution-supervision.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-supervision.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAIH,KAAK,iBAAiB,EACzB,MAAM,qBAAqB,CAAC;AAC7B,OAA0B,KASd,EAIH,4BAGiC,EAAE,MAAM,sCAAsC,CAAC;MAM/B,MAK9C,oBAAoB,GAAG;IAC/B,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACxC,CAAC;AACF,MAAM,MAAuB,gCACe,GAAG;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,4BAA4B,CAAC;IAC3D,QAAQ,CAAC,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAClD,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;CAC7B,CAAC;AAiBF,MAAM,CAUiB,EAQtB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { invalidTimeoutControlFailure, runTestCase, timeoutFailure } from "./case-execution.js";
|
|
2
2
|
import { workIdentityKey } from "./identity.js";
|
|
3
|
-
import { isPermissionDeniedRunnerError, verdictFromOutcome } from "./run-result.js";
|
|
3
|
+
import { singleAttemptResult, isPermissionDeniedRunnerError, verdictFromOutcome } from "./run-result.js";
|
|
4
4
|
import { findResourceBudgetBreach } from "./execution-resource-budget-breach.js";
|
|
5
5
|
import { createExecutionSupervision as createExecutionSupervisionState } from "./execution-supervision-state.js";
|
|
6
6
|
const microsecondsPerMillisecond = 1000;
|
|
@@ -14,14 +14,14 @@ function createCaseCompletion() {
|
|
|
14
14
|
}
|
|
15
15
|
function createTerminalCase(testCase, verdict, durationMicroseconds) {
|
|
16
16
|
return {
|
|
17
|
-
result: {
|
|
17
|
+
result: singleAttemptResult({
|
|
18
18
|
definitionLocations: testCase.definitionLocations,
|
|
19
19
|
id: testCase.id,
|
|
20
20
|
outcome: null,
|
|
21
21
|
verdict,
|
|
22
22
|
workId: testCase.workId,
|
|
23
23
|
durationMicroseconds
|
|
24
|
-
},
|
|
24
|
+
}, { index: 0 }),
|
|
25
25
|
runnerErrors: [],
|
|
26
26
|
durationMicroseconds
|
|
27
27
|
};
|
|
@@ -31,14 +31,14 @@ function failCase(testCase, failures, durationMicroseconds) {
|
|
|
31
31
|
failures,
|
|
32
32
|
kind: 'fail'
|
|
33
33
|
};
|
|
34
|
-
return {
|
|
34
|
+
return singleAttemptResult({
|
|
35
35
|
definitionLocations: testCase.definitionLocations,
|
|
36
36
|
id: testCase.id,
|
|
37
37
|
outcome,
|
|
38
38
|
verdict: verdictFromOutcome(outcome),
|
|
39
39
|
workId: testCase.workId,
|
|
40
40
|
durationMicroseconds
|
|
41
|
-
};
|
|
41
|
+
}, { index: 0 });
|
|
42
42
|
}
|
|
43
43
|
function timeoutControlValue(testCase) {
|
|
44
44
|
return testCase.controls.timeoutMilliseconds;
|
|
@@ -88,26 +88,25 @@ function clearTimer(wallClock, timer) {
|
|
|
88
88
|
wallClock.clearTimeout(timer);
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
|
-
function policyCheckedCase(
|
|
92
|
-
const errors = dependencies.runtimePolicy?.
|
|
91
|
+
function policyCheckedCase(input, executedCase) {
|
|
92
|
+
const errors = input.dependencies.runtimePolicy?.takeAttemptErrors(input.testCase, input.attempt) ?? [];
|
|
93
93
|
const hasCasePermissionError = executedCase.runnerErrors.some(isPermissionDeniedRunnerError);
|
|
94
94
|
if (errors.length === 0 && !hasCasePermissionError) {
|
|
95
95
|
return executedCase;
|
|
96
96
|
}
|
|
97
|
-
for (const error of errors) {
|
|
98
|
-
supervision.recordRunnerError(error);
|
|
99
|
-
}
|
|
100
97
|
return {
|
|
101
|
-
...
|
|
102
|
-
|
|
98
|
+
...executedCase,
|
|
99
|
+
result: { ...executedCase.result, outcome: null, verdict: 'runtime-policy' },
|
|
100
|
+
runnerErrors: [...executedCase.runnerErrors, ...errors]
|
|
103
101
|
};
|
|
104
102
|
}
|
|
105
|
-
async function runTestCaseWithPolicy(
|
|
106
|
-
const executedCase = await runTestCase(testCase, dependencies.wallClock, {
|
|
107
|
-
|
|
108
|
-
|
|
103
|
+
async function runTestCaseWithPolicy(input) {
|
|
104
|
+
const executedCase = await runTestCase(input.testCase, input.dependencies.wallClock, {
|
|
105
|
+
attempt: input.attempt,
|
|
106
|
+
controller: input.controller,
|
|
107
|
+
runtimePolicy: input.dependencies.runtimePolicy ?? null
|
|
109
108
|
});
|
|
110
|
-
return policyCheckedCase(
|
|
109
|
+
return policyCheckedCase(input, executedCase);
|
|
111
110
|
}
|
|
112
111
|
function activeCaseIds(activeCases) {
|
|
113
112
|
return Array.from(activeCases.values(), function toCaseId(activeCase) {
|
|
@@ -119,10 +118,14 @@ function activeWorkIds(activeCases) {
|
|
|
119
118
|
return activeCase.testCase.workId;
|
|
120
119
|
});
|
|
121
120
|
}
|
|
121
|
+
function soleActiveAttempt(attempts) {
|
|
122
|
+
return attempts.length === 1 ? attempts[0] ?? null : null;
|
|
123
|
+
}
|
|
122
124
|
function resourceExhaustionError(cause) {
|
|
123
125
|
const [activeCase = null] = cause.activeCases;
|
|
124
126
|
const [activeWork = null] = cause.activeWork;
|
|
125
127
|
return {
|
|
128
|
+
attributedToAttempt: soleActiveAttempt(cause.activeAttempts),
|
|
126
129
|
attributedTo: cause.activeCases.length === 1 ? activeCase : null,
|
|
127
130
|
attributedToWork: cause.activeWork.length === 1 ? activeWork : null,
|
|
128
131
|
cause,
|
|
@@ -139,6 +142,7 @@ function crashError(cause) {
|
|
|
139
142
|
const [activeCase = null] = cause.activeCases;
|
|
140
143
|
const [activeWork = null] = cause.activeWork;
|
|
141
144
|
return {
|
|
145
|
+
attributedToAttempt: soleActiveAttempt(cause.activeAttempts),
|
|
142
146
|
attributedTo: cause.activeCases.length === 1 ? activeCase : null,
|
|
143
147
|
attributedToWork: cause.activeWork.length === 1 ? activeWork : null,
|
|
144
148
|
cause,
|
|
@@ -158,6 +162,9 @@ function completeActiveCasesAs(supervision, verdict, dependencies) {
|
|
|
158
162
|
}
|
|
159
163
|
function completeActiveCasesWithCrash(supervision, dependencies) {
|
|
160
164
|
const cause = {
|
|
165
|
+
activeAttempts: Array.from(supervision.activeCases.values(), function attempt(active) {
|
|
166
|
+
return active.attempt;
|
|
167
|
+
}),
|
|
161
168
|
activeCases: activeCaseIds(supervision.activeCases),
|
|
162
169
|
activeWork: activeWorkIds(supervision.activeCases),
|
|
163
170
|
reason: 'hard-timeout'
|
|
@@ -177,6 +184,9 @@ function completeActiveCasesWithResourceExhaustion(breach, supervision, dependen
|
|
|
177
184
|
supervision.stopAcceptingCases();
|
|
178
185
|
const cause = {
|
|
179
186
|
...breach,
|
|
187
|
+
activeAttempts: Array.from(supervision.activeCases.values(), function attempt(active) {
|
|
188
|
+
return active.attempt;
|
|
189
|
+
}),
|
|
180
190
|
activeCases: activeCaseIds(supervision.activeCases),
|
|
181
191
|
activeWork: activeWorkIds(supervision.activeCases),
|
|
182
192
|
enforcement: 'sampled'
|
|
@@ -193,14 +203,14 @@ function completeActiveCasesWithResourceExhaustion(breach, supervision, dependen
|
|
|
193
203
|
}
|
|
194
204
|
async function runCaseWithSoftTimeout(input) {
|
|
195
205
|
if (input.timeoutMilliseconds === null) {
|
|
196
|
-
return await runTestCaseWithPolicy(input
|
|
206
|
+
return await runTestCaseWithPolicy(input);
|
|
197
207
|
}
|
|
198
208
|
const timing = { timedOut: false };
|
|
199
209
|
const softTimeout = input.dependencies.wallClock.setTimeout(function abortTimedOutCase() {
|
|
200
210
|
timing.timedOut = true;
|
|
201
211
|
input.controller.abort();
|
|
202
212
|
}, input.timeoutMilliseconds);
|
|
203
|
-
const executedCase = await runTestCaseWithPolicy(input
|
|
213
|
+
const executedCase = await runTestCaseWithPolicy(input);
|
|
204
214
|
clearTimer(input.dependencies.wallClock, softTimeout);
|
|
205
215
|
const deadlineMicroseconds = input.timeoutMilliseconds * microsecondsPerMillisecond;
|
|
206
216
|
if (timing.timedOut || executedCase.durationMicroseconds >= deadlineMicroseconds) {
|
|
@@ -224,6 +234,7 @@ function registerActiveCase(input) {
|
|
|
224
234
|
completeActiveCasesWithCrash(input.supervision, input.dependencies);
|
|
225
235
|
}, input.timeoutPolicy.hardTimeoutMilliseconds);
|
|
226
236
|
const activeCase = {
|
|
237
|
+
attempt: input.attempt,
|
|
227
238
|
abort() {
|
|
228
239
|
input.controller.abort();
|
|
229
240
|
},
|
|
@@ -249,14 +260,14 @@ function createInconclusiveCaseResult(testCase, error, durationMicroseconds) {
|
|
|
249
260
|
kind: 'inconclusive',
|
|
250
261
|
reason: `Test execution failed before producing a result: ${reason}`
|
|
251
262
|
};
|
|
252
|
-
return {
|
|
263
|
+
return singleAttemptResult({
|
|
253
264
|
definitionLocations: testCase.definitionLocations,
|
|
254
265
|
id: testCase.id,
|
|
255
266
|
outcome,
|
|
256
267
|
verdict: verdictFromOutcome(outcome),
|
|
257
268
|
workId: testCase.workId,
|
|
258
269
|
durationMicroseconds
|
|
259
|
-
};
|
|
270
|
+
}, { index: 0 });
|
|
260
271
|
}
|
|
261
272
|
function completeUnexpectedBodyError(input, error) {
|
|
262
273
|
const durationMicroseconds = Number(input.dependencies.wallClock.currentMonotonicMicroseconds) -
|
|
@@ -301,14 +312,11 @@ function registerCaseBodyInput(input, timeoutMilliseconds) {
|
|
|
301
312
|
timeoutMilliseconds
|
|
302
313
|
};
|
|
303
314
|
}
|
|
304
|
-
function createActiveCaseInput(
|
|
315
|
+
function createActiveCaseInput(input) {
|
|
305
316
|
return {
|
|
317
|
+
...input,
|
|
306
318
|
completion: createCaseCompletion(),
|
|
307
|
-
controller: new AbortController()
|
|
308
|
-
dependencies,
|
|
309
|
-
supervision,
|
|
310
|
-
testCase,
|
|
311
|
-
timeoutPolicy
|
|
319
|
+
controller: new AbortController()
|
|
312
320
|
};
|
|
313
321
|
}
|
|
314
322
|
export function recordResourceUsageSample(input) {
|
|
@@ -319,14 +327,23 @@ export function recordResourceUsageSample(input) {
|
|
|
319
327
|
completeActiveCasesWithResourceExhaustion(breach, input.supervision, input.dependencies);
|
|
320
328
|
return true;
|
|
321
329
|
}
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
return
|
|
330
|
+
function closedBoundaryVerdict(supervision) {
|
|
331
|
+
const exhausted = supervision.runnerErrors.some(function resourceExhausted(error) {
|
|
332
|
+
return error.subtype === 'resource-exhaustion';
|
|
333
|
+
});
|
|
334
|
+
return exhausted ? 'resource-exhausted' : 'crashed';
|
|
335
|
+
}
|
|
336
|
+
export async function executeCaseBody(input) {
|
|
337
|
+
if (input.dependencies.globalErrorObserver.hasFatalError() || !input.supervision.acceptsNewCases()) {
|
|
338
|
+
return createTerminalCase(input.testCase, closedBoundaryVerdict(input.supervision), 0);
|
|
339
|
+
}
|
|
340
|
+
if (input.testCase.execution.kind === 'skip') {
|
|
341
|
+
return await runTestCase(input.testCase, input.dependencies.wallClock);
|
|
325
342
|
}
|
|
326
|
-
const timeoutResolution = resolveSoftTimeout(testCase, timeoutPolicy);
|
|
343
|
+
const timeoutResolution = resolveSoftTimeout(input.testCase, input.timeoutPolicy);
|
|
327
344
|
if (timeoutResolution.kind === 'failure') {
|
|
328
|
-
return invalidTimeoutCase(testCase, timeoutResolution.failure);
|
|
345
|
+
return invalidTimeoutCase(input.testCase, timeoutResolution.failure);
|
|
329
346
|
}
|
|
330
|
-
return await runCaseBodyUnderSupervision(registerCaseBodyInput(createActiveCaseInput(
|
|
347
|
+
return await runCaseBodyUnderSupervision(registerCaseBodyInput(createActiveCaseInput(input), timeoutResolution.milliseconds));
|
|
331
348
|
}
|
|
332
349
|
//# sourceMappingURL=execution-supervision.js.map
|