def test_search_with_7_items(self):
     # Create a complete binary search tree of 7 items in level-order
     items = [4, 2, 6, 1, 3, 5, 7]
     bst = BinarySearchTree(items)
     for item in items:
         assert bst.search(item) == item
     assert bst.search(8) is None
 def test_search_with_7_strings(self):
     # Create a complete binary search tree of 7 items in level-order
     items = ['D', 'B', 'F', 'A', 'C', 'E', 'G']
     bst = BinarySearchTree(items)
     for item in items:
         assert bst.search(item) == item
     assert bst.search('H') is None
 def test_search_with_3_items(self):
     # Create a complete binary search tree of 3 items in level-order
     items = [2, 1, 3]
     bst = BinarySearchTree(items)
     assert bst.search(1) == 1
     assert bst.search(2) == 2
     assert bst.search(3) == 3
     assert bst.search(4) is None
 def test_search_with_3_strings(self):
     # Create a complete binary search tree of 3 items in level-order
     items = ['B', 'A', 'C']
     bst = BinarySearchTree(items)
     assert bst.search('A') == 'A'
     assert bst.search('B') == 'B'
     assert bst.search('C') == 'C'
     assert bst.search('D') is None
 def test_search_method(self):
     new_node = Node(3)
     bst = BinarySearchTree(new_node)
     right_node = Node(4)
     bst.insert(bst, right_node)
     left_node = Node(2)
     bst.insert(bst, left_node)
     res = bst.search(bst, 2)
     self.assertEqual(res.val, 2)
     res = bst.search(bst, 4)
     self.assertEqual(res.val, 4)
     res = bst.search(bst, 5)
     self.assertIsNone(res)
Beispiel #6
0
 def test_insert_with_repeated_items(self):
     items = [1, 2, 2]
     bst = BinarySearchTree(items)
     assert bst.search(2)[0] == 2
     assert bst.items_in_order() == [1, 2, 2]