diff options
Diffstat (limited to 'cli/tests')
-rw-r--r-- | cli/tests/integration/run_tests.rs | 6 | ||||
-rw-r--r-- | cli/tests/testdata/set_exit_code_in_worker.ts | 13 | ||||
-rw-r--r-- | cli/tests/testdata/set_exit_code_worker.js | 4 |
3 files changed, 23 insertions, 0 deletions
diff --git a/cli/tests/integration/run_tests.rs b/cli/tests/integration/run_tests.rs index fbdc01ad7..dd4482423 100644 --- a/cli/tests/integration/run_tests.rs +++ b/cli/tests/integration/run_tests.rs @@ -907,6 +907,12 @@ itest!(set_exit_code_2 { exit_code: 42, }); +itest!(set_exit_code_in_worker { + args: "run --no-check --unstable --allow-read set_exit_code_in_worker.ts", + output: "empty.out", + exit_code: 42, +}); + itest!(heapstats { args: "run --quiet --unstable --v8-flags=--expose-gc heapstats.js", output: "heapstats.js.out", diff --git a/cli/tests/testdata/set_exit_code_in_worker.ts b/cli/tests/testdata/set_exit_code_in_worker.ts new file mode 100644 index 000000000..1df6a76d0 --- /dev/null +++ b/cli/tests/testdata/set_exit_code_in_worker.ts @@ -0,0 +1,13 @@ +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(); diff --git a/cli/tests/testdata/set_exit_code_worker.js b/cli/tests/testdata/set_exit_code_worker.js new file mode 100644 index 000000000..d1c0123d1 --- /dev/null +++ b/cli/tests/testdata/set_exit_code_worker.js @@ -0,0 +1,4 @@ +// Set exit code +Deno.core.opSync("op_set_exit_code", 42); + +self.postMessage("ok"); |