@overkill-dev/reporter-dot 0.0.33 → 0.0.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "ansi-escapes": "7.3.0",
8
8
  "figures": "6.1.0",
9
9
  "is-interactive": "2.0.0",
10
- "string-width": "8.2.2",
10
+ "string-width": "8.3.0",
11
11
  "yoctocolors": "2.2.0"
12
12
  },
13
13
  "description": "Compact Overkill dot progress reporter.",
@@ -29,15 +29,16 @@
29
29
  "license": "MIT",
30
30
  "name": "@overkill-dev/reporter-dot",
31
31
  "peerDependencies": {
32
- "@overkill-dev/engine": "0.0.41"
32
+ "@overkill-dev/engine": "0.0.42"
33
33
  },
34
34
  "repository": {
35
35
  "type": "git",
36
36
  "url": "git+https://github.com/enormora/overkill.git"
37
37
  },
38
38
  "sideEffects": [
39
- "./reporters/dot-reporter.js"
39
+ "./reporters/dot-reporter.js",
40
+ "./reporters/human-reporter-rendering.js"
40
41
  ],
41
42
  "type": "module",
42
- "version": "0.0.33"
43
+ "version": "0.0.35"
43
44
  }
@@ -1,12 +1,9 @@
1
1
  import figures from 'figures';
2
2
  import colors from 'yoctocolors';
3
- import { formatCaseId } from "@overkill-dev/engine";
4
3
  import { defineReporter } from "@overkill-dev/engine";
5
- import { formatSourceLocation } from "@overkill-dev/engine";
6
- import { primaryFailureSourceLocation } from "./failure-location.js";
7
- import { formatFailureSummary } from "./failure-summary.js";
8
4
  import { formatRunFactSummary } from "./run-fact-summary.js";
9
5
  import { createTerminalProgressRenderer } from "./terminal.js";
6
+ import { formatCountSummary, formatTimingSummary, problemLines } from "./human-reporter-rendering.js";
10
7
  const passMark = colors.green(figures.tick);
11
8
  const failMark = colors.red(figures.cross);
12
9
  const skipMark = colors.cyan('°');
@@ -16,43 +13,9 @@ const microsecondsPerMillisecond = 1000;
16
13
  function formatDuration(durationMicroseconds) {
17
14
  return `${durationMicroseconds / microsecondsPerMillisecond} ms`;
18
15
  }
19
- function executedCount(result) {
20
- const { summary } = result;
21
- return summary.passed + summary.failed + summary.skipped + summary.inconclusive +
22
- summary.resourceExhausted + summary.crashed;
23
- }
24
16
  function formatSummary(result) {
25
- const { summary } = result;
26
- const outcomes = [
27
- `${summary.passed} pass`,
28
- `${summary.failed} fail`,
29
- `${summary.skipped} skip`,
30
- ...summary.inconclusive === 0 ? [] : [`${summary.inconclusive} inconclusive`],
31
- ...summary.resourceExhausted === 0 ? [] : [`${summary.resourceExhausted} resource-exhausted`],
32
- ...summary.crashed === 0 ? [] : [`${summary.crashed} crash`]
33
- ]
34
- .join(', ');
35
- const orphanSummary = result.orphans.length === 0 ? '' : `, ${result.orphans.length} orphaned`;
36
- const countSummary = [
37
- `${summary.discovered} discovered`,
38
- `${summary.planned} planned`,
39
- `${executedCount(result)} executed`
40
- ]
41
- .join(', ');
42
17
  const statusMark = result.status === 'failed' ? failMark : passMark;
43
- return `${statusMark} ${countSummary} (${outcomes})${orphanSummary} in ${formatDuration(result.timings.summary.totalWallTimeMicroseconds)}`;
44
- }
45
- function failureOrigin(caseId, outcome, context) {
46
- const failure = outcome.failures[0];
47
- const location = primaryFailureSourceLocation(failure);
48
- const locationText = location === null ? null : formatSourceLocation(location, context);
49
- return locationText === null ? formatCaseId(caseId) : `${locationText} ${formatCaseId(caseId)}`;
50
- }
51
- function outcomeDetail(outcome) {
52
- if (outcome.kind === 'inconclusive') {
53
- return outcome.reason;
54
- }
55
- return null;
18
+ return `${statusMark} ${formatCountSummary(result)} in ${formatDuration(result.timings.summary.totalWallTimeMicroseconds)} (${formatTimingSummary(result)})`;
56
19
  }
57
20
  function markForVerdict(verdict) {
58
21
  if (verdict === 'resource-exhausted' || verdict === 'crashed') {
@@ -72,30 +35,6 @@ function markForVerdict(verdict) {
72
35
  function formatRunnerError(error) {
73
36
  return `Runner error: ${error.message}`;
74
37
  }
75
- function interruptedTestDetailLine(testResult) {
76
- const prefix = testResult.verdict === 'resource-exhausted' ? 'Resource exhausted' : 'Crashed';
77
- return `${prefix}: ${formatCaseId(testResult.id)}`;
78
- }
79
- function failedTestDetailLine(caseId, outcome, context) {
80
- const origin = failureOrigin(caseId, outcome, context);
81
- const summary = formatFailureSummary(outcome.failures[0]);
82
- return `Failed: ${origin}: ${summary}`;
83
- }
84
- function detailLines(result, context) {
85
- return result.perTest.flatMap(function testDetail(testResult) {
86
- if (testResult.outcome === null) {
87
- return [interruptedTestDetailLine(testResult)];
88
- }
89
- if (testResult.outcome.kind === 'fail') {
90
- return [failedTestDetailLine(testResult.id, testResult.outcome, context)];
91
- }
92
- const detail = outcomeDetail(testResult.outcome);
93
- if (detail === null || testResult.outcome.kind === 'skip') {
94
- return [];
95
- }
96
- return [`Inconclusive: ${formatCaseId(testResult.id)}: ${detail}`];
97
- });
98
- }
99
38
  export function createDotReporter(dependencies) {
100
39
  return defineReporter(function createDotRuntimeReporter(context) {
101
40
  const progress = createTerminalProgressRenderer({
@@ -142,7 +81,8 @@ export function createDotReporter(dependencies) {
142
81
  async onFinish(result) {
143
82
  finishProgress();
144
83
  writeLine(formatSummary(result));
145
- for (const detailLine of detailLines(result, context)) {
84
+ const detailLines = problemLines(result, context, { verbose: false });
85
+ for (const detailLine of detailLines) {
146
86
  writeLine(detailLine);
147
87
  }
148
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dot-reporter.js","sourceRoot":"","sources":["../../../../source/reporters/dot-reporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dot-reporter.js","sourceRoot":"","sources":["../../../../source/reporters/dot-reporter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,214 @@
1
+ import colors from 'yoctocolors';
2
+ import { formatCaseId } from "@overkill-dev/engine";
3
+ import { formatDefinitionLocations } from "@overkill-dev/engine";
4
+ import { formatFailure } from "./line-failure-rendering.js";
5
+ import { formatTimingSummary as formatRunTimingSummary } from "./run-timing-summary.js";
6
+ const colorPalette = [
7
+ colors.cyan,
8
+ colors.green,
9
+ colors.magenta,
10
+ colors.yellow,
11
+ colors.blue
12
+ ];
13
+ function executedCount(result) {
14
+ const { summary } = result;
15
+ return summary.passed + summary.failed + summary.skipped + summary.inconclusive +
16
+ summary.resourceExhausted + summary.crashed + summary.runtimePolicy;
17
+ }
18
+ export const formatTimingSummary = formatRunTimingSummary;
19
+ export function formatCountSummary(result) {
20
+ const { summary } = result;
21
+ const outcomes = [
22
+ `${summary.passed} pass`,
23
+ `${summary.failed} fail`,
24
+ `${summary.skipped} skip`,
25
+ ...summary.inconclusive === 0 ? [] : [`${summary.inconclusive} inconclusive`],
26
+ ...summary.resourceExhausted === 0 ? [] : [`${summary.resourceExhausted} resource-exhausted`],
27
+ ...summary.runtimePolicy === 0 ? [] : [`${summary.runtimePolicy} runtime-policy`],
28
+ ...summary.crashed === 0 ? [] : [`${summary.crashed} crash`]
29
+ ]
30
+ .join(', ');
31
+ const orphanSummary = result.orphans.length === 0 ? '' : `, ${result.orphans.length} orphaned`;
32
+ return `${summary.discovered} discovered, ${summary.planned} planned, ${executedCount(result)} executed ` +
33
+ `(${outcomes})${orphanSummary}`;
34
+ }
35
+ function hashText(value) {
36
+ let hash = 0;
37
+ for (const character of value) {
38
+ hash += character.codePointAt(0) ?? 0;
39
+ }
40
+ return hash;
41
+ }
42
+ function paletteColor(value) {
43
+ return colorPalette[hashText(value) % colorPalette.length] ?? colors.cyan;
44
+ }
45
+ function formatColoredLabel(value, options) {
46
+ if (!options.color) {
47
+ return value;
48
+ }
49
+ return paletteColor(value)(value);
50
+ }
51
+ function runtimeLabel(runtime) {
52
+ if (runtime.variantId !== null) {
53
+ return `${runtime.name}:${runtime.variantId}`;
54
+ }
55
+ const dimensions = Object
56
+ .entries(runtime.dimensions)
57
+ .toSorted(function compareDimension([left], [right]) {
58
+ return left.localeCompare(right);
59
+ })
60
+ .map(function formatDimension([key, value]) {
61
+ return `${key}=${value}`;
62
+ });
63
+ return dimensions.length === 0 ? runtime.name : `${runtime.name}:${dimensions.join(',')}`;
64
+ }
65
+ function runtimePrefixes(runtimes, options) {
66
+ return runtimes
67
+ .map(function formatRuntime(runtime) {
68
+ const label = runtimeLabel(runtime);
69
+ return `[${formatColoredLabel(label, options)}]`;
70
+ })
71
+ .join(' ');
72
+ }
73
+ function suiteLabel(path, topLevel, options) {
74
+ if (!options.color) {
75
+ return path;
76
+ }
77
+ return `${paletteColor(topLevel)(topLevel)}${path.slice(topLevel.length)}`;
78
+ }
79
+ function suitePrefix(suite, options) {
80
+ if (suite.length === 0) {
81
+ return '';
82
+ }
83
+ const path = suite.join(' > ');
84
+ const topLevel = suite[0] ?? path;
85
+ const label = suiteLabel(path, topLevel, options);
86
+ return `[${label}]`;
87
+ }
88
+ export function contextPrefix(runtimes, suite, options) {
89
+ return [runtimePrefixes(runtimes, options), suitePrefix(suite, options)]
90
+ .filter(function present(value) {
91
+ return value.length > 0;
92
+ })
93
+ .join(' ');
94
+ }
95
+ function formatRunnerError(error) {
96
+ const attribution = error.attributedTo === null ? [] : [`test: ${formatCaseId(error.attributedTo)}`];
97
+ const diagnostics = error.diagnostics.map(function formatDiagnostic(diagnostic) {
98
+ return `${diagnostic.label}: ${diagnostic.value}`;
99
+ });
100
+ return [
101
+ `Runner error: ${error.message}`,
102
+ `type: ${error.subtype}`,
103
+ ...attribution,
104
+ ...diagnostics
105
+ ];
106
+ }
107
+ function artifactCaseKey(id) {
108
+ return JSON.stringify([id.file, id.suite, id.title, id.params]);
109
+ }
110
+ function caseArtifacts(result, testResult) {
111
+ const testKey = artifactCaseKey(testResult.id);
112
+ return result.artifacts.filter(function artifactForCase(artifact) {
113
+ return artifact.id.scope.kind === 'case' && artifactCaseKey(artifact.id.scope.case) === testKey;
114
+ });
115
+ }
116
+ function runArtifacts(result) {
117
+ return result.artifacts.filter(function isRunArtifact(artifact) {
118
+ return artifact.id.scope.kind === 'run';
119
+ });
120
+ }
121
+ function artifactLines(artifact) {
122
+ if (artifact.payload.kind !== 'captured-output') {
123
+ return [];
124
+ }
125
+ const suffix = artifact.payload.truncated ? ' truncated' : '';
126
+ const header = `${artifact.payload.stream}${suffix}:`;
127
+ const textLines = artifact.payload.text.length === 0
128
+ ? []
129
+ : artifact.payload.text.replace(/\n$/u, '').split('\n');
130
+ return [header, ...textLines];
131
+ }
132
+ function indentDetail(line) {
133
+ return ` ${line}`;
134
+ }
135
+ function failedTestLines(result, testResult, context, heading) {
136
+ if (testResult.outcome?.kind !== 'fail') {
137
+ return [];
138
+ }
139
+ return [
140
+ heading,
141
+ ...testResult.outcome.failures.flatMap(function formatTestFailure(failure) {
142
+ return formatFailure(failure, context).map(indentDetail);
143
+ }),
144
+ ...caseArtifacts(result, testResult).flatMap(function formatArtifact(artifact) {
145
+ return artifactLines(artifact).map(indentDetail);
146
+ })
147
+ ];
148
+ }
149
+ function passedArtifactLines(result, testResult, heading) {
150
+ return caseArtifacts(result, testResult).flatMap(function formatArtifact(artifact) {
151
+ return [
152
+ heading,
153
+ ...artifactLines(artifact).map(indentDetail)
154
+ ];
155
+ });
156
+ }
157
+ function testProblemHeading(testResult, context) {
158
+ const location = formatDefinitionLocations(testResult.definitionLocations, context).primary;
159
+ const locationText = location === null ? '' : ` (${location})`;
160
+ return `${formatCaseId(testResult.id)}${locationText}`;
161
+ }
162
+ function knownOutcomeProblemLines(input) {
163
+ const { context, heading, options, outcome, result, testResult } = input;
164
+ if (outcome.kind === 'fail') {
165
+ return failedTestLines(result, testResult, context, heading);
166
+ }
167
+ if (outcome.kind === 'inconclusive') {
168
+ return [heading, ` ${outcome.reason}`];
169
+ }
170
+ if (options.verbose && outcome.kind === 'pass') {
171
+ return passedArtifactLines(result, testResult, heading);
172
+ }
173
+ return [];
174
+ }
175
+ function testProblemLines(result, testResult, context, options) {
176
+ const heading = testProblemHeading(testResult, context);
177
+ const { outcome } = testResult;
178
+ if (outcome === null) {
179
+ return [heading, ` ${testResult.verdict}`];
180
+ }
181
+ return knownOutcomeProblemLines({ context, heading, options, outcome, result, testResult });
182
+ }
183
+ function problemTestResult(testResult, verbose) {
184
+ const { outcome } = testResult;
185
+ if (outcome === null) {
186
+ return true;
187
+ }
188
+ if (outcome.kind === 'fail' || outcome.kind === 'inconclusive') {
189
+ return true;
190
+ }
191
+ return verbose && outcome.kind === 'pass';
192
+ }
193
+ export function problemLines(result, context, options) {
194
+ const testLines = result
195
+ .perTest
196
+ .filter(function isProblem(testResult) {
197
+ return problemTestResult(testResult, options.verbose);
198
+ })
199
+ .flatMap(function formatProblem(testResult) {
200
+ return testProblemLines(result, testResult, context, options);
201
+ });
202
+ const runnerErrorLines = result.runnerErrors.flatMap(formatRunnerError);
203
+ const runArtifactLines = result.status === 'failed'
204
+ ? runArtifacts(result).flatMap(artifactLines)
205
+ : [];
206
+ const lines = [...testLines, ...runnerErrorLines, ...runArtifactLines];
207
+ return lines.length === 0 ? [] : [
208
+ 'Problems',
209
+ ...lines.map(function indentProblem(line) {
210
+ return ` ${line}`;
211
+ })
212
+ ];
213
+ }
214
+ //# sourceMappingURL=human-reporter-rendering.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"human-reporter-rendering.js","sourceRoot":"","sources":["../../../../source/reporters/human-reporter-rendering.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,238 @@
1
+ import colors from 'yoctocolors';
2
+ import { formatAssertionSourceLocations } from "@overkill-dev/engine";
3
+ import { formatSerializedValue, keyText } from "./serialized-value-rendering.js";
4
+ const blockLineLimit = 100;
5
+ const bytesPerKilobyte = 1024;
6
+ const valueKilobytes = 8;
7
+ const valueByteLimit = valueKilobytes * bytesPerKilobyte;
8
+ function byteLength(value) {
9
+ return Buffer.byteLength(value, 'utf8');
10
+ }
11
+ function truncateBytes(value) {
12
+ if (byteLength(value) <= valueByteLimit) {
13
+ return value;
14
+ }
15
+ let truncated = '';
16
+ for (const character of value) {
17
+ const next = `${truncated}${character}`;
18
+ if (byteLength(next) > valueByteLimit) {
19
+ break;
20
+ }
21
+ truncated = next;
22
+ }
23
+ return `${truncated}\n... truncated after ${valueByteLimit} bytes`;
24
+ }
25
+ function truncateLines(value) {
26
+ const lines = value.split('\n');
27
+ if (lines.length <= blockLineLimit) {
28
+ return value;
29
+ }
30
+ return [
31
+ ...lines.slice(0, blockLineLimit),
32
+ `... truncated ${lines.length - blockLineLimit} lines`
33
+ ]
34
+ .join('\n');
35
+ }
36
+ function truncateRenderedValue(value) {
37
+ return truncateLines(truncateBytes(value));
38
+ }
39
+ function formatPropertySegment(segment) {
40
+ const key = keyText(segment.key);
41
+ return /^[A-Za-z_$][\w$]*$/u.test(key) ? `.${key}` : `[${JSON.stringify(key)}]`;
42
+ }
43
+ function formatKeyedSegment(segment) {
44
+ if (segment.kind === 'set-value') {
45
+ return `[set ${formatSerializedValue(segment.value)}]`;
46
+ }
47
+ if (segment.kind === 'map-key') {
48
+ return `[map key ${formatSerializedValue(segment.key)}]`;
49
+ }
50
+ if (segment.kind === 'map-value') {
51
+ return `[map value ${formatSerializedValue(segment.key)}]`;
52
+ }
53
+ return formatPropertySegment(segment);
54
+ }
55
+ function formatSegment(segment) {
56
+ if (segment.kind === 'index') {
57
+ return `[${segment.index}]`;
58
+ }
59
+ return segment.kind === 'byte' ? `[byte ${segment.offset}]` : formatKeyedSegment(segment);
60
+ }
61
+ function formatPath(path) {
62
+ return path.map(formatSegment).join('');
63
+ }
64
+ function formatSerializedValueLines(label, value) {
65
+ return [`${label}: ${truncateRenderedValue(formatSerializedValue(value))}`];
66
+ }
67
+ function formatObjectOperation(operation) {
68
+ if (operation.operation === 'replace') {
69
+ return `replace ${formatPath(operation.path)}: expected ${formatSerializedValue(operation.from)}, actual ${formatSerializedValue(operation.to)}`;
70
+ }
71
+ if (operation.operation === 'add') {
72
+ return `add ${formatPath(operation.path)}: ${formatSerializedValue(operation.value)}`;
73
+ }
74
+ if (operation.operation === 'remove') {
75
+ return `remove ${formatPath(operation.path)}: ${formatSerializedValue(operation.value)}`;
76
+ }
77
+ return `missing ${formatPath(operation.path)}: ${formatSerializedValue(operation.value)}`;
78
+ }
79
+ function formatArrayOperation(operation) {
80
+ if (operation.operation === 'missing-index') {
81
+ return `missing [${operation.index}]: ${formatSerializedValue(operation.value)}`;
82
+ }
83
+ if (operation.operation === 'missing-member') {
84
+ return `missing array member: ${formatSerializedValue(operation.value)}`;
85
+ }
86
+ return formatObjectOperation(operation);
87
+ }
88
+ function formatMapOperation(operation) {
89
+ if (operation.operation === 'missing-entry') {
90
+ return `missing map entry ${formatSerializedValue(operation.key)}: ${formatSerializedValue(operation.value)}`;
91
+ }
92
+ return formatObjectOperation(operation);
93
+ }
94
+ function formatSetOperation(operation) {
95
+ if (operation.operation === 'missing-member') {
96
+ return `missing set member: ${formatSerializedValue(operation.value)}`;
97
+ }
98
+ return formatObjectOperation(operation);
99
+ }
100
+ function formatValueDiff(diff) {
101
+ return [
102
+ ...formatSerializedValueLines('expected', diff.expected),
103
+ ...formatSerializedValueLines('actual', diff.actual)
104
+ ];
105
+ }
106
+ function formatStringDiff(diff) {
107
+ return diff.hunks.flatMap(function formatHunk(hunk) {
108
+ return [
109
+ `string hunk expected ${hunk.expectedStart}, actual ${hunk.actualStart}`,
110
+ ...hunk.removed.map(function removed(line) {
111
+ return `- ${line}`;
112
+ }),
113
+ ...hunk.added.map(function added(line) {
114
+ return `+ ${line}`;
115
+ })
116
+ ];
117
+ });
118
+ }
119
+ function formatBinaryDiff(diff) {
120
+ const expectedSummary = `expected ${diff.expectedSize} bytes ${diff.expectedHash}`;
121
+ const actualSummary = `actual ${diff.actualSize} bytes ${diff.actualHash}`;
122
+ const header = `binary differs: ${expectedSummary}, ${actualSummary}`;
123
+ return [
124
+ header,
125
+ ...diff.ranges.map(function formatRange(range) {
126
+ return `byte ${range.offset}: expected [${range.expected.join(', ')}], actual [${range.actual.join(', ')}]`;
127
+ })
128
+ ];
129
+ }
130
+ function formatNonScalarDiff(diff) {
131
+ if (diff.kind === 'object') {
132
+ return diff.operations.map(formatObjectOperation);
133
+ }
134
+ if (diff.kind === 'array') {
135
+ return diff.operations.map(formatArrayOperation);
136
+ }
137
+ if (diff.kind === 'map') {
138
+ return diff.operations.map(formatMapOperation);
139
+ }
140
+ if (diff.kind === 'set') {
141
+ return diff.operations.map(formatSetOperation);
142
+ }
143
+ return formatBinaryDiff(diff);
144
+ }
145
+ function formatDiff(diff) {
146
+ if (diff.kind === 'value') {
147
+ return formatValueDiff(diff);
148
+ }
149
+ if (diff.kind === 'string') {
150
+ return formatStringDiff(diff);
151
+ }
152
+ return formatNonScalarDiff(diff);
153
+ }
154
+ function failedCheckDetailLines(check) {
155
+ if (check.kind === 'foreign') {
156
+ return [
157
+ `foreign assertion: ${check.label}`,
158
+ `${check.error.name}: ${check.error.message}`
159
+ ];
160
+ }
161
+ return check.diff === null
162
+ ? [
163
+ ...formatSerializedValueLines('expected', check.expected),
164
+ ...formatSerializedValueLines('actual', check.actual)
165
+ ]
166
+ : formatDiff(check.diff);
167
+ }
168
+ function formatFailedCheck(check, context) {
169
+ const path = formatPath(check.path);
170
+ const sourceLocations = formatAssertionSourceLocations(check.sourceLocations, context);
171
+ const detailLines = failedCheckDetailLines(check);
172
+ const childLines = check.kind === 'composite'
173
+ ? check.children.flatMap(function formatChild(child, index) {
174
+ return [
175
+ `child check ${index + 1}`,
176
+ ...formatFailedCheck(child, context).map(function indentChild(line) {
177
+ return ` ${line}`;
178
+ })
179
+ ];
180
+ })
181
+ : [];
182
+ return [
183
+ check.summary,
184
+ ...path.length === 0 ? [] : [`path: ${path}`],
185
+ ...sourceLocations.primary === null ? [] : [`source: ${sourceLocations.primary}`],
186
+ ...sourceLocations.details.map(function formatLocationDetail(detail) {
187
+ return ` ${detail}`;
188
+ }),
189
+ ...detailLines,
190
+ ...childLines
191
+ ];
192
+ }
193
+ function formatTestContractFailure(failure) {
194
+ return [
195
+ `${failure.summary} (${failure.code})`,
196
+ `expected: ${failure.expected}`,
197
+ `actual: ${truncateRenderedValue(String(failure.actual))}`
198
+ ];
199
+ }
200
+ function formatBodyErrorFailure(failure) {
201
+ const stackLines = failure.error.stack === null
202
+ ? []
203
+ : truncateRenderedValue(failure.error.stack).split('\n').map(function dimStackLine(line) {
204
+ return colors.dim(line);
205
+ });
206
+ return [
207
+ `${failure.error.name}: ${failure.error.message}`,
208
+ ...stackLines
209
+ ];
210
+ }
211
+ function formatAssertionFailure(failure, context) {
212
+ return failure.checks.flatMap(function formatCheck(check, index) {
213
+ const prefix = failure.checks.length === 1 ? [] : [`check ${index + 1}`];
214
+ return [...prefix, ...formatFailedCheck(check, context)];
215
+ });
216
+ }
217
+ function formatTimeoutFailure(failure) {
218
+ return [
219
+ `Timed out after ${failure.deadlineMilliseconds} ms.`,
220
+ `elapsed: ${failure.elapsedMilliseconds} ms`
221
+ ];
222
+ }
223
+ export function formatFailure(failure, context) {
224
+ if (failure.kind === 'assertion') {
225
+ return formatAssertionFailure(failure, context);
226
+ }
227
+ if (failure.kind === 'body-error' || failure.kind === 'cleanup-error') {
228
+ return formatBodyErrorFailure(failure);
229
+ }
230
+ if (failure.kind === 'timeout') {
231
+ return formatTimeoutFailure(failure);
232
+ }
233
+ if (failure.kind === 'hedged-duplicate-conflict') {
234
+ return [failure.summary];
235
+ }
236
+ return formatTestContractFailure(failure);
237
+ }
238
+ //# sourceMappingURL=line-failure-rendering.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"line-failure-rendering.js","sourceRoot":"","sources":["../../../../source/reporters/line-failure-rendering.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ const microsecondsPerMillisecond = 1000;
2
+ function milliseconds(microseconds) {
3
+ return Math.round(microseconds / microsecondsPerMillisecond);
4
+ }
5
+ export function formatTimingSummary(result) {
6
+ const { summary } = result.timings;
7
+ return `total ${milliseconds(summary.totalWallTimeMicroseconds)} ms, ` +
8
+ `execution ${milliseconds(summary.testExecutionWallTimeMicroseconds)} ms, ` +
9
+ `overhead ${milliseconds(summary.runnerOverheadWallTimeMicroseconds)} ms`;
10
+ }
11
+ //# sourceMappingURL=run-timing-summary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-timing-summary.js","sourceRoot":"","sources":["../../../../source/reporters/run-timing-summary.ts"],"names":[],"mappings":"AAEA,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAExC,SAAS,YAAY,CAAC,YAAoB;IACtC,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,0BAA0B,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAiB;IACjD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC;IAEnC,OAAO,SAAS,YAAY,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO;QAClE,aAAa,YAAY,CAAC,OAAO,CAAC,iCAAiC,CAAC,OAAO;QAC3E,YAAY,YAAY,CAAC,OAAO,CAAC,kCAAkC,CAAC,KAAK,CAAC;AAClF,CAAC"}
@@ -0,0 +1,108 @@
1
+ export function keyText(key) {
2
+ return key.kind === 'symbol' ? `[${key.value}]` : key.value;
3
+ }
4
+ function formatEntries(entries, format) {
5
+ return `{ ${entries
6
+ .map(function formatEntry(entry) {
7
+ return `${keyText(entry.key)}: ${format(entry.value)}`;
8
+ })
9
+ .join(', ')} }`;
10
+ }
11
+ function formatNullishValue(value) {
12
+ if (value.kind === 'undefined') {
13
+ return 'undefined';
14
+ }
15
+ return value.kind === 'null' ? 'null' : null;
16
+ }
17
+ function formatScalarValue(value) {
18
+ if (value.kind === 'boolean' || value.kind === 'number') {
19
+ return String(value.value);
20
+ }
21
+ return value.kind === 'bigint' ? `${value.value}n` : null;
22
+ }
23
+ function formatTextValue(value) {
24
+ if (value.kind === 'string') {
25
+ const rendered = JSON.stringify(value.value);
26
+ return value.truncation === null
27
+ ? rendered
28
+ : `${rendered} (truncated at ${value.truncation.budget} bytes)`;
29
+ }
30
+ return value.kind === 'symbol' ? value.value : null;
31
+ }
32
+ function formatFunctionValue(value) {
33
+ if (value.kind !== 'function') {
34
+ return null;
35
+ }
36
+ return value.name === null ? '[Function]' : `[Function ${value.name}]`;
37
+ }
38
+ function formatCollectionValue(value, format) {
39
+ if (value.kind === 'array') {
40
+ return `[${value
41
+ .entries
42
+ .map(function formatArrayEntry(entry) {
43
+ return format(entry.value);
44
+ })
45
+ .join(', ')}]`;
46
+ }
47
+ if (value.kind === 'object') {
48
+ return `${value.constructorName} ${formatEntries(value.entries, format)}`;
49
+ }
50
+ if (value.kind === 'map') {
51
+ return `Map(${value.size})`;
52
+ }
53
+ return value.kind === 'set' ? `Set(${value.size})` : null;
54
+ }
55
+ function formatBuiltInValue(value) {
56
+ if (value.kind === 'date') {
57
+ return value.value === null ? 'Invalid Date' : `Date ${value.value}`;
58
+ }
59
+ if (value.kind === 'regexp') {
60
+ return `/${value.source}/${value.flags}`;
61
+ }
62
+ return value.kind === 'error' ? `${value.name}: ${value.message}` : null;
63
+ }
64
+ function formatByteValue(value) {
65
+ if (value.kind === 'array-buffer' || value.kind === 'data-view') {
66
+ return `${value.kind}(${value.byteLength} bytes)`;
67
+ }
68
+ return value.kind === 'typed-array' ? `${value.constructorName}(${value.length})` : null;
69
+ }
70
+ function formatFallbackValue(value) {
71
+ if (value.kind === 'circular') {
72
+ return `[Circular ${value.reference}]`;
73
+ }
74
+ if (value.kind === 'opaque') {
75
+ return `[${value.type}]`;
76
+ }
77
+ return value.kind === 'unavailable' ? `[Unavailable: ${value.reason}]` : null;
78
+ }
79
+ const scalarRenderers = [
80
+ formatNullishValue,
81
+ formatScalarValue,
82
+ formatTextValue,
83
+ formatFunctionValue
84
+ ];
85
+ const referenceRenderers = [
86
+ formatBuiltInValue,
87
+ formatByteValue,
88
+ formatFallbackValue
89
+ ];
90
+ function formatWithRenderers(value, renderers) {
91
+ for (const renderer of renderers) {
92
+ const rendered = renderer(value);
93
+ if (rendered !== null) {
94
+ return rendered;
95
+ }
96
+ }
97
+ return null;
98
+ }
99
+ export function formatSerializedValue(value) {
100
+ const scalar = formatWithRenderers(value, scalarRenderers);
101
+ if (scalar !== null) {
102
+ return scalar;
103
+ }
104
+ const collection = formatCollectionValue(value, formatSerializedValue);
105
+ return collection ?? formatWithRenderers(value, referenceRenderers) ??
106
+ '[Unavailable: unsupported serialized value]';
107
+ }
108
+ //# sourceMappingURL=serialized-value-rendering.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialized-value-rendering.js","sourceRoot":"","sources":["../../../../source/reporters/serialized-value-rendering.ts"],"names":[],"mappings":"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"}
package/sbom.cdx.json CHANGED
@@ -16,24 +16,24 @@
16
16
  "component": {
17
17
  "type": "library",
18
18
  "name": "@overkill-dev/reporter-dot",
19
- "version": "0.0.33",
20
- "bom-ref": "pkg:npm/@overkill-dev/reporter-dot@0.0.33",
21
- "purl": "pkg:npm/@overkill-dev/reporter-dot@0.0.33"
19
+ "version": "0.0.35",
20
+ "bom-ref": "pkg:npm/@overkill-dev/reporter-dot@0.0.35",
21
+ "purl": "pkg:npm/@overkill-dev/reporter-dot@0.0.35"
22
22
  }
23
23
  },
24
24
  "components": [
25
25
  {
26
26
  "type": "library",
27
27
  "name": "@overkill-dev/engine",
28
- "version": "0.0.41",
29
- "bom-ref": "pkg:npm/@overkill-dev/engine@0.0.41",
28
+ "version": "0.0.42",
29
+ "bom-ref": "pkg:npm/@overkill-dev/engine@0.0.42",
30
30
  "scope": "optional",
31
31
  "licenses": [
32
32
  {
33
33
  "expression": "MIT"
34
34
  }
35
35
  ],
36
- "purl": "pkg:npm/@overkill-dev/engine@0.0.41"
36
+ "purl": "pkg:npm/@overkill-dev/engine@0.0.42"
37
37
  },
38
38
  {
39
39
  "type": "library",
@@ -77,15 +77,15 @@
77
77
  {
78
78
  "type": "library",
79
79
  "name": "string-width",
80
- "version": "8.2.2",
81
- "bom-ref": "pkg:npm/string-width@8.2.2",
80
+ "version": "8.3.0",
81
+ "bom-ref": "pkg:npm/string-width@8.3.0",
82
82
  "scope": "required",
83
83
  "licenses": [
84
84
  {
85
85
  "expression": "MIT"
86
86
  }
87
87
  ],
88
- "purl": "pkg:npm/string-width@8.2.2"
88
+ "purl": "pkg:npm/string-width@8.3.0"
89
89
  },
90
90
  {
91
91
  "type": "library",
@@ -103,16 +103,16 @@
103
103
  ],
104
104
  "dependencies": [
105
105
  {
106
- "ref": "pkg:npm/@overkill-dev/engine@0.0.41"
106
+ "ref": "pkg:npm/@overkill-dev/engine@0.0.42"
107
107
  },
108
108
  {
109
- "ref": "pkg:npm/@overkill-dev/reporter-dot@0.0.33",
109
+ "ref": "pkg:npm/@overkill-dev/reporter-dot@0.0.35",
110
110
  "dependsOn": [
111
- "pkg:npm/@overkill-dev/engine@0.0.41",
111
+ "pkg:npm/@overkill-dev/engine@0.0.42",
112
112
  "pkg:npm/ansi-escapes@7.3.0",
113
113
  "pkg:npm/figures@6.1.0",
114
114
  "pkg:npm/is-interactive@2.0.0",
115
- "pkg:npm/string-width@8.2.2",
115
+ "pkg:npm/string-width@8.3.0",
116
116
  "pkg:npm/yoctocolors@2.2.0"
117
117
  ]
118
118
  },
@@ -126,7 +126,7 @@
126
126
  "ref": "pkg:npm/is-interactive@2.0.0"
127
127
  },
128
128
  {
129
- "ref": "pkg:npm/string-width@8.2.2"
129
+ "ref": "pkg:npm/string-width@8.3.0"
130
130
  },
131
131
  {
132
132
  "ref": "pkg:npm/yoctocolors@2.2.0"
@@ -1,7 +0,0 @@
1
- function firstAssertionCheck(failure) {
2
- return failure.kind === 'assertion' ? failure.checks[0] : null;
3
- }
4
- export function primaryFailureSourceLocation(failure) {
5
- return firstAssertionCheck(failure)?.sourceLocations[0] ?? null;
6
- }
7
- //# sourceMappingURL=failure-location.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"failure-location.js","sourceRoot":"","sources":["../../../../source/reporters/failure-location.ts"],"names":[],"mappings":"AAGA,SAAS,mBAAmB,CAAC,OAAoB;IAC7C,OAAO,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,OAAoB;IAC7D,OAAO,mBAAmB,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AACpE,CAAC"}
@@ -1,16 +0,0 @@
1
- export function formatFailureSummary(failure) {
2
- if (failure.kind === 'assertion') {
3
- return failure.checks[0].summary;
4
- }
5
- if (failure.kind === 'body-error') {
6
- return failure.error.message;
7
- }
8
- if (failure.kind === 'cleanup-error') {
9
- return failure.error.message;
10
- }
11
- if (failure.kind === 'timeout') {
12
- return `Timed out after ${failure.deadlineMilliseconds} ms.`;
13
- }
14
- return failure.summary;
15
- }
16
- //# sourceMappingURL=failure-summary.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"failure-summary.js","sourceRoot":"","sources":["../../../../source/reporters/failure-summary.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,oBAAoB,CAAC,OAAoB;IACrD,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IACrC,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;IACjC,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;IACjC,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,mBAAmB,OAAO,CAAC,oBAAoB,MAAM,CAAC;IACjE,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,CAAC;AAC3B,CAAC"}