1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
use crate::task::{panic_waker_ref, noop_waker_ref}; use futures_core::task::Context; /// Create a new [`Context`](core::task::Context) where the /// [waker](core::task::Context::waker) will panic if used. /// /// # Examples /// /// ```should_panic /// use futures_test::task::panic_context; /// /// let cx = panic_context(); /// cx.waker().wake_by_ref(); // Will panic /// ``` pub fn panic_context() -> Context<'static> { Context::from_waker(panic_waker_ref()) } /// Create a new [`Context`](core::task::Context) where the /// [waker](core::task::Context::waker) will ignore any uses. /// /// # Examples /// /// ``` /// #![feature(async_await)] /// use futures::future::Future; /// use futures::task::Poll; /// use futures_test::task::noop_context; /// use futures::pin_mut; /// /// let future = async { 5 }; /// pin_mut!(future); /// /// assert_eq!(future.poll(&mut noop_context()), Poll::Ready(5)); /// ``` pub fn noop_context() -> Context<'static> { Context::from_waker(noop_waker_ref()) }