def test_msb_left_15bit(): b = BitField(15, order=BitField.BIT_ORDER_MSB_LEFT) print("TEST: check initial value") my_assert(b.value, 15) print("TEST: check maxval") my_assert(b.maxval, 255) print("TEST: check width") my_assert(b.width, 8) print("TEST: check bit 7 clear") my_assert(b[7], 0) my_assert(b.isBitSet(7), False) my_assert(b.isBitClr(7), True) print("TEST: check bit 6 clear") my_assert(b[6], 0) my_assert(b.isBitSet(6), False) my_assert(b.isBitClr(6), True) print("TEST: check bit 5 clear") my_assert(b[5], 0) my_assert(b.isBitSet(5), False) my_assert(b.isBitClr(5), True) print("TEST: check bit 4 clear") my_assert(b[4], 0) my_assert(b.isBitSet(4), False) my_assert(b.isBitClr(4), True) print("TEST: check bit 3 set") my_assert(b[3], 1) my_assert(b.isBitSet(3), True) my_assert(b.isBitClr(3), False) print("TEST: check bit 2 set") my_assert(b[2], 1) my_assert(b.isBitSet(2), True) my_assert(b.isBitClr(2), False) print("TEST: check bit 1 set") my_assert(b[1], 1) my_assert(b.isBitSet(1), True) my_assert(b.isBitClr(1), False) print("TEST: check bit 0 set") my_assert(b[0], 1) my_assert(b.isBitSet(0), True) my_assert(b.isBitClr(0), False)
def test_msb_left_8bit(): b = BitField(8, order=BitField.BIT_ORDER_MSB_LEFT) print("TEST: indices=", b.indices) print("TEST: check initial value") my_assert(b.value, 8) print("TEST: check maxval") my_assert(b.maxval, 255) print("TEST: check width") my_assert(b.width, 8) print("TEST: check length") my_assert(len(b), 8) print("TEST: set slice [7:3] = 5") b[7:3] = 0b0101 my_assert(b.value, 40) my_assert(b[3], 1) my_assert(b.isBitSet(3), True) my_assert(b[5], 1) my_assert(b.isBitSet(5), True) print("TEST: set bit 7 = 1") b[7] = 1 my_assert(b[7], 1) my_assert(b.isBitSet(7), True) my_assert(b.value, 168) print("TEST: set slice [7:0] = 255") b[7:0] = 255 my_assert(b.value, 255) my_assert(b.isBitSet(7), True) my_assert(b.isBitClr(7), False) my_assert(b.isBitSet(6), True) my_assert(b.isBitClr(6), False) my_assert(b.isBitSet(5), True) my_assert(b.isBitClr(5), False) my_assert(b.isBitSet(4), True) my_assert(b.isBitClr(4), False) my_assert(b.isBitSet(3), True) my_assert(b.isBitClr(3), False) my_assert(b.isBitSet(2), True) my_assert(b.isBitClr(2), False) my_assert(b.isBitSet(1), True) my_assert(b.isBitClr(1), False) my_assert(b.isBitSet(0), True) my_assert(b.isBitClr(0), False) my_assert(b.value, 255) my_assert(b.isRange(7, 0, 1), True) my_assert(b.isRangeSet(7, 0), True) my_assert(b.isRangeClr(7, 0), False)
def test_msb_right_8bit(): b = BitField(8, order=BitField.BIT_ORDER_MSB_RIGHT) print("TEST: check initial value") my_assert(b.value, 8) print("TEST: check maxval") my_assert(b.maxval, 255) print("TEST: check width") my_assert(b.width, 8) print("TEST: set slice [7:3] = 5") b[3:7] = 0b0101 my_assert(b.value, 40) my_assert(b[3], 1) my_assert(b.isBitSet(3), True) my_assert(b.isBitClr(3), False) my_assert(b[5], 1) my_assert(b.isBitSet(5), True) my_assert(b.isBitClr(5), False) print("TEST: set bit 7 = 1") b[7] = 1 my_assert(b[7], 1) my_assert(b.isBitSet(7), True) my_assert(b.isBitClr(7), False) my_assert(b.value, 168) print("TEST: set slice [0:7] = 255") b[0:7] = 255 my_assert(b.isBitSet(0), True) my_assert(b.isBitClr(0), False) my_assert(b.isBitSet(1), True) my_assert(b.isBitClr(1), False) my_assert(b.isBitSet(2), True) my_assert(b.isBitClr(2), False) my_assert(b.isBitSet(3), True) my_assert(b.isBitClr(3), False) my_assert(b.isBitSet(4), True) my_assert(b.isBitClr(4), False) my_assert(b.isBitSet(5), True) my_assert(b.isBitClr(5), False) my_assert(b.isBitSet(6), True) my_assert(b.isBitClr(6), False) my_assert(b.isBitSet(7), True) my_assert(b.isBitClr(7), False) my_assert(b.value, 255)