diff options
Diffstat (limited to 'streamingvisitors/src/tests/charbuffer/charbuffer_test.cpp')
-rw-r--r-- | streamingvisitors/src/tests/charbuffer/charbuffer_test.cpp | 111 |
1 files changed, 48 insertions, 63 deletions
diff --git a/streamingvisitors/src/tests/charbuffer/charbuffer_test.cpp b/streamingvisitors/src/tests/charbuffer/charbuffer_test.cpp index b4e954d1ce0..a42851fc00a 100644 --- a/streamingvisitors/src/tests/charbuffer/charbuffer_test.cpp +++ b/streamingvisitors/src/tests/charbuffer/charbuffer_test.cpp @@ -1,80 +1,65 @@ // Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -#include <vespa/vespalib/testkit/testapp.h> +#include <vespa/vespalib/gtest/gtest.h> #include <vespa/vsm/common/charbuffer.h> namespace vsm { -class CharBufferTest : public vespalib::TestApp +TEST(CharBufferTest, empty) { -private: - void test(); -public: - int Main() override; -}; + CharBuffer buf; + EXPECT_EQ(buf.getLength(), 0u); + EXPECT_EQ(buf.getPos(), 0u); + EXPECT_EQ(buf.getRemaining(), 0u); +} -void -CharBufferTest::test() +TEST(CharBufferTest, explicit_length) { - { // empty - CharBuffer buf; - EXPECT_EQUAL(buf.getLength(), 0u); - EXPECT_EQUAL(buf.getPos(), 0u); - EXPECT_EQUAL(buf.getRemaining(), 0u); - } - { // explicit length - CharBuffer buf(8); - EXPECT_EQUAL(buf.getLength(), 8u); - EXPECT_EQUAL(buf.getPos(), 0u); - EXPECT_EQUAL(buf.getRemaining(), 8u); - } - { // resize - CharBuffer buf(8); - EXPECT_EQUAL(buf.getLength(), 8u); - buf.resize(16); - EXPECT_EQUAL(buf.getLength(), 16u); - buf.resize(8); - EXPECT_EQUAL(buf.getLength(), 16u); - } - { // put with triggered resize - CharBuffer buf(8); - buf.put("123456", 6); - EXPECT_EQUAL(buf.getLength(), 8u); - EXPECT_EQUAL(buf.getPos(), 6u); - EXPECT_EQUAL(buf.getRemaining(), 2u); - EXPECT_EQUAL(std::string(buf.getBuffer(), buf.getPos()), "123456"); - buf.put("789", 3); - EXPECT_EQUAL(buf.getLength(), 12u); - EXPECT_EQUAL(buf.getPos(), 9u); - EXPECT_EQUAL(buf.getRemaining(), 3u); - EXPECT_EQUAL(std::string(buf.getBuffer(), buf.getPos()), "123456789"); - buf.put('a'); - EXPECT_EQUAL(buf.getLength(), 12u); - EXPECT_EQUAL(buf.getPos(), 10u); - EXPECT_EQUAL(buf.getRemaining(), 2u); - EXPECT_EQUAL(std::string(buf.getBuffer(), buf.getPos()), "123456789a"); - buf.reset(); - EXPECT_EQUAL(buf.getLength(), 12u); - EXPECT_EQUAL(buf.getPos(), 0u); - EXPECT_EQUAL(buf.getRemaining(), 12u); - buf.put("bcd", 3); - EXPECT_EQUAL(buf.getLength(), 12u); - EXPECT_EQUAL(buf.getPos(), 3u); - EXPECT_EQUAL(buf.getRemaining(), 9u); - EXPECT_EQUAL(std::string(buf.getBuffer(), buf.getPos()), "bcd"); - } + CharBuffer buf(8); + EXPECT_EQ(buf.getLength(), 8u); + EXPECT_EQ(buf.getPos(), 0u); + EXPECT_EQ(buf.getRemaining(), 8u); } -int -CharBufferTest::Main() +TEST(CharBufferTest, resize) { - TEST_INIT("charbuffer_test"); - - test(); + CharBuffer buf(8); + EXPECT_EQ(buf.getLength(), 8u); + buf.resize(16); + EXPECT_EQ(buf.getLength(), 16u); + buf.resize(8); + EXPECT_EQ(buf.getLength(), 16u); +} - TEST_DONE(); +TEST(CharBufferTest, put_with_triggered_resize) +{ + CharBuffer buf(8); + buf.put("123456", 6); + EXPECT_EQ(buf.getLength(), 8u); + EXPECT_EQ(buf.getPos(), 6u); + EXPECT_EQ(buf.getRemaining(), 2u); + EXPECT_EQ(std::string(buf.getBuffer(), buf.getPos()), "123456"); + buf.put("789", 3); + EXPECT_EQ(buf.getLength(), 12u); + EXPECT_EQ(buf.getPos(), 9u); + EXPECT_EQ(buf.getRemaining(), 3u); + EXPECT_EQ(std::string(buf.getBuffer(), buf.getPos()), "123456789"); + buf.put('a'); + EXPECT_EQ(buf.getLength(), 12u); + EXPECT_EQ(buf.getPos(), 10u); + EXPECT_EQ(buf.getRemaining(), 2u); + EXPECT_EQ(std::string(buf.getBuffer(), buf.getPos()), "123456789a"); + buf.reset(); + EXPECT_EQ(buf.getLength(), 12u); + EXPECT_EQ(buf.getPos(), 0u); + EXPECT_EQ(buf.getRemaining(), 12u); + buf.put("bcd", 3); + EXPECT_EQ(buf.getLength(), 12u); + EXPECT_EQ(buf.getPos(), 3u); + EXPECT_EQ(buf.getRemaining(), 9u); + EXPECT_EQ(std::string(buf.getBuffer(), buf.getPos()), "bcd"); } } -TEST_APPHOOK(vsm::CharBufferTest); +GTEST_MAIN_RUN_ALL_TESTS() |