#include #include #include using namespace vanetza; TEST(BitNumber, ctor) { BitNumber a; EXPECT_EQ(a.raw(), 0); BitNumber b(0x0fffff); EXPECT_EQ(b.raw(), 0x0fffff); } TEST(BitNumber, mask) { BitNumber a(0xf01234); EXPECT_EQ(a.raw(), 0x1234); BitNumber b(4); EXPECT_EQ(b.raw(), 0); b = 1; EXPECT_EQ(b.raw(), 1); } TEST(BitNumber, equality) { BitNumber a; BitNumber b(0); EXPECT_EQ(a, b); a = 3; EXPECT_NE(a, b); } TEST(BitNumber, less) { BitNumber a(3); BitNumber b(4); EXPECT_LT(a, b); EXPECT_LE(a, b); EXPECT_GT(b, a); a = 4; EXPECT_LE(a, b); EXPECT_GE(a, b); b = 17; // 17 is masked to 1 EXPECT_LE(b, a); }