From b01c7f6b9c6ac837511e7bb75c15e9cd537fc974 Mon Sep 17 00:00:00 2001 From: Alisa Sireneva Date: Fri, 31 Jan 2025 14:16:19 +0300 Subject: [PATCH] fix(libtest): Enable Instant on Emscripten targets `Instant::now()` works correctly on Emscripten since https://github.com/rust-lang/libc/pull/3962. All wasm-family targets with OS support can now handle instants. --- library/test/src/console.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/library/test/src/console.rs b/library/test/src/console.rs index 024ef48fc5104..8f29f1dada528 100644 --- a/library/test/src/console.rs +++ b/library/test/src/console.rs @@ -314,9 +314,10 @@ pub fn run_tests_console(opts: &TestOpts, tests: Vec) -> io::Resu let mut st = ConsoleTestState::new(opts)?; // Prevent the usage of `Instant` in some cases: - // - It's currently not supported for wasm targets. + // - It's currently not supported for wasm targets without Emscripten nor WASI. + // - It's currently not supported for zkvm targets. let is_instant_unsupported = - (cfg!(target_family = "wasm") && !cfg!(target_os = "wasi")) || cfg!(target_os = "zkvm"); + (cfg!(target_family = "wasm") && cfg!(target_os = "unknown")) || cfg!(target_os = "zkvm"); let start_time = (!is_instant_unsupported).then(Instant::now); run_tests(opts, tests, |x| on_test_event(&x, &mut st, &mut *out))?;