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

Method test_hamt_delete_4

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

Source from the content-addressed store, hash-verified

1020 self.assertEqual(h.get(B), 'b')
1021
1022 def test_hamt_delete_4(self):
1023 A = HashKey(100, 'A')
1024 B = HashKey(101, 'B')
1025 C = HashKey(100100, 'C')
1026 D = HashKey(100100, 'D')
1027 E = HashKey(100100, 'E')
1028
1029 h = hamt()
1030 h = h.set(A, 'a')
1031 h = h.set(B, 'b')
1032 h = h.set(C, 'c')
1033 h = h.set(D, 'd')
1034 h = h.set(E, 'e')
1035
1036 orig_len = len(h)
1037
1038 # BitmapNode(size=4 bitmap=0b110000):
1039 # NULL:
1040 # BitmapNode(size=4 bitmap=0b1000000000000000000001000):
1041 # <Key name:A hash:100>: 'a'
1042 # NULL:
1043 # CollisionNode(size=6 id=0x10515ef30):
1044 # <Key name:C hash:100100>: 'c'
1045 # <Key name:D hash:100100>: 'd'
1046 # <Key name:E hash:100100>: 'e'
1047 # <Key name:B hash:101>: 'b'
1048
1049 h = h.delete(D)
1050 self.assertEqual(len(h), orig_len - 1)
1051
1052 h = h.delete(E)
1053 self.assertEqual(len(h), orig_len - 2)
1054
1055 h = h.delete(C)
1056 self.assertEqual(len(h), orig_len - 3)
1057
1058 h = h.delete(A)
1059 self.assertEqual(len(h), orig_len - 4)
1060
1061 h = h.delete(B)
1062 self.assertEqual(len(h), 0)
1063
1064 def test_hamt_delete_5(self):
1065 h = hamt()

Callers

nothing calls this directly

Calls 4

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

Tested by

no test coverage detected