From 060b48307bf588562b3bf5f44923c6406aa8890e Mon Sep 17 00:00:00 2001 From: Adam Cimarosti Date: Fri, 30 Jan 2026 15:08:42 +0000 Subject: [PATCH] added missing Vec::set_len test --- src/vec.rs | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/vec.rs b/src/vec.rs index fef9b78..a6e066b 100644 --- a/src/vec.rs +++ b/src/vec.rs @@ -853,4 +853,24 @@ mod tests { assert_eq!(wma.in_use(), 64); assert!(vec1.try_clone().is_err()); } + + #[test] + fn test_set_len() { + let _no_global_alloc_guard = NoGlobalAllocGuard::new(); + let wma = WatermarkAllocator::new(64); + let mut vec: Vec = Vec::with_capacity_in(4, wma).unwrap(); + + // Write values directly to the buffer + let ptr = vec.as_mut_ptr(); + unsafe { + ptr.write(1); + ptr.add(1).write(2); + ptr.add(2).write(3); + // Now set the length to match initialized elements + vec.set_len(3); + } + + assert_eq!(vec.len(), 3); + assert_eq!(vec.as_slice(), &[1, 2, 3]); + } }