#include "sys.h" #include "debug.h" #include "bitsetTest.h" template void bitsetTest::testOrAssignLevel3(void) { libecc::bitset tmp1; libecc::bitset<128> tmp2; libecc::bitset tmp3; tmp1 = get_x(OverLoadHook()); tmp1 |= get_y(OverLoadHook()); tmp3 = ~get_x(OverLoadHook()); tmp2 = get_y(OverLoadHook()); tmp2 = ~tmp2; tmp3 &= tmp2; libecc::bitset res; res = ~tmp3; CPPUNIT_ASSERT( tmp1 == res ); CPPUNIT_ASSERT( (tmp1.digit(libecc::bitset::digits - 1) & ~libecc::bitset::valid_bits) == 0 ); } template void bitsetTest::testOrAssignLevel2(void) { #ifndef FASTTEST testOrAssignLevel3(); testOrAssignLevel3(); testOrAssignLevel3(); testOrAssignLevel3(); testOrAssignLevel3(); testOrAssignLevel3(); #endif testOrAssignLevel3(); #ifndef FASTTEST testOrAssignLevel3(); #endif } void bitsetTest::testOrAssign(void) { #ifndef FASTTEST testOrAssignLevel2<13>(); testOrAssignLevel2<32>(); testOrAssignLevel2<45>(); testOrAssignLevel2<64>(); testOrAssignLevel2<77>(); testOrAssignLevel2<96>(); #endif testOrAssignLevel2<109>(); #ifndef FASTTEST testOrAssignLevel2<128>(); #endif }