summaryrefslogtreecommitdiff
path: root/cli/tests/integration/worker_tests.rs
diff options
context:
space:
mode:
authorAndreu Botella <abb@randomunok.com>2021-11-29 13:37:44 +0100
committerGitHub <noreply@github.com>2021-11-29 13:37:44 +0100
commit4a13c320d73b1d8a0da18effa81199ab2ea8ef55 (patch)
treef593188a01d1132a898e73b8958f7f5cb9cd8c7f /cli/tests/integration/worker_tests.rs
parent5178e093ed366b59964bc435b0d1bd127a83df8c (diff)
fix(workers): Make `worker.terminate()` not immediately kill the isolate (#12831)
Due to a bug in V8, terminating an isolate while a module with top-level await is being evaluated would crash the process. This change makes it so calling `worker.terminate()` will signal the worker to terminate at the next iteration of the event loop, and it schedules a proper termination of the worker's isolate after 2 seconds.
Diffstat (limited to 'cli/tests/integration/worker_tests.rs')
-rw-r--r--cli/tests/integration/worker_tests.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/cli/tests/integration/worker_tests.rs b/cli/tests/integration/worker_tests.rs
index c17b63af9..8bb051ff3 100644
--- a/cli/tests/integration/worker_tests.rs
+++ b/cli/tests/integration/worker_tests.rs
@@ -99,3 +99,8 @@ itest!(worker_permissions_blob_local {
http_server: true,
exit_code: 1,
});
+
+itest!(worker_terminate_tla_crash {
+ args: "run --quiet --reload workers/terminate_tla_crash.js",
+ output: "workers/terminate_tla_crash.js.out",
+});