fix(coverage): ensure coverage is only collected in certain situations (#15467)

This commit is contained in:
David Sherret 2022-08-12 15:21:17 -04:00 committed by GitHub
parent ee2f4e745c
commit 8eed24cd3d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 60 additions and 12 deletions

View file

@ -3,3 +3,35 @@ import { complex } from "./complex.ts";
Deno.test("complex", function () {
complex("foo", "bar", "baz");
});
Deno.test("sub process with stdin", async () => {
// ensure launching deno run with stdin doesn't affect coverage
const code = "console.log('5')";
const p = await Deno.run({
cmd: [Deno.execPath(), "run", "-"],
stdin: "piped",
stdout: "piped",
});
const encoder = new TextEncoder();
await p.stdin.write(encoder.encode(code));
await p.stdin.close();
const output = new TextDecoder().decode(await p.output());
p.close();
if (output.trim() !== "5") {
throw new Error("Failed");
}
});
Deno.test("sub process with deno eval", async () => {
// ensure launching deno eval doesn't affect coverage
const code = "console.log('5')";
const p = await Deno.run({
cmd: [Deno.execPath(), "eval", code],
stdout: "piped",
});
const output = new TextDecoder().decode(await p.output());
p.close();
if (output.trim() !== "5") {
throw new Error("Failed");
}
});