1 use std::process; 2 main()3fn main() { 4 let binary = std::env::args().nth(1).expect("No argument was provided"); 5 6 let output = process::Command::new(binary) 7 .output() 8 .expect("Failed to spawn process"); 9 if !output.status.success() { 10 eprintln!("Failed to execute binary"); 11 eprintln!("{}", std::str::from_utf8(&output.stdout).unwrap()); 12 eprintln!("{}", std::str::from_utf8(&output.stderr).unwrap()); 13 process::exit(output.status.code().unwrap()); 14 } 15 16 let stdout = std::str::from_utf8(&output.stdout).unwrap().trim(); 17 assert_eq!("Howdy from version 1.2.3", stdout); 18 } 19