Skip to content

Commit c636cdd

Browse files
taiki-ecramertj
authored andcommitted
Use TryStreamExt::into_async_read in io tests
1 parent f4dad66 commit c636cdd

File tree

3 files changed

+12
-2
lines changed

3 files changed

+12
-2
lines changed

futures-util/src/try_stream/into_async_read.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,8 @@ where
139139
mut self: Pin<&mut Self>,
140140
amount: usize,
141141
) {
142+
// https://github.com/rust-lang-nursery/futures-rs/pull/1556#discussion_r281644295
143+
if amount == 0 { return }
142144
if let ReadState::Ready { chunk, chunk_start } = &mut self.state {
143145
*chunk_start += amount;
144146
debug_assert!(*chunk_start <= chunk.as_ref().len());

futures/tests/io_read_line.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use futures::executor::block_on;
22
use futures::future::Future;
3+
use futures::stream::{self, StreamExt, TryStreamExt};
34
use futures::io::AsyncBufReadExt;
45
use futures::task::Poll;
56
use futures_test::io::AsyncReadTestExt;
@@ -42,7 +43,10 @@ fn maybe_pending() {
4243
assert_eq!(run(buf.read_line(&mut v)).unwrap(), 2);
4344
assert_eq!(v, "12");
4445

45-
let mut buf = b"12\n\n".interleave_pending();
46+
let mut buf = stream::iter(vec![&b"12"[..], &b"\n\n"[..]])
47+
.map(Ok)
48+
.into_async_read()
49+
.interleave_pending();
4650
let mut v = String::new();
4751
assert_eq!(run(buf.read_line(&mut v)).unwrap(), 3);
4852
assert_eq!(v, "12\n");

futures/tests/io_read_until.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use futures::executor::block_on;
22
use futures::future::Future;
3+
use futures::stream::{self, StreamExt, TryStreamExt};
34
use futures::io::AsyncBufReadExt;
45
use futures::task::Poll;
56
use futures_test::io::AsyncReadTestExt;
@@ -42,7 +43,10 @@ fn maybe_pending() {
4243
assert_eq!(run(buf.read_until(b'3', &mut v)).unwrap(), 2);
4344
assert_eq!(v, b"12");
4445

45-
let mut buf = b"12333".interleave_pending();
46+
let mut buf = stream::iter(vec![&b"12"[..], &b"33"[..], &b"3"[..]])
47+
.map(Ok)
48+
.into_async_read()
49+
.interleave_pending();
4650
let mut v = Vec::new();
4751
assert_eq!(run(buf.read_until(b'3', &mut v)).unwrap(), 3);
4852
assert_eq!(v, b"123");

0 commit comments

Comments
 (0)