@@ -56,33 +56,46 @@ TEST_F(EventDataTest, AllocateWithSameSizeReusesAllocation) {
5656 const uint32_t buffer_size = 100 ;
5757
5858 ASSERT_TRUE (ed->allocate (buffer_size));
59- const PROCTIME* pOrigTimestamps = ed->getTimestamps ();
59+ EXPECT_NE ( ed->getTimestamps (), nullptr );
6060
6161 // Write some data
6262 ed->writeEvent (1 , 12345 , 1 );
6363 EXPECT_EQ (ed->getWriteIndex (), 1u );
64+ EXPECT_EQ (ed->getTimestamps ()[0 ], 12345u );
6465
6566 // Allocate again with same size - should reset but keep allocation
6667 ASSERT_TRUE (ed->allocate (buffer_size));
6768
6869 EXPECT_EQ (ed->getSize (), buffer_size);
6970 EXPECT_EQ (ed->getWriteIndex (), 0u ); // Reset
7071 EXPECT_TRUE (ed->isAllocated ());
71- const PROCTIME* pNewTimestamps = ed->getTimestamps ();
72- EXPECT_EQ (pOrigTimestamps, pNewTimestamps); // Same allocation
72+
73+ // Verify data was reset (proves we didn't deallocate/reallocate, just reset)
74+ EXPECT_EQ (ed->getTimestamps ()[0 ], 0u );
75+
76+ // Verify buffer is still usable
77+ ed->writeEvent (2 , 54321 , 2 );
78+ EXPECT_EQ (ed->getTimestamps ()[0 ], 54321u );
79+ EXPECT_EQ (ed->getChannels ()[0 ], 2u );
7380}
7481
7582// Test 4: allocate() with different size reallocates
7683TEST_F (EventDataTest, AllocateWithDifferentSizeReallocates) {
7784 ASSERT_TRUE (ed->allocate (100 ));
7885 EXPECT_EQ (ed->getSize (), 100u );
79- const PROCTIME* pOrigTimestamps = ed->getTimestamps ();
86+
87+ // Write a marker value to verify memory is reallocated/reset
88+ ed->writeEvent (1 , 99999 , 1 );
89+ EXPECT_EQ (ed->getTimestamps ()[0 ], 99999u );
8090
8191 ASSERT_TRUE (ed->allocate (200 ));
8292 EXPECT_EQ (ed->getSize (), 200u );
8393 EXPECT_TRUE (ed->isAllocated ());
84- const PROCTIME* pNewTimestamps = ed->getTimestamps ();
85- EXPECT_NE (pOrigTimestamps, pNewTimestamps); // New allocation
94+
95+ // Verify data was reset (reallocation clears old data)
96+ EXPECT_EQ (ed->getTimestamps ()[0 ], 0u );
97+ EXPECT_EQ (ed->getWriteIndex (), 0u );
98+ EXPECT_EQ (ed->getWriteStartIndex (), 0u );
8699}
87100
88101// Test 5: writeEvent() stores data correctly
@@ -182,14 +195,15 @@ TEST_F(EventDataTest, WriteEventWithInvalidChannelReturnsFalse) {
182195// Test 10: reset() clears data but preserves allocation
183196TEST_F (EventDataTest, ResetClearsDataButPreservesAllocation) {
184197 ASSERT_TRUE (ed->allocate (100 ));
185- const PROCTIME* pOrigTimestamps = ed->getTimestamps ();
198+ EXPECT_NE ( ed->getTimestamps (), nullptr );
186199
187200 // Write some data from multiple channels
188201 ed->writeEvent (1 , 1000 , 1 );
189202 ed->writeEvent (5 , 2000 , 2 );
190203 ed->writeEvent (10 , 3000 , 3 );
191204
192205 EXPECT_NE (ed->getWriteIndex (), 0u );
206+ EXPECT_EQ (ed->getTimestamps ()[0 ], 1000u );
193207
194208 ed->reset ();
195209
@@ -205,8 +219,12 @@ TEST_F(EventDataTest, ResetClearsDataButPreservesAllocation) {
205219 // Allocation should remain
206220 EXPECT_TRUE (ed->isAllocated ());
207221 EXPECT_EQ (ed->getSize (), 100u );
208- const PROCTIME* pNewTimestamps = ed->getTimestamps ();
209- EXPECT_EQ (pOrigTimestamps, pNewTimestamps); // Same allocation
222+
223+ // Verify buffer is still usable after reset
224+ ed->writeEvent (15 , 9999 , 5 );
225+ EXPECT_EQ (ed->getTimestamps ()[0 ], 9999u );
226+ EXPECT_EQ (ed->getChannels ()[0 ], 15u );
227+ EXPECT_EQ (ed->getUnits ()[0 ], 5u );
210228}
211229
212230// Test 11: cleanup() deallocates all memory
0 commit comments