aboutsummaryrefslogtreecommitdiff
path: root/tests/io_read_until.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/io_read_until.rs')
-rw-r--r--tests/io_read_until.rs40
1 files changed, 24 insertions, 16 deletions
diff --git a/tests/io_read_until.rs b/tests/io_read_until.rs
index 5152281..1e018b7 100644
--- a/tests/io_read_until.rs
+++ b/tests/io_read_until.rs
@@ -1,13 +1,9 @@
-use futures::executor::block_on;
-use futures::future::{Future, FutureExt};
-use futures::stream::{self, StreamExt, TryStreamExt};
-use futures::io::{AsyncBufReadExt, Cursor};
-use futures::task::Poll;
-use futures_test::io::AsyncReadTestExt;
-use futures_test::task::noop_context;
-
+#[cfg(feature = "executor")]
#[test]
fn read_until() {
+ use futures::executor::block_on;
+ use futures::io::{AsyncBufReadExt, Cursor};
+
let mut buf = Cursor::new(b"12");
let mut v = Vec::new();
assert_eq!(block_on(buf.read_until(b'3', &mut v)).unwrap(), 2);
@@ -25,17 +21,29 @@ fn read_until() {
assert_eq!(v, []);
}
-fn run<F: Future + Unpin>(mut f: F) -> F::Output {
- let mut cx = noop_context();
- loop {
- if let Poll::Ready(x) = f.poll_unpin(&mut cx) {
- return x;
- }
- }
-}
+#[cfg(feature = "std")]
#[test]
fn maybe_pending() {
+ use futures::future::Future;
+
+ fn run<F: Future + Unpin>(mut f: F) -> F::Output {
+ use futures::future::FutureExt;
+ use futures_test::task::noop_context;
+ use futures::task::Poll;
+
+ let mut cx = noop_context();
+ loop {
+ if let Poll::Ready(x) = f.poll_unpin(&mut cx) {
+ return x;
+ }
+ }
+ }
+
+ use futures::stream::{self, StreamExt, TryStreamExt};
+ use futures::io::AsyncBufReadExt;
+ use futures_test::io::AsyncReadTestExt;
+
let mut buf = b"12".interleave_pending();
let mut v = Vec::new();
assert_eq!(run(buf.read_until(b'3', &mut v)).unwrap(), 2);