@overkill-dev/engine 0.0.26 → 0.0.28

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.
Files changed (50) hide show
  1. package/assertion-protocol/assertion-node-shape.d.ts +9 -1
  2. package/assertion-protocol/assertion-node-shape.d.ts.map +1 -1
  3. package/assertion-protocol/source-location.d.ts +3 -1
  4. package/assertion-protocol/source-location.d.ts.map +1 -1
  5. package/assertion-protocol/source-location.js +31 -8
  6. package/assertion-protocol/source-location.js.map +1 -1
  7. package/engine/execution.d.ts +5 -5
  8. package/engine/execution.d.ts.map +1 -1
  9. package/engine/execution.js +73 -68
  10. package/engine/execution.js.map +1 -1
  11. package/engine/reporter-dispatcher.d.ts +11 -5
  12. package/engine/reporter-dispatcher.d.ts.map +1 -1
  13. package/engine/reporter-dispatcher.js +78 -101
  14. package/engine/reporter-dispatcher.js.map +1 -1
  15. package/engine/reporter-disposal.d.ts +6 -0
  16. package/engine/reporter-disposal.d.ts.map +1 -0
  17. package/engine/reporter-disposal.js +13 -0
  18. package/engine/reporter-disposal.js.map +1 -0
  19. package/engine/reporter-error-delivery-tracking.js +22 -0
  20. package/engine/reporter-error-delivery-tracking.js.map +1 -0
  21. package/engine/reporter-event-queue.js +2 -2
  22. package/engine/reporter-event-queue.js.map +1 -1
  23. package/engine/reporter-managed-output.js +84 -0
  24. package/engine/reporter-managed-output.js.map +1 -0
  25. package/engine/reporter-output.d.ts +5 -2
  26. package/engine/reporter-output.d.ts.map +1 -1
  27. package/engine/reporter-output.js +9 -7
  28. package/engine/reporter-output.js.map +1 -1
  29. package/engine/reporter.d.ts +4 -2
  30. package/engine/reporter.d.ts.map +1 -1
  31. package/engine/reporter.js +3 -3
  32. package/engine/reporter.js.map +1 -1
  33. package/engine/reporting-context.d.ts +18 -0
  34. package/engine/reporting-context.d.ts.map +1 -0
  35. package/engine/reporting-context.js +74 -0
  36. package/engine/reporting-context.js.map +1 -0
  37. package/engine/test-node.d.ts.map +1 -1
  38. package/engine/test-node.js +4 -0
  39. package/engine/test-node.js.map +1 -1
  40. package/package.json +2 -2
  41. package/packages/engine/assertion-protocol.entry-point.d.ts +2 -1
  42. package/packages/engine/assertion-protocol.entry-point.d.ts.map +1 -1
  43. package/packages/engine/assertion-protocol.entry-point.js +1 -0
  44. package/packages/engine/assertion-protocol.entry-point.js.map +1 -1
  45. package/packages/engine/engine.entry-point.d.ts +3 -1
  46. package/packages/engine/engine.entry-point.d.ts.map +1 -1
  47. package/packages/engine/engine.entry-point.js +1 -0
  48. package/packages/engine/engine.entry-point.js.map +1 -1
  49. package/readme.md +13 -6
  50. package/sbom.cdx.json +4 -4
@@ -21,11 +21,19 @@ export type DeepComparable<Value = unknown> = IsAny<Value> extends true ? never
21
21
  export type AssertionOptions = {
22
22
  readonly message: string;
23
23
  };
24
- export type SourceLocation = {
24
+ export type UnknownSourceLocation = {
25
+ readonly column?: never;
26
+ readonly file?: never;
27
+ readonly kind: 'unknown';
28
+ readonly line?: never;
29
+ };
30
+ export type KnownSourceLocation = {
25
31
  readonly column: number | null;
26
32
  readonly file: string;
33
+ readonly kind: 'known';
27
34
  readonly line: number | null;
28
35
  };
36
+ export type SourceLocation = KnownSourceLocation | UnknownSourceLocation;
29
37
  export type SourceLocationProvider = () => SourceLocation;
30
38
  export type ResolvableSourceLocation = SourceLocation | SourceLocationProvider;
31
39
  export type ResolvableSourceLocations = NonEmptyReadonlyArray<ResolvableSourceLocation>;
@@ -1 +1 @@
1
- {"version":3,"file":"assertion-node-shape.d.ts","sourceRoot":"","sources":["../../../../source/assertion-protocol/assertion-node-shape.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assertion-node-shape.d.ts","sourceRoot":"","sources":["../../../../source/assertion-protocol/assertion-node-shape.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
- import type { ResolvableSourceLocation, SourceLocation, SourceLocationProvider } from './assertion-node-shape.ts';
1
+ import type { KnownSourceLocation, ResolvableSourceLocation, SourceLocation, SourceLocationProvider } from './assertion-node-shape.ts';
2
2
  export declare const unknownSourceLocation: SourceLocation;
3
+ export declare function ensureValidSourceLocation(location: SourceLocation): void;
4
+ export declare function ensureKnownSourceLocation(location: SourceLocation): KnownSourceLocation | null;
3
5
  export declare function sourceLocationFromStack(stack: string): SourceLocation;
4
6
  export declare function captureSourceLocation(): SourceLocationProvider;
5
7
  export declare function resolveSourceLocation(location: ResolvableSourceLocation): SourceLocation;
@@ -1 +1 @@
1
- {"version":3,"file":"source-location.d.ts","sourceRoot":"","sources":["../../../../source/assertion-protocol/source-location.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,wBAAwB,EACxB,cAAc,EACd,sBAAsB,EACzB,MAAM,2BAA2B,CAAC;AAEnC,eAAO,MAAM,qBAAqB,EAAE,cAInC,CAAC;AA+DF,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAIrE;AAED,wBAAgB,qBAAqB,IAAI,sBAAsB,CAW9D;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,cAAc,CAUxF"}
1
+ {"version":3,"file":"source-location.d.ts","sourceRoot":"","sources":["../../../../source/assertion-protocol/source-location.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,mBAAmB,EACnB,wBAAwB,EACxB,cAAc,EACd,sBAAsB,EACzB,MAAM,2BAA2B,CAAC;AAEnC,eAAO,MAAM,qBAAqB,EAAE,cAEnC,CAAC;AAqDF,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAIxE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,cAAc,GAAG,mBAAmB,GAAG,IAAI,CAI9F;AAqBD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAIrE;AAED,wBAAgB,qBAAqB,IAAI,sBAAsB,CAW9D;AAUD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,cAAc,CAexF"}
@@ -1,8 +1,6 @@
1
1
  import { fileURLToPath } from 'node:url';
2
2
  export const unknownSourceLocation = {
3
- column: null,
4
- file: '',
5
- line: null
3
+ kind: 'unknown'
6
4
  };
7
5
  const stackFramePattern = /^\s*at (?:.+? \()?(?<file>.+):(?<line>\d+):(?<column>\d+)\)?$/u;
8
6
  const internalModulePatterns = [
@@ -12,6 +10,7 @@ const internalModulePatterns = [
12
10
  /\/engine\/assertion-facade\.[cm]?[jt]s$/u,
13
11
  /\/engine\/custom-assertion-recording\.[cm]?[jt]s$/u,
14
12
  /\/engine\/require-assertion-facade\.[cm]?[jt]s$/u,
13
+ /\/packages\/test\/authoring-source-locations\.[cm]?[jt]s$/u,
15
14
  /\/packages\/test\/test\.entry-point\.[cm]?[jt]s$/u
16
15
  ];
17
16
  function normalizeStackFile(file) {
@@ -34,11 +33,26 @@ function stackFileIsInternal(file) {
34
33
  return pattern.test(normalizedFile);
35
34
  });
36
35
  }
36
+ function knownSourceLocation(file, line, column) {
37
+ if (file.length === 0) {
38
+ throw new TypeError('Known source location file must not be empty.');
39
+ }
40
+ return { column, file, kind: 'known', line };
41
+ }
42
+ export function ensureValidSourceLocation(location) {
43
+ if (location.kind === 'known' && location.file.length === 0) {
44
+ throw new TypeError('Known source location file must not be empty.');
45
+ }
46
+ }
47
+ export function ensureKnownSourceLocation(location) {
48
+ ensureValidSourceLocation(location);
49
+ return location.kind === 'known' ? location : null;
50
+ }
37
51
  function sourceLocationFromStackGroups(groups) {
38
52
  const file = normalizeStackFile(groups.file);
39
53
  return stackFileIsInternal(file)
40
54
  ? null
41
- : { column: Number(groups.column), file, line: Number(groups.line) };
55
+ : knownSourceLocation(file, Number(groups.line), Number(groups.column));
42
56
  }
43
57
  function isStackFrameGroups(groups) {
44
58
  return groups.file !== undefined && groups.line !== undefined && groups.column !== undefined;
@@ -64,15 +78,24 @@ export function captureSourceLocation() {
64
78
  return location;
65
79
  };
66
80
  }
67
- export function resolveSourceLocation(location) {
68
- if (typeof location !== 'function') {
69
- return location;
70
- }
81
+ function resolveProviderSourceLocation(location) {
71
82
  try {
72
83
  return location();
73
84
  }
74
85
  catch {
86
+ return null;
87
+ }
88
+ }
89
+ export function resolveSourceLocation(location) {
90
+ if (typeof location !== 'function') {
91
+ ensureValidSourceLocation(location);
92
+ return location;
93
+ }
94
+ const resolvedLocation = resolveProviderSourceLocation(location);
95
+ if (resolvedLocation === null) {
75
96
  return unknownSourceLocation;
76
97
  }
98
+ ensureValidSourceLocation(resolvedLocation);
99
+ return resolvedLocation;
77
100
  }
78
101
  //# sourceMappingURL=source-location.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"source-location.js","sourceRoot":"","sources":["../../../../source/assertion-protocol/source-location.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-location.js","sourceRoot":"","sources":["../../../../source/assertion-protocol/source-location.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import type { WallClock } from '@enormora/wall-clock';
2
2
  import { type ExecuteResourceBudgets, type ExecuteTimeoutPolicy, type ExecutionSupervisionDependencies } from './execution-supervision.ts';
3
- import { type OutputRenderer } from './reporter-output.ts';
4
- import type { ReporterDispatcher } from './reporter-dispatcher.ts';
5
- import { type Reporter, type RunFacts } from './reporter.ts';
3
+ import { type DefinedOutputRenderer } from './reporter-output.ts';
4
+ import { type ReporterDispatcher } from './reporter-dispatcher.ts';
5
+ import type { DefinedReporter, RunFacts } from './reporter.ts';
6
6
  import type { RunResourceUsageTracker, RunResult } from './run-result.ts';
7
7
  import type { TestPlan } from './test-plan.ts';
8
8
  export type ExecuteExecution = {
@@ -10,8 +10,8 @@ export type ExecuteExecution = {
10
10
  };
11
11
  export type ExecuteOptions = {
12
12
  readonly execution: ExecuteExecution;
13
- readonly outputRenderer?: OutputRenderer;
14
- readonly reporters: readonly Reporter[];
13
+ readonly outputRenderer?: DefinedOutputRenderer;
14
+ readonly reporters: readonly DefinedReporter[];
15
15
  readonly resourceBudgets?: ExecuteResourceBudgets | null;
16
16
  readonly resourceUsageTracker?: RunResourceUsageTracker | null;
17
17
  readonly runtimePolicy?: RuntimePolicy | null;
@@ -1 +1 @@
1
- {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAIH,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAEzB,KAAK,gCAAgC,EACxC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAA6B,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAyB,MAAM,eAAe,CAAC;AAEpF,OAAO,KAAK,EAER,uBAAuB,EACvB,SAAS,EAEZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,gBAAgB,CAAC;AAE7D,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,IAAI,EAAE,uBAAuB,GAAG,mBAAmB,CAAC;CAChE,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IACzB,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAC;IACxC,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;AAOF,KAAK,aAAa,GAAG,WAAW,CAAC,gCAAgC,CAAC,eAAe,CAAC,CAAC,CAAC;AAEpF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CACjC,CAAC;AA2eF,MAAM,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,cAAc,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;AAE3F,wBAAgB,aAAa,CAAC,YAAY,EAAE,mBAAmB,GAAG,OAAO,CAexE"}
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAIH,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAEzB,KAAK,gCAAgC,EACxC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAA6B,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAGH,KAAK,kBAAkB,EAE1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE/D,OAAO,KAAK,EAER,uBAAuB,EACvB,SAAS,EAEZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,gBAAgB,CAAC;AAE7D,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,IAAI,EAAE,uBAAuB,GAAG,mBAAmB,CAAC;CAChE,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IACzB,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,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;AAOF,KAAK,aAAa,GAAG,WAAW,CAAC,gCAAgC,CAAC,eAAe,CAAC,CAAC,CAAC;AAEpF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CACjC,CAAC;AAqdF,MAAM,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,cAAc,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;AAE3F,wBAAgB,aAAa,CAAC,YAAY,EAAE,mBAAmB,GAAG,OAAO,CA2BxE"}
@@ -2,20 +2,20 @@ import { createRunResult } from "./execution-result.js";
2
2
  import { startResourceBudgetTracking } from "./execution-resource-budget-tracking.js";
3
3
  import { createExecutionSupervision, executeCaseBody } from "./execution-supervision.js";
4
4
  import { createPlainOutputRenderer } from "./reporter-output.js";
5
- import { validateReporterSinks } from "./reporter.js";
5
+ import { createReporterDisposal } from "./reporter-dispatcher.js";
6
6
  import { createReporterEventQueue } from "./reporter-event-queue.js";
7
7
  const epoch = new Date(0);
8
8
  async function reportTestStart(testCase, attempt, context) {
9
- return await context.dependencies.reporterDispatcher.reportEvent(context.reporters, {
9
+ return await context.reporterDelivery.reportEvent({
10
10
  attempt,
11
11
  case: testCase.id,
12
12
  definitionLocations: testCase.definitionLocations,
13
13
  kind: 'test-start',
14
14
  suitePath: testCase.suitePath
15
- }, context.outputRenderer);
15
+ });
16
16
  }
17
17
  async function reportTestEnd(input, context) {
18
- return await context.dependencies.reporterDispatcher.reportEvent(context.reporters, {
18
+ return await context.reporterDelivery.reportEvent({
19
19
  attempt: input.attempt,
20
20
  case: input.testCase.id,
21
21
  definitionLocations: input.testCase.definitionLocations,
@@ -24,7 +24,7 @@ async function reportTestEnd(input, context) {
24
24
  suitePath: input.testCase.suitePath,
25
25
  verdict: input.result.verdict,
26
26
  wallTimeMs: input.wallTimeMs
27
- }, context.outputRenderer);
27
+ });
28
28
  }
29
29
  async function executeCase(input) {
30
30
  const startErrors = await reportTestStart(input.testCase, input.attempt, input.context);
@@ -55,35 +55,35 @@ async function reportSuiteTransition(context, currentSuitePath, nextSuitePath) {
55
55
  for (let pathLength = currentSuitePath.length; pathLength > sharedPrefixLength; pathLength -= 1) {
56
56
  reporterErrors = [
57
57
  ...reporterErrors,
58
- ...await context.dependencies.reporterDispatcher.reportEvent(context.reporters, {
58
+ ...await context.reporterDelivery.reportEvent({
59
59
  kind: 'suite-end',
60
60
  suitePath: currentSuitePath.slice(0, pathLength)
61
- }, context.outputRenderer)
61
+ })
62
62
  ];
63
63
  }
64
64
  for (let pathLength = sharedPrefixLength + 1; pathLength <= nextSuitePath.length; pathLength += 1) {
65
65
  reporterErrors = [
66
66
  ...reporterErrors,
67
- ...await context.dependencies.reporterDispatcher.reportEvent(context.reporters, {
67
+ ...await context.reporterDelivery.reportEvent({
68
68
  kind: 'suite-start',
69
69
  suitePath: nextSuitePath.slice(0, pathLength)
70
- }, context.outputRenderer)
70
+ })
71
71
  ];
72
72
  }
73
73
  return reporterErrors;
74
74
  }
75
- async function executeTestPlanCases(testPlan, options, dependencies, supervision) {
75
+ async function executeTestPlanCases(input) {
76
76
  let perTest = [];
77
77
  let reporterErrors = [];
78
78
  let currentSuitePath = [];
79
- for (const testCase of testPlan.cases) {
80
- const suiteErrors = await reportSuiteTransition({ dependencies, outputRenderer: options.outputRenderer, reporters: options.reporters }, currentSuitePath, testCase.suitePath);
79
+ for (const testCase of input.testPlan.cases) {
80
+ const suiteErrors = await reportSuiteTransition(input.context, currentSuitePath, testCase.suitePath);
81
81
  currentSuitePath = testCase.suitePath;
82
82
  const testRun = await executeCase({
83
83
  attempt: 0,
84
- context: { dependencies, outputRenderer: options.outputRenderer, reporters: options.reporters },
85
- options,
86
- supervision,
84
+ context: input.context,
85
+ options: input.options,
86
+ supervision: input.supervision,
87
87
  testCase
88
88
  });
89
89
  reporterErrors = [...reporterErrors, ...suiteErrors, ...testRun.reporterErrors];
@@ -93,17 +93,16 @@ async function executeTestPlanCases(testPlan, options, dependencies, supervision
93
93
  perTest,
94
94
  reporterErrors: [
95
95
  ...reporterErrors,
96
- ...supervision.runnerErrors,
97
- ...options.runtimePolicy?.takeRunErrors() ?? [],
98
- ...await reportSuiteTransition({ dependencies, outputRenderer: options.outputRenderer, reporters: options.reporters }, currentSuitePath, [])
96
+ ...input.supervision.runnerErrors,
97
+ ...input.options.runtimePolicy?.takeRunErrors() ?? [],
98
+ ...await reportSuiteTransition(input.context, currentSuitePath, [])
99
99
  ]
100
100
  };
101
101
  }
102
- async function reportConcurrentCaseStarts(testPlan, reporters, outputRenderer, dependencies) {
102
+ async function reportConcurrentCaseStarts(testPlan, reporterDelivery, dependencies) {
103
103
  const reportingContext = {
104
104
  dependencies,
105
- outputRenderer,
106
- reporters
105
+ reporterDelivery
107
106
  };
108
107
  let reporterErrors = [];
109
108
  let currentSuitePath = [];
@@ -133,7 +132,7 @@ async function reportConcurrentCaseEnd(testCase, executedCase, reportQueue) {
133
132
  async function executeConcurrentCases(input) {
134
133
  const endReporterErrors = [];
135
134
  const caseExecutions = input.testPlan.cases.map(async function executeCaseConcurrently(testCase) {
136
- const executedCase = await executeCaseBody(testCase, input.options.timeoutPolicy, input.supervision, input.dependencies);
135
+ const executedCase = await executeCaseBody(testCase, input.options.timeoutPolicy, input.supervision, input.context.dependencies);
137
136
  endReporterErrors.push(...await reportConcurrentCaseEnd(testCase, executedCase, input.reportQueue));
138
137
  return executedCase;
139
138
  });
@@ -146,47 +145,47 @@ async function executeConcurrentCases(input) {
146
145
  runnerErrors: input.supervision.runnerErrors
147
146
  };
148
147
  }
149
- async function executeConcurrentTestPlanCases(testPlan, options, dependencies, supervision) {
150
- const reporterErrors = await reportConcurrentCaseStarts(testPlan, options.reporters, options.outputRenderer, dependencies);
148
+ async function executeConcurrentTestPlanCases(input) {
149
+ const reporterErrors = await reportConcurrentCaseStarts(input.testPlan, input.context.reporterDelivery, input.context.dependencies);
151
150
  const concurrentCaseExecution = await executeConcurrentCases({
152
- dependencies,
153
- options,
154
- reportQueue: createReporterEventQueue(options.reporters, options.outputRenderer, dependencies),
155
- supervision,
156
- testPlan
151
+ context: input.context,
152
+ options: input.options,
153
+ reportQueue: createReporterEventQueue(input.context.reporterDelivery),
154
+ supervision: input.supervision,
155
+ testPlan: input.testPlan
157
156
  });
158
157
  return {
159
158
  perTest: concurrentCaseExecution.perTest,
160
159
  reporterErrors: [
161
160
  ...reporterErrors,
162
161
  ...concurrentCaseExecution.runnerErrors,
163
- ...options.runtimePolicy?.takeRunErrors() ?? [],
162
+ ...input.options.runtimePolicy?.takeRunErrors() ?? [],
164
163
  ...concurrentCaseExecution.endReporterErrors
165
164
  ]
166
165
  };
167
166
  }
168
- async function executeTestPlanCasesWithMode(testPlan, options, dependencies, supervision) {
169
- if (options.execution.mode === 'concurrent-in-process') {
170
- return await executeConcurrentTestPlanCases(testPlan, options, dependencies, supervision);
167
+ async function executeTestPlanCasesWithMode(input) {
168
+ if (input.options.execution.mode === 'concurrent-in-process') {
169
+ return await executeConcurrentTestPlanCases(input);
171
170
  }
172
- return await executeTestPlanCases(testPlan, options, dependencies, supervision);
171
+ return await executeTestPlanCases(input);
173
172
  }
174
- async function executeTestPlanCasesAndMeasureResourceUsage(testPlan, options, dependencies) {
175
- const supervision = createExecutionSupervision();
176
- if (options.resourceUsageTracker === null || options.resourceUsageTracker === undefined) {
173
+ async function executeTestPlanCasesWithResourceBudgetTracking(input) {
174
+ const { resourceUsageTracker } = input.options;
175
+ if (resourceUsageTracker === null || resourceUsageTracker === undefined) {
177
176
  return {
178
- executedTestPlan: await executeTestPlanCasesWithMode(testPlan, options, dependencies, supervision),
177
+ executedTestPlan: await executeTestPlanCasesWithMode(input),
179
178
  resourceUsage: null
180
179
  };
181
180
  }
182
181
  const resourceBudgetTracking = startResourceBudgetTracking({
183
- dependencies,
184
- resourceBudgets: options.resourceBudgets ?? null,
185
- resourceUsageTracker: options.resourceUsageTracker,
186
- supervision
182
+ dependencies: input.context.dependencies,
183
+ resourceBudgets: input.options.resourceBudgets ?? null,
184
+ resourceUsageTracker,
185
+ supervision: input.supervision
187
186
  });
188
187
  try {
189
- const executedTestPlan = await executeTestPlanCasesWithMode(testPlan, options, dependencies, supervision);
188
+ const executedTestPlan = await executeTestPlanCasesWithMode(input);
190
189
  const resourceBudgetResult = resourceBudgetTracking.finish();
191
190
  return {
192
191
  executedTestPlan: {
@@ -204,6 +203,16 @@ async function executeTestPlanCasesAndMeasureResourceUsage(testPlan, options, de
204
203
  throw error;
205
204
  }
206
205
  }
206
+ async function executeTestPlanCasesAndMeasureResourceUsage(testPlan, options, dependencies, reporterDelivery) {
207
+ const supervision = createExecutionSupervision();
208
+ const input = {
209
+ context: { dependencies, reporterDelivery },
210
+ options,
211
+ supervision,
212
+ testPlan
213
+ };
214
+ return await executeTestPlanCasesWithResourceBudgetTracking(input);
215
+ }
207
216
  function appendRunnerErrors(result, runnerErrors) {
208
217
  if (runnerErrors.length === 0) {
209
218
  return result;
@@ -235,27 +244,15 @@ function executeOptionsWithDefaults(options) {
235
244
  timeoutPolicy: null
236
245
  };
237
246
  }
238
- function createReporterDisposal(reporters, dependencies) {
239
- let reportersDisposed = false;
240
- return {
241
- async disposeOnce() {
242
- if (reportersDisposed) {
243
- return [];
244
- }
245
- reportersDisposed = true;
246
- return await dependencies.reporterDispatcher.disposeReporters(reporters);
247
- }
248
- };
249
- }
250
- async function createRunResultBeforeRunEnd(testPlan, options, dependencies) {
247
+ async function createRunResultBeforeRunEnd(testPlan, options, dependencies, reporterDelivery) {
251
248
  const startedAtMs = dependencies.wallClock.currentTimestampInMilliseconds;
252
- const startErrors = await dependencies.reporterDispatcher.reportEvent(options.reporters, {
249
+ const startErrors = await reporterDelivery.reportEvent({
253
250
  facts: options.runFacts,
254
251
  kind: 'run-start',
255
252
  root: testPlan.root,
256
253
  startedAt: options.startedAt
257
- }, options.outputRenderer);
258
- const { executedTestPlan, resourceUsage } = await executeTestPlanCasesAndMeasureResourceUsage(testPlan, options, dependencies);
254
+ });
255
+ const { executedTestPlan, resourceUsage } = await executeTestPlanCasesAndMeasureResourceUsage(testPlan, options, dependencies, reporterDelivery);
259
256
  const reporterErrors = [...startErrors, ...executedTestPlan.reporterErrors];
260
257
  return createRunResult(testPlan, executedTestPlan.perTest, reporterErrors, {
261
258
  resourceUsage,
@@ -263,16 +260,15 @@ async function createRunResultBeforeRunEnd(testPlan, options, dependencies) {
263
260
  wallClock: dependencies.wallClock
264
261
  });
265
262
  }
266
- async function executeRun(testPlan, options, dependencies, reporterDisposal) {
267
- validateReporterSinks(options.reporters);
268
- const result = await createRunResultBeforeRunEnd(testPlan, options, dependencies);
269
- const runEndErrors = await dependencies.reporterDispatcher.reportEvent(options.reporters, {
263
+ async function executeRun(input) {
264
+ const result = await createRunResultBeforeRunEnd(input.testPlan, input.options, input.context.dependencies, input.context.reporterDelivery);
265
+ const runEndErrors = await input.context.reporterDelivery.reportEvent({
270
266
  kind: 'run-end',
271
267
  result
272
- }, options.outputRenderer);
268
+ });
273
269
  const resultForFinalReporting = appendRunnerErrors(result, runEndErrors);
274
- const finalReporterErrors = await dependencies.reporterDispatcher.reportResult(options.reporters, resultForFinalReporting, options.outputRenderer);
275
- const disposeErrors = await reporterDisposal.disposeOnce();
270
+ const finalReporterErrors = await input.context.reporterDelivery.reportResult(resultForFinalReporting);
271
+ const disposeErrors = await input.reporterDisposal.disposeOnce();
276
272
  return appendRunnerErrors(resultForFinalReporting, [...finalReporterErrors, ...disposeErrors]);
277
273
  }
278
274
  async function throwWithCleanupErrors(error, reporterDisposal) {
@@ -289,9 +285,18 @@ export function createExecute(dependencies) {
289
285
  ...dependencies,
290
286
  runtimePolicy: executeOptions.runtimePolicy
291
287
  };
292
- const reporterDisposal = createReporterDisposal(executeOptions.reporters, dependencies);
288
+ const reporterDelivery = await dependencies.reporterDispatcher.createDelivery(executeOptions.reporters, executeOptions.outputRenderer);
289
+ const reporterDisposal = createReporterDisposal(reporterDelivery.disposeReporters);
293
290
  try {
294
- return await executeRun(testPlan, executeOptions, executionDependencies, reporterDisposal);
291
+ return await executeRun({
292
+ context: {
293
+ dependencies: executionDependencies,
294
+ reporterDelivery
295
+ },
296
+ options: executeOptions,
297
+ reporterDisposal,
298
+ testPlan
299
+ });
295
300
  }
296
301
  catch (error) {
297
302
  return await throwWithCleanupErrors(error, reporterDisposal);
@@ -1 +1 @@
1
- {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../../../source/engine/execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../../../source/engine/execution.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,26 @@
1
1
  import type { WallClock } from '@enormora/wall-clock';
2
- import type { OutputLineWriter, OutputRenderer } from './reporter-output.ts';
3
- import type { Reporter, ReporterEvent } from './reporter.ts';
2
+ import { createReporterDisposal as createReporterDisposalFromCallback, type ReporterDisposal as CoreReporterDisposal } from './reporter-disposal.ts';
3
+ import type { DefinedOutputRenderer, OutputLineWriter } from './reporter-output.ts';
4
+ import { type DefinedReporter, type ReporterEvent } from './reporter.ts';
4
5
  import type { RunResult, RunnerError } from './run-result.ts';
5
6
  export type ReporterDispatcher = {
6
- readonly disposeReporters: (reporters: readonly Reporter[]) => Promise<readonly RunnerError[]>;
7
- readonly reportEvent: (reporters: readonly Reporter[], event: ReporterEvent, outputRenderer: OutputRenderer) => Promise<readonly RunnerError[]>;
8
- readonly reportResult: (reporters: readonly Reporter[], result: RunResult, outputRenderer: OutputRenderer) => Promise<readonly RunnerError[]>;
7
+ readonly createDelivery: (reporters: readonly DefinedReporter[], outputRenderer: DefinedOutputRenderer) => Promise<ReporterDelivery>;
9
8
  readonly trackRunnerErrorDelivery: <Result>(work: () => Promise<Result>) => Promise<{
10
9
  readonly deliveredRunnerErrors: readonly RunnerError[];
11
10
  readonly result: Result;
12
11
  }>;
13
12
  };
13
+ export type ReporterDelivery = {
14
+ readonly disposeReporters: () => Promise<readonly RunnerError[]>;
15
+ readonly reportEvent: (event: ReporterEvent) => Promise<readonly RunnerError[]>;
16
+ readonly reportResult: (result: RunResult) => Promise<readonly RunnerError[]>;
17
+ };
14
18
  export type ReporterDispatcherDependencies = {
15
19
  readonly stderr: OutputLineWriter;
16
20
  readonly stdout: OutputLineWriter;
17
21
  readonly wallClock: WallClock;
18
22
  };
23
+ export type ReporterDisposal = CoreReporterDisposal;
24
+ export declare const createReporterDisposal: typeof createReporterDisposalFromCallback;
19
25
  export declare function createReporterDispatcher(dependencies: ReporterDispatcherDependencies): ReporterDispatcher;
20
26
  //# sourceMappingURL=reporter-dispatcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reporter-dispatcher.d.ts","sourceRoot":"","sources":["../../../../source/engine/reporter-dispatcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAER,gBAAgB,EAChB,cAAc,EAEjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAI9D,MAAM,MAAM,kBAAkB,GAAG;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,CACvB,SAAS,EAAE,SAAS,QAAQ,EAAE,KAC7B,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,CAClB,SAAS,EAAE,SAAS,QAAQ,EAAE,EAC9B,KAAK,EAAE,aAAa,EACpB,cAAc,EAAE,cAAc,KAC7B,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,CACnB,SAAS,EAAE,SAAS,QAAQ,EAAE,EAC9B,MAAM,EAAE,SAAS,EACjB,cAAc,EAAE,cAAc,KAC7B,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC,CAAC;IACrC,QAAQ,CAAC,wBAAwB,EAAE,CAAC,MAAM,EACtC,IAAI,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,KAC1B,OAAO,CAAC;QACT,QAAQ,CAAC,qBAAqB,EAAE,SAAS,WAAW,EAAE,CAAC;QACvD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KAC3B,CAAC,CAAC;CACN,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IACzC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CACjC,CAAC;AA2bF,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,8BAA8B,GAAG,kBAAkB,CA6BzG"}
1
+ {"version":3,"file":"reporter-dispatcher.d.ts","sourceRoot":"","sources":["../../../../source/engine/reporter-dispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EACH,sBAAsB,IAAI,kCAAkC,EAC5D,KAAK,gBAAgB,IAAI,oBAAoB,EAChD,MAAM,wBAAwB,CAAC;AAQhC,OAAO,KAAK,EACR,qBAAqB,EACrB,gBAAgB,EAEnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAyB,KAAK,eAAe,EAAiB,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAE/G,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAI9D,MAAM,MAAM,kBAAkB,GAAG;IAC7B,QAAQ,CAAC,cAAc,EAAE,CACrB,SAAS,EAAE,SAAS,eAAe,EAAE,EACrC,cAAc,EAAE,qBAAqB,KACpC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC/B,QAAQ,CAAC,wBAAwB,EAAE,CAAC,MAAM,EACtC,IAAI,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,KAC1B,OAAO,CAAC;QACT,QAAQ,CAAC,qBAAqB,EAAE,SAAS,WAAW,EAAE,CAAC;QACvD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KAC3B,CAAC,CAAC;CACN,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC,CAAC;IACjE,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC,CAAC;IAChF,QAAQ,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC,CAAC;CACjF,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IACzC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CACjC,CAAC;AAwBF,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC;AAEpD,eAAO,MAAM,sBAAsB,EAAE,OAAO,kCAAuE,CAAC;AAyZpH,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,8BAA8B,GAAG,kBAAkB,CASzG"}