MCPcopy Index your code
hub / github.com/RustPython/RustPython / test_hamt_delete_1

Method test_hamt_delete_1

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

Source from the content-addressed store, hash-verified

674 self.assertEqual(list(h.items()), [])
675
676 def test_hamt_delete_1(self):
677 A = HashKey(100, 'A')
678 B = HashKey(101, 'B')
679 C = HashKey(102, 'C')
680 D = HashKey(103, 'D')
681 E = HashKey(104, 'E')
682 Z = HashKey(-100, 'Z')
683
684 Er = HashKey(103, 'Er', error_on_eq_to=D)
685
686 h = hamt()
687 h = h.set(A, 'a')
688 h = h.set(B, 'b')
689 h = h.set(C, 'c')
690 h = h.set(D, 'd')
691 h = h.set(E, 'e')
692
693 orig_len = len(h)
694
695 # BitmapNode(size=10 bitmap=0b111110000 id=0x10eadc618):
696 # <Key name:A hash:100>: 'a'
697 # <Key name:B hash:101>: 'b'
698 # <Key name:C hash:102>: 'c'
699 # <Key name:D hash:103>: 'd'
700 # <Key name:E hash:104>: 'e'
701
702 h = h.delete(C)
703 self.assertEqual(len(h), orig_len - 1)
704
705 with self.assertRaisesRegex(ValueError, 'cannot compare'):
706 h.delete(Er)
707
708 h = h.delete(D)
709 self.assertEqual(len(h), orig_len - 2)
710
711 h2 = h.delete(Z)
712 self.assertIs(h2, h)
713
714 h = h.delete(A)
715 self.assertEqual(len(h), orig_len - 3)
716
717 self.assertEqual(h.get(A, 42), 42)
718 self.assertEqual(h.get(B), 'b')
719 self.assertEqual(h.get(E), 'e')
720
721 def test_hamt_delete_2(self):
722 A = HashKey(100, 'A')

Callers

nothing calls this directly

Calls 8

HashKeyClass · 0.85
lenFunction · 0.85
assertRaisesRegexMethod · 0.80
setMethod · 0.45
deleteMethod · 0.45
assertEqualMethod · 0.45
assertIsMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected