| 125 EXPECT_FALSE(alloc.verify()); // space is still allocated |
125 EXPECT_FALSE(alloc.verify()); // space is still allocated |
| 126 cxBufferDestroy(&buf); |
126 cxBufferDestroy(&buf); |
| 127 EXPECT_TRUE(alloc.verify()); |
127 EXPECT_TRUE(alloc.verify()); |
| 128 } |
128 } |
| 129 |
129 |
| |
130 TEST(BufferInit, OnHeap) { |
| |
131 CxTestingAllocator alloc; |
| |
132 CxBuffer *buf; |
| |
133 void *space = cxMalloc(&alloc, 16); |
| |
134 buf = cxBufferCreate(space, 16, &alloc, CX_BUFFER_FREE_CONTENTS); |
| |
135 EXPECT_NE(buf, nullptr); |
| |
136 expect_default_flush_config(buf); |
| |
137 EXPECT_EQ(buf->space, space); |
| |
138 EXPECT_EQ(buf->flags & CX_BUFFER_AUTO_EXTEND, 0); |
| |
139 EXPECT_EQ(buf->flags & CX_BUFFER_FREE_CONTENTS, CX_BUFFER_FREE_CONTENTS); |
| |
140 EXPECT_EQ(buf->pos, 0); |
| |
141 EXPECT_EQ(buf->size, 0); |
| |
142 EXPECT_EQ(buf->capacity, 16); |
| |
143 EXPECT_EQ(buf->allocator, &alloc); |
| |
144 cxBufferFree(buf); |
| |
145 EXPECT_TRUE(alloc.verify()); |
| |
146 } |
| |
147 |
| 130 class BufferShiftFixture : public ::testing::Test { |
148 class BufferShiftFixture : public ::testing::Test { |
| 131 protected: |
149 protected: |
| 132 void SetUp() override { |
150 void SetUp() override { |
| 133 ASSERT_TRUE(alloc.verify()); |
151 ASSERT_TRUE(alloc.verify()); |
| 134 cxBufferInit(&buf, nullptr, 16, &alloc, CX_BUFFER_DEFAULT); |
152 cxBufferInit(&buf, nullptr, 16, &alloc, CX_BUFFER_DEFAULT); |