0bfe365b441772a8591acd3a5f677b6fa8a51361
[bigint-presentation-code.git] / src / bigint_presentation_code / _tests / test_util.py
1 import unittest
2
3 from bigint_presentation_code.util import BitSet
4
5
6 class TestBitSet(unittest.TestCase):
7 def test_bitset_repr(self):
8 self.assertEqual(repr(BitSet([*range(3, 20), 21, *range(23, 50)])),
9 "BitSet([*range(3, 20), 21, *range(23, 50)])")
10 self.assertEqual(repr(BitSet(range(3, 20))), "BitSet(range(3, 20))")
11 self.assertEqual(repr(BitSet([5, 10, 15, 20, 25, 30, 35])),
12 "BitSet(range(5, 40, 5))")
13 self.assertEqual(repr(BitSet([5, 10, 15])), "BitSet([5, 10, 15])")
14 self.assertEqual(repr(BitSet([5, 10, 15, 20])),
15 "BitSet(range(5, 25, 5))")
16 self.assertEqual(repr(
17 BitSet([*range(5, 8), *range(9, 12), 13, *range(14, 20, 2)])),
18 "BitSet([*range(5, 8), *range(9, 12), 13, *range(14, 20, 2)])")
19 self.assertEqual(repr(BitSet(bits=0xcccd)), "BitSet(bits=0xcccd)")
20 self.assertEqual(repr(BitSet(bits=0xcccc)), "BitSet(bits=0xcccc)")
21 self.assertEqual(repr(BitSet(bits=0x249249)),
22 "BitSet(range(0, 24, 3))")
23 self.assertEqual(repr(BitSet(bits=0xaaaaaa)),
24 "BitSet(range(1, 25, 2))")
25 self.assertEqual(repr(BitSet(bits=0x123456789abcdef)),
26 "BitSet(bits=0x123456789abcdef)")
27
28
29 if __name__ == "__main__":
30 unittest.main()