Skip to content

Commit cc0a3d4

Browse files
committed
Test more of Vec::peek_mut
1 parent 04c49f0 commit cc0a3d4

File tree

1 file changed

+10
-9
lines changed
  • library/alloctests/tests

1 file changed

+10
-9
lines changed

library/alloctests/tests/vec.rs

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2643,15 +2643,16 @@ fn test_peek_mut() {
26432643
assert!(vec.peek_mut().is_none());
26442644
vec.push(1);
26452645
vec.push(2);
2646-
if let Some(mut p) = vec.peek_mut() {
2647-
assert_eq!(*p, 2);
2648-
*p = 0;
2649-
assert_eq!(*p, 0);
2650-
PeekMut::pop(p);
2651-
assert_eq!(vec.len(), 1);
2652-
} else {
2653-
unreachable!()
2654-
}
2646+
let mut p = vec.peek_mut().unwrap();
2647+
assert_eq!(*p, 2);
2648+
*p = 0;
2649+
assert_eq!(*p, 0);
2650+
drop(p);
2651+
assert_eq!(vec, vec![1, 0]);
2652+
let p = vec.peek_mut().unwrap();
2653+
let p = PeekMut::pop(p);
2654+
assert_eq!(p, 0);
2655+
assert_eq!(vec, vec![1]);
26552656
}
26562657

26572658
/// This assortment of tests, in combination with miri, verifies we handle UB on fishy arguments

0 commit comments

Comments
 (0)