1.1 --- a/tests/test_buffer.cpp Tue Jan 02 23:31:00 2024 +0100 1.2 +++ b/tests/test_buffer.cpp Wed Jan 03 22:17:40 2024 +0100 1.3 @@ -31,169 +31,6 @@ 1.4 #include <gtest/gtest.h> 1.5 #include "util_allocator.h" 1.6 1.7 -class BufferFixture : public ::testing::Test { 1.8 -protected: 1.9 - void SetUp() override { 1.10 - cxBufferInit(&buf, NULL, 16, cxDefaultAllocator, CX_BUFFER_DEFAULT); 1.11 - buf.size = 6; 1.12 - buf.pos = 3; 1.13 - } 1.14 - 1.15 - void TearDown() override { 1.16 - cxBufferDestroy(&buf); 1.17 - } 1.18 - 1.19 - CxBuffer buf{}; 1.20 -}; 1.21 - 1.22 -class BufferShiftFixture : public ::testing::Test { 1.23 -protected: 1.24 - void SetUp() override { 1.25 - CX_TEST_ASSERT(cx_testing_allocator_verify(&talloc)); 1.26 - cxBufferInit(&buf, NULL, 16, &alloc, CX_BUFFER_DEFAULT); 1.27 - memcpy(buf.space, "test____________", 16); 1.28 - buf.capacity = 8; // purposely pretend that the buffer has less capacity s.t. we can test beyond the range 1.29 - buf.pos = 4; 1.30 - buf.size = 4; 1.31 - } 1.32 - 1.33 - void TearDown() override { 1.34 - cxBufferDestroy(&buf); 1.35 - CX_TEST_ASSERT(cx_testing_allocator_verify(&talloc)); 1.36 - } 1.37 - 1.38 - CxTestingAllocator alloc; 1.39 - CxBuffer buf{}; 1.40 -}; 1.41 - 1.42 -class BufferShiftLeft : public BufferShiftFixture { 1.43 -}; 1.44 - 1.45 -TEST_F(BufferShiftLeft, Zero) { 1.46 - CX_TEST_ASSERT(buf.pos == 4); 1.47 - CX_TEST_ASSERT(buf.size == 4); 1.48 - int ret = cxBufferShiftLeft(&buf, 0); 1.49 - CX_TEST_ASSERT(ret == 0); 1.50 - CX_TEST_ASSERT(buf.pos == 4); 1.51 - CX_TEST_ASSERT(buf.size == 4); 1.52 - CX_TEST_ASSERT(memcmp(buf.space, "test________", 8) == 0); 1.53 -} 1.54 - 1.55 -TEST_F(BufferShiftLeft, ZeroOffsetInterface) { 1.56 - CX_TEST_ASSERT(buf.pos == 4); 1.57 - CX_TEST_ASSERT(buf.size == 4); 1.58 - int ret = cxBufferShift(&buf, -0); 1.59 - CX_TEST_ASSERT(ret == 0); 1.60 - CX_TEST_ASSERT(buf.pos == 4); 1.61 - CX_TEST_ASSERT(buf.size == 4); 1.62 - CX_TEST_ASSERT(memcmp(buf.space, "test________", 8) == 0); 1.63 -} 1.64 - 1.65 -TEST_F(BufferShiftLeft, Standard) { 1.66 - CX_TEST_ASSERT(buf.pos == 4); 1.67 - CX_TEST_ASSERT(buf.size == 4); 1.68 - int ret = cxBufferShiftLeft(&buf, 2); 1.69 - CX_TEST_ASSERT(ret == 0); 1.70 - CX_TEST_ASSERT(buf.pos == 2); 1.71 - CX_TEST_ASSERT(buf.size == 2); 1.72 - CX_TEST_ASSERT(memcmp(buf.space, "stst________", 8) == 0); 1.73 -} 1.74 - 1.75 -TEST_F(BufferShiftLeft, Overshift) { 1.76 - ASSERT_LT(buf.pos, 6); 1.77 - ASSERT_LT(buf.size, 6); 1.78 - int ret = cxBufferShiftLeft(&buf, 6); 1.79 - CX_TEST_ASSERT(ret == 0); 1.80 - CX_TEST_ASSERT(buf.pos == 0); 1.81 - CX_TEST_ASSERT(buf.size == 0); 1.82 - CX_TEST_ASSERT(memcmp(buf.space, "test________", 8) == 0); 1.83 -} 1.84 - 1.85 -TEST_F(BufferShiftLeft, OvershiftPosOnly) { 1.86 - buf.pos = 2; 1.87 - CX_TEST_ASSERT(buf.size == 4); 1.88 - int ret = cxBufferShiftLeft(&buf, 3); 1.89 - CX_TEST_ASSERT(ret == 0); 1.90 - CX_TEST_ASSERT(buf.pos == 0); 1.91 - CX_TEST_ASSERT(buf.size == 1); 1.92 - CX_TEST_ASSERT(memcmp(buf.space, "test________", 8) == 0); 1.93 -} 1.94 - 1.95 -TEST_F(BufferShiftLeft, OffsetInterface) { 1.96 - buf.pos = 3; 1.97 - CX_TEST_ASSERT(buf.size == 4); 1.98 - int ret = cxBufferShift(&buf, -2); 1.99 - CX_TEST_ASSERT(ret == 0); 1.100 - CX_TEST_ASSERT(buf.pos == 1); 1.101 - CX_TEST_ASSERT(buf.size == 2); 1.102 - CX_TEST_ASSERT(memcmp(buf.space, "stst________", 8) == 0); 1.103 -} 1.104 - 1.105 -TEST_F(BufferShiftRight, Zero) { 1.106 - CX_TEST_ASSERT(buf.pos == 4); 1.107 - CX_TEST_ASSERT(buf.size == 4); 1.108 - int ret = cxBufferShiftRight(&buf, 0); 1.109 - CX_TEST_ASSERT(ret == 0); 1.110 - CX_TEST_ASSERT(buf.pos == 4); 1.111 - CX_TEST_ASSERT(buf.size == 4); 1.112 - CX_TEST_ASSERT(memcmp(buf.space, "test________", 8) == 0); 1.113 -} 1.114 - 1.115 -TEST_F(BufferShiftRight, ZeroOffsetInterface) { 1.116 - CX_TEST_ASSERT(buf.pos == 4); 1.117 - CX_TEST_ASSERT(buf.size == 4); 1.118 - int ret = cxBufferShift(&buf, +0); 1.119 - CX_TEST_ASSERT(ret == 0); 1.120 - CX_TEST_ASSERT(buf.pos == 4); 1.121 - CX_TEST_ASSERT(buf.size == 4); 1.122 - CX_TEST_ASSERT(memcmp(buf.space, "test________", 8) == 0); 1.123 -} 1.124 - 1.125 -TEST_F(BufferShiftRight, Standard) { 1.126 - CX_TEST_ASSERT(buf.pos == 4); 1.127 - CX_TEST_ASSERT(buf.size == 4); 1.128 - int ret = cxBufferShiftRight(&buf, 3); 1.129 - CX_TEST_ASSERT(ret == 0); 1.130 - CX_TEST_ASSERT(buf.pos == 7); 1.131 - CX_TEST_ASSERT(buf.size == 7); 1.132 - CX_TEST_ASSERT(memcmp(buf.space, "testest_____", 8) == 0); 1.133 -} 1.134 - 1.135 -TEST_F(BufferShiftRight, OvershiftDiscard) { 1.136 - CX_TEST_ASSERT(buf.pos == 4); 1.137 - CX_TEST_ASSERT(buf.size == 4); 1.138 - CX_TEST_ASSERT(buf.capacity == 8); 1.139 - int ret = cxBufferShiftRight(&buf, 6); 1.140 - CX_TEST_ASSERT(ret == 0); 1.141 - CX_TEST_ASSERT(buf.pos == 8); 1.142 - CX_TEST_ASSERT(buf.size == 8); 1.143 - CX_TEST_ASSERT(buf.capacity == 8); 1.144 - CX_TEST_ASSERT(memcmp(buf.space, "test__te____", 8) == 0); 1.145 -} 1.146 - 1.147 -TEST_F(BufferShiftRight, OvershiftExtend) { 1.148 - CX_TEST_ASSERT(buf.pos == 4); 1.149 - CX_TEST_ASSERT(buf.size == 4); 1.150 - CX_TEST_ASSERT(buf.capacity == 8); 1.151 - buf.flags |= CX_BUFFER_AUTO_EXTEND; 1.152 - int ret = cxBufferShiftRight(&buf, 6); 1.153 - CX_TEST_ASSERT(ret == 0); 1.154 - CX_TEST_ASSERT(buf.pos == 10); 1.155 - CX_TEST_ASSERT(buf.size == 10); 1.156 - EXPECT_GE(buf.capacity, 10); 1.157 - CX_TEST_ASSERT(memcmp(buf.space, "test__test__", 8) == 0); 1.158 -} 1.159 - 1.160 -TEST_F(BufferShiftRight, OffsetInterface) { 1.161 - buf.pos = 3; 1.162 - CX_TEST_ASSERT(buf.size == 4); 1.163 - int ret = cxBufferShift(&buf, 2); 1.164 - CX_TEST_ASSERT(ret == 0); 1.165 - CX_TEST_ASSERT(buf.pos == 5); 1.166 - CX_TEST_ASSERT(buf.size == 6); 1.167 - CX_TEST_ASSERT(memcmp(buf.space, "tetest______", 8) == 0); 1.168 -} 1.169 - 1.170 class BufferWrite : public ::testing::Test { 1.171 protected: 1.172 CxBuffer buf{}, target{}; 1.173 @@ -507,24 +344,6 @@ 1.174 EXPECT_EQ(memcmp(target.space, "prepfoohello,", 13), 0); 1.175 } 1.176 1.177 - 1.178 -TEST_F(BufferEof, Reached) { 1.179 - buf.pos = buf.size; 1.180 - CX_TEST_ASSERT(cxBufferEof(&buf)); 1.181 - buf.pos = buf.size - 1; 1.182 - CX_TEST_ASSERT(!cxBufferEof(&buf)); 1.183 - cxBufferPut(&buf, 'a'); 1.184 - CX_TEST_ASSERT(cxBufferEof(&buf)); 1.185 -} 1.186 - 1.187 -TEST_F(BufferEof, NotReached) { 1.188 - buf.pos = buf.size - 1; 1.189 - CX_TEST_ASSERT(!cxBufferEof(&buf)); 1.190 - buf.pos = 0; 1.191 - cxBufferWrite("test", 1, 5, &buf); 1.192 - CX_TEST_ASSERT(!cxBufferEof(&buf)); 1.193 -} 1.194 - 1.195 class BufferRead : public ::testing::Test { 1.196 protected: 1.197 CxBuffer buf{};