Skip to content

Commit b214323

Browse files
committed
test: add macos
1 parent 34bd718 commit b214323

File tree

1 file changed

+89
-0
lines changed

1 file changed

+89
-0
lines changed

crates/libs/kill_tree/src/macos.rs

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,95 @@ pub(crate) mod tokio {
164164
}
165165
}
166166

167+
#[cfg(test)]
168+
mod tests {
169+
use super::*;
170+
171+
#[test]
172+
fn validate_process_id_0() {
173+
let process_id = 0;
174+
let result = validate_process_id(process_id);
175+
assert!(result.is_err());
176+
}
177+
178+
#[test]
179+
fn validate_process_id_1() {
180+
let process_id = 1;
181+
let result = validate_process_id(process_id);
182+
assert!(result.is_err());
183+
}
184+
185+
#[test]
186+
fn validate_process_id_99998() {
187+
let process_id = 99998;
188+
let result = validate_process_id(process_id);
189+
assert!(result.is_ok());
190+
}
191+
192+
#[test]
193+
fn validate_process_id_99999() {
194+
let process_id = 99999;
195+
let result = validate_process_id(process_id);
196+
assert!(result.is_err());
197+
}
198+
199+
#[test]
200+
fn child_process_id_map_filter_false() {
201+
let process_info = ProcessInfo {
202+
process_id: 0,
203+
parent_process_id: 0,
204+
name: "name".to_string(),
205+
};
206+
assert!(!child_process_id_map_filter(&process_info));
207+
}
208+
209+
#[test]
210+
fn get_process_info_0() {
211+
let process_id = 0;
212+
let result = get_process_info(process_id);
213+
assert!(result.is_err());
214+
assert_eq!(
215+
result.unwrap_err().to_string(),
216+
"I/O error: Operation not permitted (os error 1)".to_string()
217+
);
218+
}
219+
220+
#[test]
221+
fn get_process_info_1() {
222+
let process_id = 1;
223+
let result = get_process_info(process_id);
224+
assert!(result.is_err());
225+
assert_eq!(
226+
result.unwrap_err().to_string(),
227+
"I/O error: Operation not permitted (os error 1)".to_string()
228+
);
229+
}
230+
231+
#[test]
232+
fn get_process_info_self() {
233+
let process_id = std::process::id();
234+
let result = get_process_info(process_id);
235+
assert!(result.is_ok());
236+
}
237+
238+
#[test]
239+
fn get_process_ids_test() {
240+
let process_ids = get_process_ids().expect("Failed to get process ids");
241+
assert!(process_ids.len() > 1);
242+
assert!(process_ids.contains(&0));
243+
assert!(process_ids.contains(&1));
244+
}
245+
246+
#[test]
247+
fn get_process_infos_test() {
248+
let process_infos = get_process_infos().expect("Failed to get process infos");
249+
assert!(process_infos.len() > 1);
250+
assert!(process_infos
251+
.iter()
252+
.any(|x| x.process_id == std::process::id()));
253+
}
254+
}
255+
167256
#[allow(warnings)]
168257
#[allow(clippy::all)]
169258
#[allow(clippy::pedantic)]

0 commit comments

Comments
 (0)