From f8789c79a27b148eeee3014f77e7c4ffe0bc48c9 Mon Sep 17 00:00:00 2001 From: Brooks Date: Thu, 31 Aug 2023 13:01:20 -0400 Subject: [PATCH] Refactor bucket storage bad header size test (#33091) --- bucket_map/src/bucket_storage.rs | 60 +++++++++++++++----------------- 1 file changed, 29 insertions(+), 31 deletions(-) diff --git a/bucket_map/src/bucket_storage.rs b/bucket_map/src/bucket_storage.rs index 14aeaa6df..ff7f8a10c 100644 --- a/bucket_map/src/bucket_storage.rs +++ b/bucket_map/src/bucket_storage.rs @@ -509,38 +509,36 @@ mod test { assert!(storage.is_free(ix)); } - struct BucketBadHeader {} - - impl BucketOccupied for BucketBadHeader { - fn occupy(&mut self, _element: &mut [u8], _ix: usize) { - unimplemented!(); - } - fn free(&mut self, _element: &mut [u8], _ix: usize) { - unimplemented!(); - } - fn is_free(&self, _element: &[u8], _ix: usize) -> bool { - unimplemented!(); - } - fn offset_to_first_data() -> usize { - // not multiple of u64 - std::mem::size_of::() - 1 - } - /// initialize this struct - fn new(_num_elements: Capacity) -> Self { - Self {} - } - } - - impl BucketCapacity for BucketBadHeader { - fn capacity(&self) -> u64 { - unimplemented!(); - } - } - #[test] - #[should_panic(expected = "assertion failed: `(left == right)`")] - fn test_header_size() { - _ = BucketStorage::::new_with_capacity( + #[should_panic] + fn test_header_bad_size() { + struct BucketBadHeader; + impl BucketCapacity for BucketBadHeader { + fn capacity(&self) -> u64 { + unimplemented!(); + } + } + impl BucketOccupied for BucketBadHeader { + fn occupy(&mut self, _element: &mut [u8], _ix: usize) { + unimplemented!(); + } + fn free(&mut self, _element: &mut [u8], _ix: usize) { + unimplemented!(); + } + fn is_free(&self, _element: &[u8], _ix: usize) -> bool { + unimplemented!(); + } + fn offset_to_first_data() -> usize { + // not multiple of u64 + std::mem::size_of::() - 1 + } + fn new(_num_elements: Capacity) -> Self { + Self + } + } + + // ensure we panic if the header size (i.e. offset to first data) is not aligned to eight bytes + BucketStorage::::new_with_capacity( Arc::default(), 0, 0,