1 #![warn(rust_2018_idioms)] 2 #![cfg(feature = "full")] 3 4 use tokio::process::Command; 5 use tokio_test::assert_ok; 6 7 #[tokio::test] simple()8async fn simple() { 9 let mut cmd; 10 11 if cfg!(windows) { 12 cmd = Command::new("cmd"); 13 cmd.arg("/c"); 14 } else { 15 cmd = Command::new("sh"); 16 cmd.arg("-c"); 17 } 18 19 let mut child = cmd.arg("exit 2").spawn().unwrap(); 20 21 let id = child.id(); 22 assert!(id > 0); 23 24 let status = assert_ok!((&mut child).await); 25 assert_eq!(status.code(), Some(2)); 26 27 assert_eq!(child.id(), id); 28 drop(child.kill()); 29 } 30