def test_interleave2(self): self.assertEqual( hex(interleave.interleave2(0x00, 0xFF)), '0xaaaa' ) self.assertEqual( hex(interleave.interleave2(0x0000, 0xFFFF)), '0xaaaaaaaa' )
def test_interleave2_with_integers_longer_than_16bit(self): # interleave2 can interleave integers larger than 16bits self.assertEqual( hex(interleave.interleave2(0xFFFFFFFF, 0xFFFFFFFF)), '0xffffffffffffffffL' ) # but if the integers are different lengths it doesn't flatten them self.assertNotEqual( hex(interleave.interleave2(0xF, 0xFF)), '0xfff' ) self.assertEqual( hex(interleave.interleave2(0xF, 0xFF)), '0xaaff' )
def test_interleave2_with_loop_comparison(self): """ test that loop version of interleave2 produces the same results as the original """ integers = (4, 42) interleaved = interleave.interleave2(*integers) interleaved_with_loop = alternative_interleave.interleave2_with_loop( *integers ) self.assertEqual(interleaved, interleaved_with_loop)
def test_idempotency2(self): for nums in self.num_sets: integers = list(nums[:2]) interleaved = interleave.interleave2(*integers) self.assertEqual(integers, interleave.deinterleave2(interleaved))
def test_interleave2(self): for nums in self.num_sets: self.assertEqual(interleave.interleave2(*nums[:2]), interleave.interleavem_naive(*nums[:2]))
def test_idempotency(self): integers = (4, 42) interleaved = interleave.interleave2(*integers) self.assertEqual(integers, interleave.deinterleave2(interleaved))
def test_interleave2(self): self.assertEqual(hex(interleave.interleave2(0x00, 0xFF)), '0xaaaa') self.assertEqual(hex(interleave.interleave2(0x0000, 0xFFFF)), '0xaaaaaaaa')
def test_interleave2_with_slicing(self): integers = (4, 42) interleaved = interleave.interleave2(*integers) interleave_with_slicing = alternative_interleave\ .interleave2_with_slicing(*integers) self.assertEqual(interleaved, interleave_with_slicing)
def test_interleave2_with_bitstring_and_chain(self): integers = (4, 42) interleaved = interleave.interleave2(*integers) interleaved_with_bitstring = alternative_interleave.\ interleave2_with_bitstring_and_chain(*integers) self.assertEqual(interleaved, interleaved_with_bitstring)
def test_interleave2_with_bitarray(self): integers = (4, 42) interleaved = interleave.interleave2(*integers) interleaved_with_bitarray = alternative_interleave.\ interleave2_with_bitarray(*integers) self.assertEqual(interleaved, interleaved_with_bitarray)
def test_interleave2(self): self.assertEqual(hex(interleave.interleave2(0x00, 0xFF)), hex(43690)) self.assertEqual(hex(interleave.interleave2(0x0000, 0xFFFF)), hex(2863311530))