def test_delete_node_without_child(self): tree = Tree() tree.add_child(5) tree.add_child(1) tree.add_child(4) tree.add_child(7) tree.add_child(9) tree.add_child(6) tree.add_child(8) self.assertEqual(tree.display_preorder(), [5, 1, 4, 7, 6, 9, 8]) self.assertEqual(tree.display_inorder(), [1, 4, 5, 6, 7, 8, 9]) tree.delete(4) self.assertEqual(tree.display_preorder(), [5, 1, 7, 6, 9, 8]) self.assertEqual(tree.display_inorder(), [1, 5, 6, 7, 8, 9]) tree.delete(8) self.assertEqual(tree.display_preorder(), [5, 1, 7, 6, 9]) self.assertEqual(tree.display_inorder(), [1, 5, 6, 7, 9])
def test_delete_root_node(self): tree = Tree() tree.add_child(5) tree.add_child(4) tree.add_child(6) tree.delete(5) self.assertEqual(tree.display_preorder(), [6, 4]) self.assertEqual(tree.display_inorder(), [4, 6])
def test_display_inorder(self): tree = Tree() tree.add_child(5) tree.add_child(2) tree.add_child(1) tree.add_child(4) tree.add_child(7) tree.add_child(9) tree.add_child(6) tree.add_child(0) tree.add_child(8) tree.add_child(3) self.assertEqual(tree.display_inorder(), [0, 1, 2, 3, 4, 5, 6, 7, 8, 9])