diff options
| author | blake2-ppc <blake2-ppc> | 2013-08-30 20:00:11 +0200 |
|---|---|---|
| committer | blake2-ppc <blake2-ppc> | 2013-08-30 20:06:26 +0200 |
| commit | e7955b2a7d880ecf2de30e5bc3a452bea0db4fd4 (patch) | |
| tree | ab702cab0418e49159eea21a0ae1a09d4a298f31 | |
| parent | ed607dd24aa1e041e4077b356e6bfa88c56b7fcf (diff) | |
| download | rust-e7955b2a7d880ecf2de30e5bc3a452bea0db4fd4.tar.gz rust-e7955b2a7d880ecf2de30e5bc3a452bea0db4fd4.zip | |
std::iterator: Add tests for .next_back() on Zip and Enumerate
| -rw-r--r-- | src/libstd/iterator.rs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/libstd/iterator.rs b/src/libstd/iterator.rs index 58ebb35846d..e2ac9f03395 100644 --- a/src/libstd/iterator.rs +++ b/src/libstd/iterator.rs @@ -2274,6 +2274,33 @@ mod tests { } #[test] + fn test_double_ended_enumerate() { + let xs = [1, 2, 3, 4, 5, 6]; + let mut it = xs.iter().map(|&x| x).enumerate(); + assert_eq!(it.next(), Some((0, 1))); + assert_eq!(it.next(), Some((1, 2))); + assert_eq!(it.next_back(), Some((5, 6))); + assert_eq!(it.next_back(), Some((4, 5))); + assert_eq!(it.next_back(), Some((3, 4))); + assert_eq!(it.next_back(), Some((2, 3))); + assert_eq!(it.next(), None); + } + + #[test] + fn test_double_ended_zip() { + let xs = [1, 2, 3, 4, 5, 6]; + let ys = [1, 2, 3, 7]; + let a = xs.iter().map(|&x| x); + let b = ys.iter().map(|&x| x); + let mut it = a.zip(b); + assert_eq!(it.next(), Some((1, 1))); + assert_eq!(it.next(), Some((2, 2))); + assert_eq!(it.next_back(), Some((4, 7))); + assert_eq!(it.next_back(), Some((3, 3))); + assert_eq!(it.next(), None); + } + + #[test] fn test_double_ended_filter() { let xs = [1, 2, 3, 4, 5, 6]; let mut it = xs.iter().filter(|&x| *x & 1 == 0); |
