diff --git a/crates/chat-cli/src/settings/settings.rs b/crates/chat-cli/src/settings/settings.rs index 0e0e373ce0..a92aee5f23 100644 --- a/crates/chat-cli/src/settings/settings.rs +++ b/crates/chat-cli/src/settings/settings.rs @@ -36,10 +36,12 @@ mod inner { impl Settings { pub fn new() -> Self { - match cfg!(test) { - true => Self(inner::Inner::Fake(Arc::new(Mutex::new(Map::new())))), - false => Self(inner::Inner::Real), - } + Self(inner::Inner::Real) + } + + #[allow(dead_code)] + pub fn new_fake() -> Self { + Self(inner::Inner::Fake(Arc::new(Mutex::new(Map::new())))) } pub fn set_value(&self, key: impl Into, value: impl Into) -> Result<()> { @@ -203,7 +205,7 @@ mod test { /// General read/write settings test #[test] fn test_settings() -> Result<()> { - let settings = Settings::new(); + let settings = Settings::new_fake(); assert!(settings.get_value("test").unwrap().is_none()); assert!(settings.get::("test").unwrap().is_none()); diff --git a/crates/chat-cli/src/settings/state.rs b/crates/chat-cli/src/settings/state.rs index 0a0685276b..72f193ea80 100644 --- a/crates/chat-cli/src/settings/state.rs +++ b/crates/chat-cli/src/settings/state.rs @@ -26,15 +26,16 @@ mod inner { impl State { pub fn new() -> Self { - if cfg!(test) { - let db = Db::mock(); - db.migrate().unwrap(); - return Self(inner::Inner::Fake(db)); - } - Self::default() } + #[allow(dead_code)] + pub fn new_fake() -> Self { + let db = Db::mock(); + db.migrate().unwrap(); + Self(inner::Inner::Fake(db)) + } + fn database(&self) -> Result<&Db> { match &self.0 { inner::Inner::Real => Ok(database()?), @@ -162,7 +163,7 @@ mod tests { /// General read/write state test #[test] fn test_state() -> Result<()> { - let state = State::new(); + let state = State::new_fake(); assert!(state.get_value("test").unwrap().is_none()); assert!(state.get::("test").unwrap().is_none()); diff --git a/crates/chat-cli/src/telemetry/util.rs b/crates/chat-cli/src/telemetry/util.rs index e41d2a5690..ecf5464c88 100644 --- a/crates/chat-cli/src/telemetry/util.rs +++ b/crates/chat-cli/src/telemetry/util.rs @@ -120,13 +120,13 @@ mod tests { let id = get_client_id(); assert!(id.is_max()); - let state = State::new(); - let settings = Settings::new(); + let state = State::new_fake(); + let settings = Settings::new_fake(); let env = Env::from_slice(&[(CLIENT_ID_ENV_VAR, TEST_UUID_STR)]); assert_eq!(get_client_id_inner(false, &env, &state, &settings), TEST_UUID); - let env = Env::new(); + let env = Env::from_slice(&[]); // in tests returns the test uuid assert!(get_client_id_inner(true, &env, &state, &settings).is_max()); @@ -150,7 +150,7 @@ mod tests { #[test] fn test_get_client_id_old() { - let settings = Settings::new(); + let settings = Settings::new_fake(); assert!(old_client_id_inner(&settings).is_none()); settings.set_value(CLIENT_ID_STATE_KEY, TEST_UUID_STR).unwrap(); assert_eq!(old_client_id_inner(&settings), Some(TEST_UUID));