void DataBufferTF::testFindBytes() { DataBuffer buffer; buffer.writeBytes("start", 5); const char *content = "just for test"; int len = 13; buffer.writeBytes(content, len); CPPUNIT_ASSERT(buffer.findBytes((const char*)content, len >= 0)); }
void DataBufferTF::testShrink() { DataBuffer buffer; buffer.shrink(); CPPUNIT_ASSERT(!buffer._pstart); buffer.expand(1); void *old_pstart = buffer._pstart; if (buffer._pend - buffer._pstart <= MAX_BUFFER_SIZE) { buffer.shrink(); CPPUNIT_ASSERT_EQUAL(old_pstart, (void *)buffer._pstart); } const char *content = "just for test"; int len = 14; buffer.writeBytes(content, len); buffer.expand(MAX_BUFFER_SIZE); old_pstart = buffer._pstart; int datalen = buffer._pstart - buffer._pfree; buffer.shrink(); CPPUNIT_ASSERT(old_pstart != buffer._pstart); CPPUNIT_ASSERT(buffer.findBytes((const char *)content, len) >= 0); CPPUNIT_ASSERT(old_pstart != buffer._pstart); CPPUNIT_ASSERT_EQUAL(datalen,(int)(buffer._pstart - buffer._pfree)); CPPUNIT_ASSERT_EQUAL((int)(buffer._pend - buffer._pstart), MAX_BUFFER_SIZE); }