summaryrefslogtreecommitdiff
path: root/tests/specs/test/captured_output/captured_output.ts
blob: 77e1d1b08ecf8f8b8979dfb77c64db2af278c747 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Deno.test("output", async () => {
  await new Deno.Command(Deno.execPath(), {
    args: ["eval", "console.log(0); console.error(1);"],
  }).spawn().status;
  new Deno.Command(Deno.execPath(), {
    args: ["eval", "console.log(2); console.error(3);"],
    stdout: "inherit",
    stderr: "inherit",
  }).outputSync();
  await new Deno.Command(Deno.execPath(), {
    args: ["eval", "console.log(4); console.error(5);"],
    stdout: "inherit",
    stderr: "inherit",
  }).output();
  const c = new Deno.Command(Deno.execPath(), {
    args: ["eval", "console.log(6); console.error(7);"],
    stdout: "inherit",
    stderr: "inherit",
  }).spawn();
  await c.status;
  const worker = new Worker(
    import.meta.resolve("./captured_output.worker.ts"),
    { type: "module" },
  );

  // ensure worker output is captured
  const response = new Promise<void>((resolve) =>
    worker.onmessage = () => resolve()
  );
  worker.postMessage({});
  await response;
  worker.terminate();
});