diff options
author | dec05eba <dec05eba@protonmail.com> | 2018-05-16 07:06:42 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2020-07-06 07:16:10 +0200 |
commit | 78b1deca8abeefbcb8f669deedd6bb21bf9ac872 (patch) | |
tree | 1d791ff5374ebe0b57e1dcc49f716de2de501559 /tests | |
parent | 1c598695e433b9ac65887d156fcd78b10e6269de (diff) |
Add move constructor to serializer
Diffstat (limited to 'tests')
-rw-r--r-- | tests/main.cpp | 53 |
1 files changed, 31 insertions, 22 deletions
diff --git a/tests/main.cpp b/tests/main.cpp index e879e6a..7cb9c1d 100644 --- a/tests/main.cpp +++ b/tests/main.cpp @@ -13,29 +13,10 @@ struct TestStruct uint8_t b; }; -int main() -{ -#if BYTE_ORDER == BIG_ENDIAN - const char *endianessStr = "big"; -#elif BYTE_ORDER == LITTLE_ENDIAN - const char *endianessStr = "little"; -#else - const char *endianessStr = "Unknown"; -#endif - printf("System endianess: %s\n", endianessStr); - - TestStruct expectedTestStruct; - expectedTestStruct.a = 0x38956326; - expectedTestStruct.b = 0x34; - - sibs::SafeSerializer serializer; - serializer.add((uint32_t)3563634); - serializer.add((uint64_t)204232532533423632); - serializer.add((uint8_t)2); - serializer.add((uint8_t*)"hello", 5); - serializer.add(expectedTestStruct); - REQUIRE(serializer.getBuffer().size() == 18 + sizeof(expectedTestStruct)); +static TestStruct expectedTestStruct; +void testDeserialize(sibs::SafeSerializer &serializer) +{ sibs::SafeDeserializer deserializer(serializer.getBuffer().data(), serializer.getBuffer().size()); REQUIRE(deserializer.extract<uint32_t>() == 3563634); REQUIRE(deserializer.extract<uint64_t>() == 204232532533423632); @@ -57,6 +38,34 @@ int main() { } +} + +int main() +{ +#if BYTE_ORDER == BIG_ENDIAN + const char *endianessStr = "big"; +#elif BYTE_ORDER == LITTLE_ENDIAN + const char *endianessStr = "little"; +#else + const char *endianessStr = "Unknown"; +#endif + printf("System endianess: %s\n", endianessStr); + + expectedTestStruct.a = 0x38956326; + expectedTestStruct.b = 0x34; + + sibs::SafeSerializer serializer; + serializer.add((uint32_t)3563634); + serializer.add((uint64_t)204232532533423632); + serializer.add((uint8_t)2); + serializer.add((uint8_t*)"hello", 5); + serializer.add(expectedTestStruct); + REQUIRE(serializer.getBuffer().size() == 18 + sizeof(expectedTestStruct)); + + testDeserialize(serializer); + sibs::SafeSerializer movedSerializer(std::move(serializer)); + REQUIRE(serializer.getBuffer().empty()); + testDeserialize(movedSerializer); return 0; } |