#![warn(rust_2018_idioms)] #![cfg(feature = "full")] #![cfg(unix)] mod support { pub mod signal; } use support::signal::send_signal; use tokio::signal::unix::{signal, SignalKind}; #[tokio::test] async fn drop_then_get_a_signal() { let kind = SignalKind::user_defined1(); let sig = signal(kind).expect("failed to create first signal"); drop(sig); send_signal(libc::SIGUSR1); let mut sig = signal(kind).expect("failed to create second signal"); let _ = sig.recv().await; }