1 #![warn(rust_2018_idioms)] 2 #![cfg(feature = "full")] 3 4 use tokio::time; 5 use tokio_stream::StreamExt; 6 use tokio_test::*; 7 8 use std::time::Duration; 9 10 #[tokio::test] usage()11async fn usage() { 12 time::pause(); 13 14 let mut stream = task::spawn(futures::stream::repeat(()).throttle(Duration::from_millis(100))); 15 16 assert_ready!(stream.poll_next()); 17 assert_pending!(stream.poll_next()); 18 19 time::advance(Duration::from_millis(90)).await; 20 21 assert_pending!(stream.poll_next()); 22 23 time::advance(Duration::from_millis(101)).await; 24 25 assert!(stream.is_woken()); 26 27 assert_ready!(stream.poll_next()); 28 } 29