From 73d291a47723aef04b2a2daee33e77619ef812ce Mon Sep 17 00:00:00 2001 From: PlexSheep Date: Sun, 12 May 2024 17:19:42 +0200 Subject: [PATCH] fix: split-numbers test solutions were wrong #76 --- members/libpt-bintols/tests/split_numbers.rs | 28 +++++++++++++++++--- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/members/libpt-bintols/tests/split_numbers.rs b/members/libpt-bintols/tests/split_numbers.rs index 2ee6a13..3f461a3 100644 --- a/members/libpt-bintols/tests/split_numbers.rs +++ b/members/libpt-bintols/tests/split_numbers.rs @@ -2,16 +2,25 @@ use libpt_bintols::split_numbers::*; #[test] fn split_u128() { - let source = [16, 255, 256, 0, u128::MAX, u64::MAX as u128]; + let source = [ + 16, + 255, + 256, + 0, + u128::MAX, + u64::MAX as u128, + u64::MAX as u128 + 1, + ]; let correct = [ vec![16], vec![255], - vec![255, 1], + vec![1, 0], vec![0], vec![ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, ], vec![255, 255, 255, 255, 255, 255, 255, 255], + vec![1, 0, 0, 0, 0, 0, 0, 0, 0], ]; for (i, n) in source.iter().enumerate() { assert_eq!(unsigned_to_vec(*n), correct[i]); @@ -20,14 +29,25 @@ fn split_u128() { #[test] fn split_u64() { - let source = [16, 255, 256, 0, u64::MAX, u32::MAX as u64]; + let source = [ + 16, + 255, + 256, + 0, + u64::MAX, + u32::MAX as u64, + 0b1_00000001, + 0b10011011_10110101_11110000_00110011, + ]; let correct = [ vec![16], vec![255], - vec![1, 255], + vec![1, 0], vec![0], vec![255, 255, 255, 255, 255, 255, 255, 255], vec![255, 255, 255, 255], + vec![1, 1], + vec![0b10011011, 0b10110101, 0b11110000, 0b00110011], ]; for (i, n) in source.iter().enumerate() { assert_eq!(unsigned_to_vec(*n), correct[i]);