diff --git a/CHANGELOG.md b/CHANGELOG.md index 7ead8398..f5d0968a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ Version 212: * dynamic_buffer_ref tests and tidy * flat_stream tests and tidy * stranded_socket tests and tidy +* buffers_front tests -------------------------------------------------------------------------------- diff --git a/test/beast/core/buffers_prefix.cpp b/test/beast/core/buffers_prefix.cpp index fdeac592..ff936fb5 100644 --- a/test/beast/core/buffers_prefix.cpp +++ b/test/beast/core/buffers_prefix.cpp @@ -124,6 +124,36 @@ public: BEAST_EXPECT(net::buffer_copy(pb0, pb1) == 0); } + void + testBuffersFront() + { + { + std::array v; + v[0] = {"", 0}; + v[1] = net::const_buffer("Hello, world!", 13); + BEAST_EXPECT(buffers_front(v).size() == 0); + std::swap(v[0], v[1]); + BEAST_EXPECT(buffers_front(v).size() == 13); + } + { + struct null_sequence + { + net::const_buffer b; + using iterator = net::const_buffer const*; + iterator begin() const noexcept + { + return &b; + } + iterator end() const noexcept + { + return begin(); + } + }; + null_sequence z; + BEAST_EXPECT(buffers_front(z).size() == 0); + } + } + void run() override { @@ -132,6 +162,7 @@ public: testPrefixes(); testPrefixes(); testEmpty(); + testBuffersFront(); } };