def test_remove_root(self): s = test_items_seq(1000) tree = AnderssonTree(s) self.check_aatree_properties(tree) size = len(tree) keys = [x[0] for x in s] keyset = set(keys) while len(keyset) > 0: k = tree.root().key keyset.remove(k) tree.remove(k) size -= 1 self.assertEqual(len(tree), size) self.assertEqual(set(tree.keys()), keyset) self.check_aatree_properties(tree)
def test_remove(self): for i in range(10): s = test_items_seq(100) tree = AnderssonTree(s) self.check_aatree_properties(tree) size = len(tree) keys = [x[0] for x in s] keyset = set(keys) shuffle(keys) for k in keys: keyset.remove(k) tree.remove(k) size -= 1 self.assertEqual(len(tree), size) self.assertEqual(set(tree.keys()), keyset) self.check_aatree_properties(tree, dump=False)