MCPcopy Index your code
hub / github.com/python/cpython / test_hamt_delete_3

Method test_hamt_delete_3

Lib/test/test_context.py:986–1020  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

984 self.assertEqual(len(h), 0)
985
986 def test_hamt_delete_3(self):
987 A = HashKey(100, 'A')
988 B = HashKey(101, 'B')
989 C = HashKey(100100, 'C')
990 D = HashKey(100100, 'D')
991 E = HashKey(104, 'E')
992
993 h = hamt()
994 h = h.set(A, 'a')
995 h = h.set(B, 'b')
996 h = h.set(C, 'c')
997 h = h.set(D, 'd')
998 h = h.set(E, 'e')
999
1000 orig_len = len(h)
1001
1002 # BitmapNode(size=6 bitmap=0b100110000):
1003 # NULL:
1004 # BitmapNode(size=4 bitmap=0b1000000000000000000001000):
1005 # <Key name:A hash:100>: 'a'
1006 # NULL:
1007 # CollisionNode(size=4 id=0x108572410):
1008 # <Key name:C hash:100100>: 'c'
1009 # <Key name:D hash:100100>: 'd'
1010 # <Key name:B hash:101>: 'b'
1011 # <Key name:E hash:104>: 'e'
1012
1013 h = h.delete(A)
1014 self.assertEqual(len(h), orig_len - 1)
1015
1016 h = h.delete(E)
1017 self.assertEqual(len(h), orig_len - 2)
1018
1019 self.assertEqual(h.get(C), 'c')
1020 self.assertEqual(h.get(B), 'b')
1021
1022 def test_hamt_delete_4(self):
1023 A = HashKey(100, 'A')

Callers

nothing calls this directly

Calls 5

HashKeyClass · 0.85
setMethod · 0.45
deleteMethod · 0.45
assertEqualMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected