Each build module parsed its own test runner's output, so a fix in one never reached the others: a failed node --test run was worded by a passing line of its first file. buildstep.Failure names the test, its file, its cause and its own output; ReadGoTest (moved from mesh-build-go) and ReadTAP fill it; package conformance holds every build module to it with runner output captured with the build nodes' own toolchains.
50 lines
1.2 KiB
Plaintext
50 lines
1.2 KiB
Plaintext
TAP version 13
|
|
# Subtest: passes in the first file
|
|
ok 1 - passes in the first file
|
|
---
|
|
duration_ms: 0.740124
|
|
type: 'test'
|
|
...
|
|
# judged against the seat as it stands
|
|
# Subtest: passes in the second file first
|
|
ok 2 - passes in the second file first
|
|
---
|
|
duration_ms: 0.916463
|
|
type: 'test'
|
|
...
|
|
# Subtest: fails in the second file
|
|
not ok 3 - fails in the second file
|
|
---
|
|
duration_ms: 1.719236
|
|
type: 'test'
|
|
location: '/tmp/1901k/node/two-files/test/b.test.ts:4:1'
|
|
failureType: 'testCodeFailure'
|
|
error: |-
|
|
one plus one is not three
|
|
|
|
2 !== 3
|
|
|
|
code: 'ERR_ASSERTION'
|
|
name: 'AssertionError'
|
|
expected: 3
|
|
actual: 2
|
|
operator: 'strictEqual'
|
|
stack: |-
|
|
TestContext.<anonymous> (file:///tmp/1901k/node/two-files/test/b.test.ts:6:10)
|
|
Test.runInAsyncScope (node:async_hooks:226:14)
|
|
Test.run (node:internal/test_runner/test:1402:25)
|
|
Test.processPendingSubtests (node:internal/test_runner/test:974:18)
|
|
Test.postRun (node:internal/test_runner/test:1542:19)
|
|
Test.run (node:internal/test_runner/test:1467:12)
|
|
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
|
|
...
|
|
1..3
|
|
# tests 3
|
|
# suites 0
|
|
# pass 2
|
|
# fail 1
|
|
# cancelled 0
|
|
# skipped 0
|
|
# todo 0
|
|
# duration_ms 135.931121
|