#![allow(
clippy::missing_docs_in_private_items,
reason = "test helpers and fixtures do not need doc comments"
)]
use super::build;
struct TempHome;
impl TempHome {
fn set() -> Self {
let dir =
std::env::temp_dir().join(format!("moadim-restartlogictest-{}", uuid::Uuid::new_v4()));
std::fs::create_dir_all(&dir).expect("create temp home");
unsafe {
std::env::set_var("MOADIM_HOME_OVERRIDE", &dir);
}
Self
}
}
impl Drop for TempHome {
fn drop(&mut self) {
unsafe {
std::env::remove_var("MOADIM_HOME_OVERRIDE");
}
}
}
#[test]
fn build_spawns_helper_and_acknowledges() {
let _home = TempHome::set();
let response = build().unwrap();
assert_eq!(response.status, "restarting");
assert!(response.helper_pid > 0);
}