def test_set_singal_bits(): """ Test setting individual bits. For example, >>> start_bits = 0b00000 >>> bits.set_bit(start_bits, 0) >>> 0b00001 >>> bits.set_bit(start_bits, 1) >>> 0b00011 """ for i in range(10000): result = bits.set_bit(0, i) expected = pow(2, i) nose.tools.assert_equal(expected, result)
def test_set_incremental_bits(): """ Test setting all bits incrementally. For example, >>> start_bits = 0b00000 >>> new_bits = bits.set_bit(start_bits, 0) >>> new_bits >>> 0b00001 >>> new_bits = bits.set_bit(new_bits, 1) >>> new_bits >>> 0b00011 """ result = 0 expected = 0 for i in range(10000): result = bits.set_bit(result, i) expected += pow(2, i) nose.tools.assert_equal(expected, result)