def test_random_node(self): bst = BST([5, 3, 7, 2, 4, 6, 9]) self.assertEquals(bst.get_at(6).data, 9) self.assertEquals(bst.get_at(0).data, 5) self.assertEquals(bst.get_at(1).data, 3) self.assertEquals(bst.get_at(2).data, 2) self.assertEquals(bst.get_at(3).data, 4) for i in range(0, 10): print random_node(bst)
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]