Exemple #1
0
 def test_magic_methods(self):
     ''' Test that the magic methods work correctly '''
     barray = BitArray(array=[0x12, 0x34])
     narray = BitArray(array=[0x34, 0x12])
     self.assertTrue(0x12 in barray)
     self.assertTrue(0x56 not in barray)
     self.assertEqual(-8993115002363113022, hash(barray))
     self.assertEqual(69, len(barray))
     self.assertEqual(list(iter(barray)), barray.to_bit_list())
     self.assertEqual(list(reversed(barray)), list(reversed(barray.to_bit_list())))
     self.assertTrue(barray  == barray)
     self.assertFalse(barray == narray)
     self.assertTrue(barray  != narray)
     self.assertFalse(barray != barray)
     self.assertTrue(barray  >= barray)
     self.assertTrue(barray  <= barray)
     self.assertTrue(barray   < narray)
     self.assertTrue(narray   > barray)
     self.assertEqual(narray  & barray, BitArray(array=[0x10, 0x10]))
     self.assertEqual(narray  ^ barray, BitArray(array=[0x26, 0x26]))
     self.assertEqual(narray  | barray, BitArray(array=[0x36, 0x36]))
     self.assertEqual(-barray, BitArray(array=[0xFFFFFFFFFFFFFFCC, 0xFFFFFFFFFFFFFFEE]))
     self.assertEqual(~barray, BitArray(array=[0xFFFFFFFFFFFFFFCB, 0xFFFFFFFFFFFFFFED]))
     self.assertEqual(+barray, BitArray(array=[0x12, 0x34]))