From 9b4f02ca05aa4a3301085b4c4ffea55adb8a14f7 Mon Sep 17 00:00:00 2001 From: overtrue Date: Wed, 15 Apr 2026 02:04:39 +0800 Subject: [PATCH] test(formatter): cover conflict and network inference --- crates/cli/src/output/formatter.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/crates/cli/src/output/formatter.rs b/crates/cli/src/output/formatter.rs index 6398a48..93820ce 100644 --- a/crates/cli/src/output/formatter.rs +++ b/crates/cli/src/output/formatter.rs @@ -568,6 +568,18 @@ mod tests { assert_eq!(details.suggestion.as_deref(), Some(UNSUPPORTED_SUGGESTION)); } + #[test] + fn test_error_descriptor_from_message_infers_retryable_network_error() { + let descriptor = + ErrorDescriptor::from_message("Service temporarily unavailable while connecting"); + let json = descriptor.to_json_output(); + + let details = json.details.expect("details should be present"); + assert_eq!(details.error_type, "network_error"); + assert!(details.retryable); + assert_eq!(details.suggestion.as_deref(), Some(NETWORK_SUGGESTION)); + } + #[test] fn test_error_with_suggestion_overrides_default_hint() { let descriptor = ErrorDescriptor::from_code(