diff options
author | Tor Egge <Tor.Egge@broadpark.no> | 2018-10-08 14:23:41 +0200 |
---|---|---|
committer | Tor Egge <Tor.Egge@broadpark.no> | 2018-10-08 15:11:58 +0200 |
commit | a6fab103b0ec74ca0a61c3ddc592ccc32445ac24 (patch) | |
tree | 8fea0199247b41d7efc44176eb8a327c4558a704 /document/src/tests | |
parent | c87e55ec025110fe6b7af0675677b657306d3e43 (diff) |
Handle serialization of empty struct field value.
Diffstat (limited to 'document/src/tests')
-rw-r--r-- | document/src/tests/serialization/vespadocumentserializer_test.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/document/src/tests/serialization/vespadocumentserializer_test.cpp b/document/src/tests/serialization/vespadocumentserializer_test.cpp index c12a4966bcb..f7d0cd4c3f6 100644 --- a/document/src/tests/serialization/vespadocumentserializer_test.cpp +++ b/document/src/tests/serialization/vespadocumentserializer_test.cpp @@ -514,6 +514,20 @@ void checkStructSerialization(const StructFieldValue &value, EXPECT_EQUAL(60u, element2_size); } +TEST("requireThatEmptyStructCanBeSerialized") { + StructDataType structType(getStructDataType()); + StructFieldValue value(structType); + nbostream stream; + value.reset(); // Simulate the result of deserializing empty struct + serializeAndDeserialize(value, stream); + uint32_t data_size; + uint8_t compression_type; + uint8_t field_count; + stream >> data_size >> compression_type >> field_count; + EXPECT_EQUAL(0u, data_size); + EXPECT_EQUAL(0u, field_count); +} + TEST("requireThatUncompressedStructFieldValueCanBeSerialized") { StructDataType structType(getStructDataType()); StructFieldValue value = getStructFieldValue(structType); |