Fix byte_stream::put_n
This commit is contained in:
parent
ebdc617408
commit
4978f69d7a
|
@ -175,7 +175,7 @@ namespace epee
|
||||||
void put_n(const std::uint8_t ch, const std::size_t count)
|
void put_n(const std::uint8_t ch, const std::size_t count)
|
||||||
{
|
{
|
||||||
check(count);
|
check(count);
|
||||||
std::memset(tellp(), count, ch);
|
std::memset(tellp(), ch, count);
|
||||||
next_write_ += count;
|
next_write_ += count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -982,6 +982,23 @@ TEST(ByteStream, Put)
|
||||||
EXPECT_TRUE(equal(bytes, byte_span{stream.data(), stream.size()}));
|
EXPECT_TRUE(equal(bytes, byte_span{stream.data(), stream.size()}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST(ByteStream, PutN)
|
||||||
|
{
|
||||||
|
using boost::range::equal;
|
||||||
|
using byte_span = epee::span<const std::uint8_t>;
|
||||||
|
|
||||||
|
std::vector<std::uint8_t> bytes;
|
||||||
|
bytes.resize(1000, 'f');
|
||||||
|
|
||||||
|
epee::byte_stream stream;
|
||||||
|
stream.put_n('f', 1000);
|
||||||
|
|
||||||
|
EXPECT_EQ(1000u, stream.size());
|
||||||
|
EXPECT_LE(1000u, stream.capacity());
|
||||||
|
EXPECT_EQ(stream.available(), stream.capacity() - stream.size());
|
||||||
|
EXPECT_TRUE(equal(bytes, byte_span{stream.data(), stream.size()}));
|
||||||
|
}
|
||||||
|
|
||||||
TEST(ByteStream, Reserve)
|
TEST(ByteStream, Reserve)
|
||||||
{
|
{
|
||||||
using boost::range::equal;
|
using boost::range::equal;
|
||||||
|
|
Loading…
Reference in New Issue