From c279b4ab540be91ee49c4f5d8654a3e076435bfa Mon Sep 17 00:00:00 2001 From: konsti Date: Tue, 28 Oct 2025 13:21:58 +0100 Subject: [PATCH] Only run debug assertion tests when debug assertions are active (#16479) These tests currently fail when running tests in release mode. --- crates/uv-auth/src/keyring.rs | 39 +++++++++++++++++++---------------- 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/crates/uv-auth/src/keyring.rs b/crates/uv-auth/src/keyring.rs index 56c99dafc..ea54d2496 100644 --- a/crates/uv-auth/src/keyring.rs +++ b/crates/uv-auth/src/keyring.rs @@ -404,12 +404,13 @@ mod tests { let url = Url::parse("file:/etc/bin/").unwrap(); let keyring = KeyringProvider::empty(); // Panics due to debug assertion; returns `None` in production - let result = std::panic::AssertUnwindSafe( - keyring.fetch(DisplaySafeUrl::ref_cast(&url), Some("user")), - ) - .catch_unwind() - .await; - assert!(result.is_err()); + let fetch = keyring.fetch(DisplaySafeUrl::ref_cast(&url), Some("user")); + if cfg!(debug_assertions) { + let result = std::panic::AssertUnwindSafe(fetch).catch_unwind().await; + assert!(result.is_err()); + } else { + assert_eq!(fetch.await, None); + } } #[tokio::test] @@ -417,12 +418,13 @@ mod tests { let url = Url::parse("https://user:password@example.com").unwrap(); let keyring = KeyringProvider::empty(); // Panics due to debug assertion; returns `None` in production - let result = std::panic::AssertUnwindSafe( - keyring.fetch(DisplaySafeUrl::ref_cast(&url), Some(url.username())), - ) - .catch_unwind() - .await; - assert!(result.is_err()); + let fetch = keyring.fetch(DisplaySafeUrl::ref_cast(&url), Some(url.username())); + if cfg!(debug_assertions) { + let result = std::panic::AssertUnwindSafe(fetch).catch_unwind().await; + assert!(result.is_err()); + } else { + assert_eq!(fetch.await, None); + } } #[tokio::test] @@ -430,12 +432,13 @@ mod tests { let url = Url::parse("https://example.com").unwrap(); let keyring = KeyringProvider::empty(); // Panics due to debug assertion; returns `None` in production - let result = std::panic::AssertUnwindSafe( - keyring.fetch(DisplaySafeUrl::ref_cast(&url), Some(url.username())), - ) - .catch_unwind() - .await; - assert!(result.is_err()); + let fetch = keyring.fetch(DisplaySafeUrl::ref_cast(&url), Some(url.username())); + if cfg!(debug_assertions) { + let result = std::panic::AssertUnwindSafe(fetch).catch_unwind().await; + assert!(result.is_err()); + } else { + assert_eq!(fetch.await, None); + } } #[tokio::test]