def test_common_ancestor(self):
        bst = BST.build_minimal_tree([1, 2, 3, 4, 5, 6, 7, 8, 9])

        self.assertEqual(bst.get(5), common_ancestor(bst.root, bst.get(1), bst.get(9)), "Incorrect ancestor")
        self.assertEqual(bst.get(3), common_ancestor(bst.root, bst.get(2), bst.get(4)), "Incorrect ancestor")
        self.assertEqual(bst.get(8), common_ancestor(bst.root, bst.get(6), bst.get(9)), "Incorrect ancestor")
        self.assertEqual(bst.get(5), common_ancestor(bst.root, bst.get(3), bst.get(2)), "Incorrect ancestor")
    def test_bst_sequences(self):
        bst = BST.build_minimal_tree([1, 2, 3, 4, 5, 6, 7])

        sequences = bst_sequences(bst.root)

        for sequence in sequences:
            print [x for x in sequence]