add regression test

This commit is contained in:
The8472 2021-05-15 20:41:15 +02:00
parent 60a900ee10
commit a44a059c3b

View File

@ -1094,6 +1094,18 @@ fn drop(&mut self) {
}
}
// regression test for issue #85322. Peekable previously implemented InPlaceIterable,
// but due to an interaction with IntoIter's current Clone implementation it failed to uphold
// the contract.
#[test]
fn test_collect_after_iterator_clone() {
let v = vec![0; 5];
let mut i = v.into_iter().peekable();
i.peek();
let v = i.clone().collect::<Vec<_>>();
assert!(v.len() <= v.capacity());
}
#[test]
fn test_cow_from() {
let borrowed: &[_] = &["borrowed", "(slice)"];