A test report and coverage on every push: npm run test:ci writes JUnit and LCOV of src/ through source maps, kept as the check job's junit and coverage artifacts (closes #6) a6b460b1ec04
Author Andy McCall @andymccall <[email protected] >
via ↳ agent agent:claude@andymccall <[email protected] > · keyless, under your grant for changes,refs,seal · key 693fb40e8e5f
When 8 days ago · 2026-10-27 16:14 UTC
Signature ◈ sealed by agent:claude@andymccall
Hash a6b460b1ec04e7035430d176547dc4038a0935942236e48567678891e94b8fb2
Depends on 44e7f2609517 d21a85954a34 f0b06deac4b9
Depended on by 991516a107fa f162b1532f9f
In bookmarks main
In tags v0.13.0
Edits 4 atoms, 0 tree operations, 2 files
Browse the tree at this change
.flow/pipeline.kdl package.json
modified
.flow/pipeline.kdl
+13 −1
…
14 unchanged lines
15
15
16
16
job "check" {
17
17
sandbox "node"
18
-
exec "sh" "-euc" "npm ci --offline --cache /opt/npm-cache --no-audit --no-fund && npm run check "
18
+
exec "sh" "-euc" "npm ci --offline --cache /opt/npm-cache --no-audit --no-fund && npm run typecheck && npm run build && npm run test:ci "
19
+
// A JUnit report (kept whether or not the tests pass) and line coverage
20
+
// of src/ through esbuild's source maps, for the hub's Tests and
21
+
// Coverage tabs.
22
+
output {
23
+
artifact "junit" {
24
+
path "/src/out/junit.xml"
25
+
when "always"
26
+
}
27
+
artifact "coverage" {
28
+
path "/src/out/lcov.info"
29
+
}
30
+
}
19
31
}
20
32
21
33
job "package" {
…
4 unchanged lines
modified
package.json
+3 −2
…
578 unchanged lines
579
579
"build": "esbuild src/extension.ts --bundle --platform=node --format=cjs --external:vscode --outfile=dist/extension.js --sourcemap",
580
580
"watch": "npm run build -- --watch",
581
581
"typecheck": "tsc --noEmit -p .",
582
-
"pretest": "esbuild src/hub.ts --bundle --platform=node --format=esm --outfile=out/hub.mjs && esbuild src/provider.ts --bundle --platform=node --format=esm --outfile=out/provider.mjs && esbuild src/refs.ts --bundle --platform=node --format=esm --outfile=out/refs.mjs && esbuild src/flowview.ts --bundle --platform=node --format=esm --outfile=out/flowview.mjs && esbuild src/diffusionview.ts --bundle --platform=node --format=esm --outfile=out/diffusionview.mjs",
583
-
"test": "node --test \"test/**/*.test.mjs\"",
582
+
"pretest": "esbuild src/hub.ts --bundle --platform=node --format=esm --sourcemap -- outfile=out/hub.mjs && esbuild src/provider.ts --bundle --platform=node --format=esm --sourcemap -- outfile=out/provider.mjs && esbuild src/refs.ts --bundle --platform=node --format=esm --sourcemap -- outfile=out/refs.mjs && esbuild src/flowview.ts --bundle --platform=node --format=esm --sourcemap -- outfile=out/flowview.mjs && esbuild src/diffusionview.ts --bundle --platform=node --format=esm --sourcemap -- outfile=out/diffusionview.mjs",
583
+
"test": "node --enable-source-maps -- test \"test/**/*.test.mjs\"",
584
+
"test:ci": "node --enable-source-maps --test --experimental-test-coverage --test-coverage-exclude=\"test/**\" --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination=out/junit.xml --test-reporter=lcov --test-reporter-destination=out/lcov.info \"test/**/*.test.mjs\"",
584
585
"check": "npm run typecheck && npm run build && npm test",
585
586
"package": "vsce package --no-dependencies"
586
587
},
…
8 unchanged lines