about summary refs log tree commit diff
path: root/library/alloctests
diff options
context:
space:
mode:
authorNathaniel Woods <nwoods@cimpress.com>2025-03-04 16:33:21 -0500
committerNathaniel Woods <nwoods@cimpress.com>2025-03-10 11:12:26 -0400
commit8bbc080cc71f4af39225d9b0f3e70cf478347f15 (patch)
tree99823b9ae02b6eac663e65b29298c96a9ad41bed /library/alloctests
parent2b285cd5f0877e30ad1d83e04f8cc46254e43391 (diff)
downloadrust-8bbc080cc71f4af39225d9b0f3e70cf478347f15.tar.gz
rust-8bbc080cc71f4af39225d9b0f3e70cf478347f15.zip
Added `Clone` implementation for `ChunkBy`
Diffstat (limited to 'library/alloctests')
-rw-r--r--library/alloctests/tests/slice.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/library/alloctests/tests/slice.rs b/library/alloctests/tests/slice.rs
index 2516563187f..1e15d54d979 100644
--- a/library/alloctests/tests/slice.rs
+++ b/library/alloctests/tests/slice.rs
@@ -1636,6 +1636,19 @@ fn test_chunk_by() {
     assert_eq!(iter.next_back(), Some(&[1][..]));
     assert_eq!(iter.next(), Some(&[2, 2, 2][..]));
     assert_eq!(iter.next_back(), None);
+
+    let mut iter = slice.chunk_by(|a, b| a == b);
+    assert_eq!(iter.next(), Some(&[1, 1, 1][..]));
+    assert_eq!(iter.next(), Some(&[3, 3][..]));
+    let mut iter_clone = iter.clone();
+    assert_eq!(iter.next(), Some(&[2, 2, 2][..]));
+    assert_eq!(iter.next(), Some(&[1][..]));
+    assert_eq!(iter.next(), Some(&[0][..]));
+    assert_eq!(iter.next(), None);
+    assert_eq!(iter_clone.next(), Some(&[2, 2, 2][..]));
+    assert_eq!(iter_clone.next(), Some(&[1][..]));
+    assert_eq!(iter_clone.next(), Some(&[0][..]));
+    assert_eq!(iter_clone.next(), None);
 }
 
 #[test]