@tapjs/node-serialize
Version:
Stream TAP test data as a serialized node:test stream
41 lines • 1.39 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.testPointResults = void 0;
const stack_1 = require("@tapjs/stack");
const loc_from_callsite_js_1 = require("./loc-from-callsite.js");
const result_to_error_js_1 = require("./result-to-error.js");
const testPointResults = (res, t, testNumber) => {
const p = {
name: res.name,
testNumber,
...(res.diag?.at ?
(0, loc_from_callsite_js_1.locFromCallSite)(res.diag.at)
: (0, loc_from_callsite_js_1.locFromCallSite)(t.options.at)),
nesting: t.nestingLevel + 1,
details: {
duration_ms: res.time ?? 0,
},
};
if (res.skip)
p.skip = res.skip;
if (res.todo)
p.todo = res.todo;
if (res.ok || res.skip || res.todo)
return p;
const fe = (0, result_to_error_js_1.resultToError)(res);
// console.error(res, fe)
return {
...p,
details: {
...p.details,
error: Object.assign(new Error(fe.message), {
cause: fe,
code: 'ERR_TEST_FAILURE',
failureType: 'testCodeFailure',
stack: (0, stack_1.expandStack)(res.diag?.stack ?? t.options.stack).trimEnd(),
}),
},
};
};
exports.testPointResults = testPointResults;
//# sourceMappingURL=test-point-results.js.map