1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-25 15:29:32 -05:00
denoland-deno/cli/tests/testdata/set_exit_code_in_worker.ts
Bartek Iwańczuk 0dec9b4381
fix: op_set_exit_code (#13034)
Fixes "op_set_exit_code" by sharing a single "Arc" between
all workers (via "op state") instead of having a "global" value stored in
"deno_runtime" crate. As a consequence setting an exit code is always
scoped to a tree of workers, instead of being overridable if there are
multiple worker tree (like in "deno test --jobs" subcommand).

Refactored "cli/main.rs" functions to return "Result<i32, AnyError>" instead
of "Result<(), AnyError>" so they can return exit code.
2021-12-11 15:56:45 +01:00

13 lines
329 B
TypeScript

import { deferred } from "../../../test_util/std/async/deferred.ts";
const worker = new Worker(
new URL("set_exit_code_worker.js", import.meta.url).href,
{ type: "module", deno: { namespace: true } },
);
const promise1 = deferred();
worker.onmessage = (_e) => {
promise1.resolve();
};
await promise1;
worker.terminate();