From e103b8067d0defc9c2b3ec2ce79877ed0d139210 Mon Sep 17 00:00:00 2001 From: SoimanVasile Date: Sun, 10 May 2026 22:05:53 +0300 Subject: [PATCH] test: add overflow tests for MutableBuffer --- arrow-buffer/src/buffer/mutable.rs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/arrow-buffer/src/buffer/mutable.rs b/arrow-buffer/src/buffer/mutable.rs index aff1f138c286..b6e6a70c6cba 100644 --- a/arrow-buffer/src/buffer/mutable.rs +++ b/arrow-buffer/src/buffer/mutable.rs @@ -1669,4 +1669,20 @@ mod tests { let data_1000: Vec = (0..1000).collect(); test_repeat_count(repeat_count, &data_1000); } + + #[test] + #[should_panic(expected = "failed to round upto multiple of 64")] + fn test_mutable_new_capacity_overflow() { + // Tests overflow during initial allocation + let _ = MutableBuffer::new(usize::MAX - 10); + } + + #[test] + #[should_panic(expected = "buffer length overflow")] + fn test_mutable_reserve_overflow() { + // Tests overflow during growth (checked_add) + let mut buf = MutableBuffer::new(1); + buf.push(1u8); + buf.reserve(usize::MAX); + } }