From d2a507e4589947ea5a959c4b227c3196b7356993 Mon Sep 17 00:00:00 2001 From: Nikita Sivukhin Date: Sun, 16 Feb 2025 12:46:45 +0400 Subject: [PATCH] add unit tests for reading integer serial types --- core/storage/sqlite3_ondisk.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/core/storage/sqlite3_ondisk.rs b/core/storage/sqlite3_ondisk.rs index e5880add8..ea9c666aa 100644 --- a/core/storage/sqlite3_ondisk.rs +++ b/core/storage/sqlite3_ondisk.rs @@ -1430,6 +1430,12 @@ mod tests { #[case(&[], SerialType::ConstInt1, OwnedValue::Integer(1))] #[case(&[1, 2, 3], SerialType::Blob(3), OwnedValue::Blob(vec![1, 2, 3].into()))] #[case(&[65, 66, 67], SerialType::String(3), OwnedValue::build_text("ABC"))] + #[case(&[0x80], SerialType::Int8, OwnedValue::Integer(-128))] + #[case(&[0x80, 0], SerialType::BEInt16, OwnedValue::Integer(-32768))] + #[case(&[0x80, 0, 0], SerialType::BEInt24, OwnedValue::Integer(-8388608))] + #[case(&[0x80, 0, 0, 0], SerialType::BEInt32, OwnedValue::Integer(-2147483648))] + #[case(&[0x80, 0, 0, 0, 0, 0], SerialType::BEInt48, OwnedValue::Integer(-140737488355328))] + #[case(&[0x80, 0, 0, 0, 0, 0, 0, 0], SerialType::BEInt64, OwnedValue::Integer(-9223372036854775808))] fn test_read_value( #[case] buf: &[u8], #[case] serial_type: SerialType,