import { readdir } from "node:fs/promises"; import { spawnSync } from "node:child_process"; import { root } from "./build.mjs"; import { resolve } from "node:path"; const tests = (await readdir(resolve(root, "tests"))) .filter((name) => name.endsWith(".test.mjs")) .sort(); const result = spawnSync( process.execPath, [ "--test", "--experimental-test-coverage", "--test-coverage-include=src/scripts/**", "--test-coverage-lines=80", "--test-coverage-branches=80", "--test-coverage-functions=80", ...tests.map((name) => `tests/${name}`), ], { cwd: root, stdio: "inherit" }, ); if (result.error) throw result.error; process.exitCode = result.status ?? 1;