diff options
| author | Simon Sapin <simon.sapin@exyr.org> | 2018-11-15 14:23:20 +0100 |
|---|---|---|
| committer | Simon Sapin <simon.sapin@exyr.org> | 2018-11-20 18:22:40 +0100 |
| commit | 641c4909e4de0334c83372b4795388d98cfd257a (patch) | |
| tree | 01dd283299e54bf55d53ed02ccb7e24e5cb63866 /src/libcore/tests | |
| parent | 22228186c0d373774a117375c2c264024bfd4b48 (diff) | |
| download | rust-641c4909e4de0334c83372b4795388d98cfd257a.tar.gz rust-641c4909e4de0334c83372b4795388d98cfd257a.zip | |
Add std::iter::successors
Diffstat (limited to 'src/libcore/tests')
| -rw-r--r-- | src/libcore/tests/iter.rs | 11 | ||||
| -rw-r--r-- | src/libcore/tests/lib.rs | 1 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/libcore/tests/iter.rs b/src/libcore/tests/iter.rs index ec09071b3d0..495483db555 100644 --- a/src/libcore/tests/iter.rs +++ b/src/libcore/tests/iter.rs @@ -1760,6 +1760,17 @@ fn test_repeat_with_take_collect() { } #[test] +fn test_successors() { + let mut powers_of_10 = successors(Some(1_u16), |n| n.checked_mul(10)); + assert_eq!(powers_of_10.by_ref().collect::<Vec<_>>(), &[1, 10, 100, 1_000, 10_000]); + assert_eq!(powers_of_10.next(), None); + + let mut empty = successors(None::<u32>, |_| unimplemented!()); + assert_eq!(empty.next(), None); + assert_eq!(empty.next(), None); +} + +#[test] fn test_fuse() { let mut it = 0..3; assert_eq!(it.len(), 3); diff --git a/src/libcore/tests/lib.rs b/src/libcore/tests/lib.rs index 5ac89912268..7d62b4fa90f 100644 --- a/src/libcore/tests/lib.rs +++ b/src/libcore/tests/lib.rs @@ -19,6 +19,7 @@ #![feature(flt2dec)] #![feature(fmt_internals)] #![feature(hashmap_internals)] +#![feature(iter_unfold)] #![feature(pattern)] #![feature(range_is_empty)] #![feature(raw)] |
