mirror of
https://github.com/denoland/deno.git
synced 2024-12-24 16:19:12 -05:00
b6e44f91ad
Some `deno_std` tests were failing to print output that was resolved after the last test finished. In addition, output printed before tests began would sometimes appear above the "running X tests ..." line, and sometimes below it depending on timing. We now guarantee that all output is flushed before and after tests run, making the output consistent. Pre-test and post-test output are captured in `------ pre-test output ------` and `------ post-test output ------` blocks to differentiate them from the regular output blocks. Here's an example of a test (that is much noisier than normal, but an example of what the output will look like): ``` Check ./load_unload.ts ------- pre-test output ------- load ----- output end ----- running 1 test from ./load_unload.ts test ... ------- output ------- test ----- output end ----- test ... ok ([WILDCARD]) ------- post-test output ------- unload ----- output end ----- ```
25 lines
489 B
TypeScript
25 lines
489 B
TypeScript
let interval: number | null = null;
|
|
addEventListener("load", () => {
|
|
if (interval) {
|
|
throw new Error("Interval is already set");
|
|
}
|
|
|
|
console.log("load");
|
|
interval = setInterval(() => {}, 0);
|
|
});
|
|
|
|
addEventListener("unload", () => {
|
|
if (!interval) {
|
|
throw new Error("Interval was not set");
|
|
}
|
|
|
|
console.log("unload");
|
|
clearInterval(interval);
|
|
});
|
|
|
|
Deno.test("test", () => {
|
|
console.log("test");
|
|
if (!interval) {
|
|
throw new Error("Interval was not set");
|
|
}
|
|
});
|