From 54229196bd11913ef0ac2c44b9f090cf619d29d8 Mon Sep 17 00:00:00 2001 From: Lee Clagett Date: Sat, 14 Mar 2026 12:24:55 -0400 Subject: Improve unpack reserve handling --- tests/unit_tests/serialization.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'tests/unit_tests/serialization.cpp') diff --git a/tests/unit_tests/serialization.cpp b/tests/unit_tests/serialization.cpp index fdf603272..0cf0275e5 100644 --- a/tests/unit_tests/serialization.cpp +++ b/tests/unit_tests/serialization.cpp @@ -304,6 +304,20 @@ TEST(Serialization, serializes_vector_int64_as_fixed_int) ASSERT_EQ(57, blob.size()); } +TEST(Serialization, deserializes_vector_reserve) +{ + std::vector v; + string blob; + + tools::write_varint(std::back_inserter(blob), unsigned(100)); + blob.append(std::string(100, 0)); + + ASSERT_LT(v.capacity(), 20); + ASSERT_FALSE(serialization::parse_binary(blob, v)); + ASSERT_LT(v.capacity(), 100); // could fail if lib allocates more in reserve call +} + + namespace { template -- cgit v1.2.3