#[test] fn ignore_err() { use futures::executor::block_on; use futures::future::{err, ok, select_ok}; let v = vec![ err(1), err(2), ok(3), ok(4), ]; let (i, v) = block_on(select_ok(v)).ok().unwrap(); assert_eq!(i, 3); assert_eq!(v.len(), 1); let (i, v) = block_on(select_ok(v)).ok().unwrap(); assert_eq!(i, 4); assert!(v.is_empty()); } #[test] fn last_err() { use futures::executor::block_on; use futures::future::{err, ok, select_ok}; let v = vec![ ok(1), err(2), err(3), ]; let (i, v) = block_on(select_ok(v)).ok().unwrap(); assert_eq!(i, 1); assert_eq!(v.len(), 2); let i = block_on(select_ok(v)).err().unwrap(); assert_eq!(i, 3); }