summaryrefslogtreecommitdiff
path: root/tests/util/server/src/test_server.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/util/server/src/test_server.rs')
-rw-r--r--tests/util/server/src/test_server.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/util/server/src/test_server.rs b/tests/util/server/src/test_server.rs
index b0f74d606..19e33f9f5 100644
--- a/tests/util/server/src/test_server.rs
+++ b/tests/util/server/src/test_server.rs
@@ -1,5 +1,18 @@
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
fn main() {
+ setup_panic_hook();
test_server::servers::run_all_servers();
}
+
+fn setup_panic_hook() {
+ // Tokio does not exit the process when a task panics, so we define a custom
+ // panic hook to implement this behaviour.
+ let orig_hook = std::panic::take_hook();
+ std::panic::set_hook(Box::new(move |panic_info| {
+ eprintln!("\n============================================================");
+ eprintln!("Test server panicked!\n");
+ orig_hook(panic_info);
+ std::process::exit(1);
+ }));
+}