diff options
author | Lee Clagett <code@leeclagett.com> | 2020-08-17 16:20:09 -0400 |
---|---|---|
committer | Lee Clagett <code@leeclagett.com> | 2020-08-17 21:30:34 -0400 |
commit | b641e0a2c0f70227a526cfafd4977c87f724a6da (patch) | |
tree | a56688591a79b99ab717d9ef06c48b97678d6374 /tests/unit_tests/epee_utils.cpp | |
parent | Revert "Use domain-separated ChaCha20 for in-memory key encryption" (diff) | |
download | monero-b641e0a2c0f70227a526cfafd4977c87f724a6da.tar.xz |
Add clear method to byte_stream
Diffstat (limited to 'tests/unit_tests/epee_utils.cpp')
-rw-r--r-- | tests/unit_tests/epee_utils.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/unit_tests/epee_utils.cpp b/tests/unit_tests/epee_utils.cpp index 0f91671a7..b365cad86 100644 --- a/tests/unit_tests/epee_utils.cpp +++ b/tests/unit_tests/epee_utils.cpp @@ -1117,6 +1117,47 @@ TEST(ByteStream, ToByteSlice) EXPECT_EQ(nullptr, empty_slice.data()); } +TEST(ByteStream, Clear) +{ + static constexpr const std::uint8_t source[] = + {0xde, 0xad, 0xbe, 0xef, 0xef}; + + epee::byte_stream stream{4}; + + EXPECT_EQ(4u, stream.increase_size()); + + EXPECT_EQ(nullptr, stream.data()); + EXPECT_EQ(nullptr, stream.tellp()); + EXPECT_EQ(0u, stream.size()); + EXPECT_EQ(0u, stream.available()); + EXPECT_EQ(0u, stream.capacity()); + + stream.clear(); + + EXPECT_EQ(nullptr, stream.data()); + EXPECT_EQ(nullptr, stream.tellp()); + EXPECT_EQ(0u, stream.size()); + EXPECT_EQ(0u, stream.available()); + EXPECT_EQ(0u, stream.capacity()); + + stream.write({source, 3}); + std::uint8_t const* const loc = stream.data(); + + EXPECT_EQ(loc, stream.data()); + EXPECT_EQ(loc + 3, stream.tellp()); + EXPECT_EQ(3u, stream.size()); + EXPECT_EQ(1u, stream.available()); + EXPECT_EQ(4u, stream.capacity()); + + stream.clear(); + + EXPECT_EQ(loc, stream.data()); + EXPECT_EQ(loc, stream.tellp()); + EXPECT_EQ(0u, stream.size()); + EXPECT_EQ(4u, stream.available()); + EXPECT_EQ(4u, stream.capacity()); +} + TEST(ToHex, String) { EXPECT_TRUE(epee::to_hex::string(nullptr).empty()); |