|
|
| 298 |
i = other.Begin (); |
298 |
i = other.Begin (); |
| 299 |
i.Write (buffer.Begin (), buffer.End ()); |
299 |
i.Write (buffer.Begin (), buffer.End ()); |
| 300 |
ENSURE_WRITTEN_BYTES (other, 9, 0x1, 0x2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3, 0x4); |
300 |
ENSURE_WRITTEN_BYTES (other, 9, 0x1, 0x2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3, 0x4); |
|
|
301 |
|
| 302 |
// BUG #1001 |
| 303 |
std::string ct ("This is the next content of the buffer."); |
| 304 |
buffer = Buffer (); |
| 305 |
buffer.AddAtStart (ct.size ()); |
| 306 |
i = buffer.Begin (); |
| 307 |
i.Write ((const uint8_t*)ct.c_str (), ct.size ()); |
| 308 |
uint32_t sizeBuffer = buffer.GetSize (); |
| 309 |
NS_TEST_ASSERT_MSG_EQ (sizeBuffer, ct.size(), "Buffer bad size"); |
| 310 |
uint8_t const* evilBuffer = buffer.PeekData (); |
| 311 |
NS_TEST_ASSERT_MSG_NE( evilBuffer, 0, "Buffer PeekData failed"); |
| 312 |
uint8_t *cBuf = (uint8_t*) malloc ( sizeBuffer ); |
| 313 |
uint32_t copyLen = buffer.CopyData (cBuf, sizeBuffer); |
| 314 |
NS_TEST_ASSERT_MSG_EQ (copyLen, sizeBuffer, "CopyData return bad size"); |
| 315 |
for (uint8_t i=0; i < sizeBuffer ; i++ ) |
| 316 |
{ |
| 317 |
NS_TEST_ASSERT_MSG_EQ ( cBuf [i], *(((const uint8_t*)ct.c_str ()) + i), "Bad buffer copied data"); |
| 318 |
NS_TEST_ASSERT_MSG_EQ ( evilBuffer [i], cBuf [i] , "Bad buffer peeked"); |
| 319 |
} |
| 320 |
|
| 301 |
} |
321 |
} |
| 302 |
//----------------------------------------------------------------------------- |
322 |
//----------------------------------------------------------------------------- |
| 303 |
class BufferTestSuite : public TestSuite |
323 |
class BufferTestSuite : public TestSuite |