Add enumerate combinator to Stream (#832)

This commit is contained in:
Zahari Dichev
2019-01-24 11:50:34 -08:00
committed by Carl Lerche
parent 0ec8986b0b
commit fbad6297c5
5 changed files with 132 additions and 2 deletions
+31
View File
@@ -0,0 +1,31 @@
extern crate futures;
extern crate tokio;
extern crate tokio_executor;
extern crate tokio_timer;
#[macro_use]
mod support;
use futures::prelude::*;
use futures::sync::mpsc;
use tokio::util::StreamExt;
#[test]
fn enumerate() {
use futures::*;
let (mut tx, rx) = mpsc::channel(1);
std::thread::spawn(|| {
for i in 0..5 {
tx = tx.send(i * 2).wait().unwrap();
}
});
let mut result = rx.enumerate().collect();
assert_eq!(
result.wait(),
Ok(vec![(0, 0), (1, 2), (2, 4), (3, 6), (4, 8)])
);
}