summaryrefslogtreecommitdiffstats
path: root/library/core/tests/iter/adapters/enumerate.rs
diff options
context:
space:
mode:
Diffstat (limited to 'library/core/tests/iter/adapters/enumerate.rs')
-rw-r--r--library/core/tests/iter/adapters/enumerate.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/library/core/tests/iter/adapters/enumerate.rs b/library/core/tests/iter/adapters/enumerate.rs
index 0e6033878..ff57973a6 100644
--- a/library/core/tests/iter/adapters/enumerate.rs
+++ b/library/core/tests/iter/adapters/enumerate.rs
@@ -1,4 +1,5 @@
use core::iter::*;
+use core::num::NonZeroUsize;
#[test]
fn test_iterator_enumerate() {
@@ -56,6 +57,20 @@ fn test_iterator_enumerate_count() {
}
#[test]
+fn test_iterator_enumerate_advance_by() {
+ let xs = [0, 1, 2, 3, 4, 5];
+ let mut it = xs.iter().enumerate();
+ assert_eq!(it.advance_by(0), Ok(()));
+ assert_eq!(it.next(), Some((0, &0)));
+ assert_eq!(it.advance_by(1), Ok(()));
+ assert_eq!(it.next(), Some((2, &2)));
+ assert_eq!(it.advance_by(2), Ok(()));
+ assert_eq!(it.next(), Some((5, &5)));
+ assert_eq!(it.advance_by(1), Err(NonZeroUsize::new(1).unwrap()));
+ assert_eq!(it.next(), None);
+}
+
+#[test]
fn test_iterator_enumerate_fold() {
let xs = [0, 1, 2, 3, 4, 5];
let mut it = xs.iter().enumerate();