From 7283f3c6fe6dda622bdbae6a4426b845a28c2c71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=BE=99=200668001470?= Date: Mon, 16 Mar 2026 11:06:18 +0800 Subject: [PATCH] test(config): move initialized log regression away from merge hotspot --- src/config/schema.rs | 106 +++++++++++++++++++++---------------------- 1 file changed, 53 insertions(+), 53 deletions(-) diff --git a/src/config/schema.rs b/src/config/schema.rs index 11a09353d..4f89a874f 100644 --- a/src/config/schema.rs +++ b/src/config/schema.rs @@ -10587,59 +10587,6 @@ default_model = "legacy-model" let _ = fs::remove_dir_all(temp_home).await; } - #[test] - async fn load_or_init_logs_existing_config_as_initialized() { - let _env_guard = env_override_lock().await; - let temp_home = - std::env::temp_dir().join(format!("zeroclaw_test_home_{}", uuid::Uuid::new_v4())); - let workspace_dir = temp_home.join("profile-a"); - let config_path = workspace_dir.join("config.toml"); - - fs::create_dir_all(&workspace_dir).await.unwrap(); - fs::write( - &config_path, - r#"default_temperature = 0.7 -default_model = "persisted-profile" -"#, - ) - .await - .unwrap(); - - let original_home = std::env::var("HOME").ok(); - std::env::set_var("HOME", &temp_home); - std::env::set_var("ZEROCLAW_WORKSPACE", &workspace_dir); - - let capture = SharedLogBuffer::default(); - let subscriber = tracing_subscriber::fmt() - .with_ansi(false) - .without_time() - .with_target(false) - .with_writer(capture.clone()) - .finish(); - let dispatch = tracing::Dispatch::new(subscriber); - let guard = tracing::dispatcher::set_default(&dispatch); - - let config = Config::load_or_init().await.unwrap(); - - drop(guard); - let logs = capture.captured(); - - assert_eq!(config.workspace_dir, workspace_dir.join("workspace")); - assert_eq!(config.config_path, config_path); - assert_eq!(config.default_model.as_deref(), Some("persisted-profile")); - assert!(logs.contains("Config loaded"), "{logs}"); - assert!(logs.contains("initialized=true"), "{logs}"); - assert!(!logs.contains("initialized=false"), "{logs}"); - - std::env::remove_var("ZEROCLAW_WORKSPACE"); - if let Some(home) = original_home { - std::env::set_var("HOME", home); - } else { - std::env::remove_var("HOME"); - } - let _ = fs::remove_dir_all(temp_home).await; - } - #[test] async fn load_or_init_uses_persisted_active_workspace_marker() { let _env_guard = env_override_lock().await; @@ -10744,6 +10691,59 @@ default_model = "persisted-profile" let _ = fs::remove_dir_all(temp_home).await; } + #[test] + async fn load_or_init_logs_existing_config_as_initialized() { + let _env_guard = env_override_lock().await; + let temp_home = + std::env::temp_dir().join(format!("zeroclaw_test_home_{}", uuid::Uuid::new_v4())); + let workspace_dir = temp_home.join("profile-a"); + let config_path = workspace_dir.join("config.toml"); + + fs::create_dir_all(&workspace_dir).await.unwrap(); + fs::write( + &config_path, + r#"default_temperature = 0.7 +default_model = "persisted-profile" +"#, + ) + .await + .unwrap(); + + let original_home = std::env::var("HOME").ok(); + std::env::set_var("HOME", &temp_home); + std::env::set_var("ZEROCLAW_WORKSPACE", &workspace_dir); + + let capture = SharedLogBuffer::default(); + let subscriber = tracing_subscriber::fmt() + .with_ansi(false) + .without_time() + .with_target(false) + .with_writer(capture.clone()) + .finish(); + let dispatch = tracing::Dispatch::new(subscriber); + let guard = tracing::dispatcher::set_default(&dispatch); + + let config = Config::load_or_init().await.unwrap(); + + drop(guard); + let logs = capture.captured(); + + assert_eq!(config.workspace_dir, workspace_dir.join("workspace")); + assert_eq!(config.config_path, config_path); + assert_eq!(config.default_model.as_deref(), Some("persisted-profile")); + assert!(logs.contains("Config loaded"), "{logs}"); + assert!(logs.contains("initialized=true"), "{logs}"); + assert!(!logs.contains("initialized=false"), "{logs}"); + + std::env::remove_var("ZEROCLAW_WORKSPACE"); + if let Some(home) = original_home { + std::env::set_var("HOME", home); + } else { + std::env::remove_var("HOME"); + } + let _ = fs::remove_dir_all(temp_home).await; + } + #[test] async fn env_override_empty_values_ignored() { let _env_guard = env_override_lock().await;