diff --git a/server/src/agents/gates.rs b/server/src/agents/gates.rs index cbbf9b4..f27108d 100644 --- a/server/src/agents/gates.rs +++ b/server/src/agents/gates.rs @@ -255,9 +255,7 @@ mod tests { use std::fs; use std::os::unix::fs::PermissionsExt; - let tmp = tempfile::Builder::new() - .tempdir_in(env!("CARGO_MANIFEST_DIR")) - .unwrap(); + let tmp = tempfile::tempdir().unwrap(); let path = tmp.path(); let script_dir = path.join("script"); fs::create_dir_all(&script_dir).unwrap(); @@ -278,9 +276,7 @@ mod tests { use std::fs; use std::os::unix::fs::PermissionsExt; - let tmp = tempfile::Builder::new() - .tempdir_in(env!("CARGO_MANIFEST_DIR")) - .unwrap(); + let tmp = tempfile::tempdir().unwrap(); let path = tmp.path(); let script_dir = path.join("script"); fs::create_dir_all(&script_dir).unwrap(); @@ -316,9 +312,7 @@ mod tests { use std::fs; use std::os::unix::fs::PermissionsExt; - let tmp = tempfile::Builder::new() - .tempdir_in(env!("CARGO_MANIFEST_DIR")) - .unwrap(); + let tmp = tempfile::tempdir().unwrap(); let path = tmp.path(); let script_dir = path.join("script"); fs::create_dir_all(&script_dir).unwrap(); @@ -346,9 +340,7 @@ mod tests { use std::fs; use std::os::unix::fs::PermissionsExt; - let tmp = tempfile::Builder::new() - .tempdir_in(env!("CARGO_MANIFEST_DIR")) - .unwrap(); + let tmp = tempfile::tempdir().unwrap(); let path = tmp.path(); let script_dir = path.join("script"); fs::create_dir_all(&script_dir).unwrap(); diff --git a/server/src/agents/pool/mod.rs b/server/src/agents/pool/mod.rs index c26c6a6..d8426d1 100644 --- a/server/src/agents/pool/mod.rs +++ b/server/src/agents/pool/mod.rs @@ -1101,6 +1101,7 @@ mod tests { use crate::agents::{AgentEvent, AgentStatus, PipelineStage}; use crate::config::ProjectConfig; use portable_pty::{CommandBuilder, PtySize, native_pty_system}; + use std::process::Command; fn make_config(toml_str: &str) -> ProjectConfig { ProjectConfig::parse(toml_str).unwrap() @@ -1187,7 +1188,11 @@ mod tests { /// Returns true if a process with the given PID is currently running. fn process_is_running(pid: u32) -> bool { - std::path::Path::new(&format!("/proc/{pid}")).exists() + Command::new("ps") + .args(["-p", &pid.to_string()]) + .output() + .map(|o| o.status.success()) + .unwrap_or(false) } #[test]