Add countSetBitSlow tests

pull/103/head
Tatsuhiro Tsujikawa 2013-07-03 23:22:40 +09:00
parent c2e62cdb81
commit df0034f1cd
1 changed files with 7 additions and 0 deletions

View File

@ -2,6 +2,8 @@
#include <cppunit/extensions/HelperMacros.h>
#include "TimerA2.h"
namespace aria2 {
class bitfieldTest:public CppUnit::TestFixture {
@ -44,14 +46,19 @@ void bitfieldTest::testCountSetBit()
0xff, 0xff, 0xff, 0xf9 };
// (nbits+7)/8 == 0 && nbits%32 == 0
CPPUNIT_ASSERT_EQUAL((size_t)62, bitfield::countSetBit(bitfield, 64));
CPPUNIT_ASSERT_EQUAL((size_t)62, bitfield::countSetBitSlow(bitfield, 64));
// (nbits+7)/8 != 0 && nbits%32 != 0 && len%4 == 0
CPPUNIT_ASSERT_EQUAL((size_t)56, bitfield::countSetBit(bitfield, 56));
CPPUNIT_ASSERT_EQUAL((size_t)56, bitfield::countSetBitSlow(bitfield, 56));
// (nbits+7)/8 != 0 && nbits%32 != 0 && len%4 != 0
CPPUNIT_ASSERT_EQUAL((size_t)40, bitfield::countSetBit(bitfield, 40));
CPPUNIT_ASSERT_EQUAL((size_t)40, bitfield::countSetBitSlow(bitfield, 40));
// (nbits+7)/8 == 0 && nbits%32 != 0
CPPUNIT_ASSERT_EQUAL((size_t)61, bitfield::countSetBit(bitfield, 63));
CPPUNIT_ASSERT_EQUAL((size_t)61, bitfield::countSetBitSlow(bitfield, 63));
// nbts == 0
CPPUNIT_ASSERT_EQUAL((size_t)0, bitfield::countSetBit(bitfield, 0));
CPPUNIT_ASSERT_EQUAL((size_t)0, bitfield::countSetBitSlow(bitfield, 0));
}
void bitfieldTest::testLastByteMask()