diff --git a/cmd/pkgserver/ui/static/run_tests.ts b/cmd/pkgserver/ui/static/run_tests.ts index 1bfb1e9c..c3c89d05 100644 --- a/cmd/pkgserver/ui/static/run_tests.ts +++ b/cmd/pkgserver/ui/static/run_tests.ts @@ -43,4 +43,6 @@ if (args.length === 1) { } } -TESTS.run(new StreamReporter({ writeln: console.log }, verbose)); +let reporter = new StreamReporter({ writeln: console.log }, verbose); +TESTS.run(reporter); +exit(reporter.succeeded() ? 0 : 1); diff --git a/cmd/pkgserver/ui/static/test.ts b/cmd/pkgserver/ui/static/test.ts index 6ea1b4f7..18424d23 100644 --- a/cmd/pkgserver/ui/static/test.ts +++ b/cmd/pkgserver/ui/static/test.ts @@ -198,6 +198,10 @@ export class StreamReporter implements Reporter { this.#skips = []; } + succeeded(): boolean { + return this.#successes.length > 0 && this.#failures.length === 0; + } + register(suites: TestGroup[]) {} update(path: string[], result: TestResult) {