mirror of
https://github.com/tokio-rs/tokio.git
synced 2026-08-26 00:00:16 +02:00
A step towards collapsing Tokio sub crates into a single `tokio` crate (#1318). The `net` implementation is now provided by the main `tokio` crate. Functionality can be opted out of by using the various net related feature flags.
30 lines
577 B
Rust
30 lines
577 B
Rust
#![cfg(feature = "process")]
|
|
#![warn(rust_2018_idioms)]
|
|
|
|
use tokio::process::Command;
|
|
use tokio_test::assert_ok;
|
|
|
|
#[tokio::test]
|
|
async fn simple() {
|
|
let mut cmd;
|
|
|
|
if cfg!(windows) {
|
|
cmd = Command::new("cmd");
|
|
cmd.arg("/c");
|
|
} else {
|
|
cmd = Command::new("sh");
|
|
cmd.arg("-c");
|
|
}
|
|
|
|
let mut child = cmd.arg("exit 2").spawn().unwrap();
|
|
|
|
let id = child.id();
|
|
assert!(id > 0);
|
|
|
|
let status = assert_ok!((&mut child).await);
|
|
assert_eq!(status.code(), Some(2));
|
|
|
|
assert_eq!(child.id(), id);
|
|
drop(child.kill());
|
|
}
|