1
0
forked from rosa/hakurei

11 Commits

2 changed files with 15 additions and 3 deletions

View File

@@ -22,19 +22,27 @@ function getArgs(): string[] {
return [];
}
function exit(code?: number): never {
if (Deno) Deno.exit(code);
if (process) process.exit(code);
throw `exited with code ${code ?? 0}`;
}
const args = getArgs();
let verbose = false;
if (args.length > 1) {
console.error("Too many arguments");
(Deno ? Deno : process).exit(1);
exit(1);
}
if (args.length === 1) {
if (args[0] === "-v" || args[0] === "--verbose" || args[0] === "-verbose") {
verbose = true;
} else if (args[0] !== "--") {
console.error(`Unknown argument '${args[0]}'`);
(Deno ? Deno : process).exit(1);
exit(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);

View File

@@ -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) {