def test_eleven_value_left_of_middle_first_index(): expected = 0 actual = binary_search([4, 8, 15, 16, 23, 42], 4) assert expected == actual ######################## # Stretch Goal # ###################### # def test_twelve_benchmark_list_length_100(benchmark): # result = benchmark.pedantic(binary_search, kwargs={'lst': list(range(100)), 'value': 23}, iterations=1) # assert result == 23 # def test_thirteen_benchmark_list_length_1000(benchmark): # result = benchmark.pedantic(binary_search, kwargs={'lst': list(range(1000)), 'value': 230}, iterations=1) # assert result == 230 # def test_fourteen_benchmark_list_length_10000(benchmark): # result = benchmark.pedantic(binary_search, kwargs={'lst': list(range(10000)), 'value': 2300}, iterations=1) # assert result == 2300 # def test_fifteen_benchmark_list_length_100000(benchmark): # result = benchmark.pedantic(binary_search, kwargs={'lst': list(range(100000)), 'value': 23000}, iterations=1) # assert result == 23000
def test_array_binary_search_exsist(): expected = 0 lst = [4] key = 4 actual = binary_search(lst, key) assert expected == actual
def test_arr_key_edge_one(): lst = [] key = 6 expected = -1 actual = binary_search(lst, key) assert actual == expected
def test_arr_key_fauilure(): lst = [2, 6, 4, 5, 6] key = 6 expected = [1, 4] actual = binary_search(lst, key) assert actual == expected
def test_arr_key_positive_one(): lst = [1, 2, 3, 4, 6] key = 6 expected = 4 actual = binary_search(lst, key) assert actual == expected
def test_array_binary_search_uneven_array(): expected = 0 lst = [15, 45, 89] key = 15 actual = binary_search(lst, key) assert expected == actual
def test_array_binary_search_happy_path(): expected = 2 lst = [1, 2, 5, 7, 8, 10] key = 5 actual = binary_search(lst, key) assert expected == actual
def test_array_binary_search_empty_array(): expected = -1 lst = [] key = 99 actual = binary_search(lst, key) assert expected == actual
def test_array_binary_search_not_in_array(): expected = -1 lst = [55, 78, 90, 104] key = 1 actual = binary_search(lst, key) assert expected == actual
def test_arr_key_positive_three(): lst = [ 1, 2, 4, ] key = 6 expected = -1 actual = binary_search(lst, key) assert actual == expected
def test_binarysearch_even(): input_arr = ['a', 'b', 'c', 'd', 'e', 'f'] input_target = 'b' actual = binary_search(input_arr, input_target) expected = 1 assert expected == actual # def test_binarysearch_odd(): # input_arr = [3, 6, 9, 12, 18, 21, 24] # input_target = 24 # actual = binary_search(input_arr, input_target) # expected = 6 # assert expected == actual # def test_binarysearch_no_target(): # input_arr = [3, 6, 9, 12, 18, 21] # input_target = 17 # actual = binary_search(input_arr, input_target) # expected = -1 # assert expected == actual # def test_binarysearch_empty_array(): # input_arr = [] # input_target = 6 # actual = binary_search(input_arr, input_target) # expected = -1 # assert expected == actual # Tests # 1 Test an even-length valid array and a target value that is present (str) # 2 Test an odd-length valid array and a target value that is present (int) # 3 Test a valid array and a target value that is not present # 4 Test an empty array with a target value
def test_no_match(): actual = binary_search([1,3,6,7,8,9,10], 2) expected = -1 assert actual == expected
def test_empty(): actual = binary_search([], 2) expected = -1 assert actual == expected
def test_not_in_index_three(): expected = -1 actual = binary_search([0, 5, 10, 15, 20, 25], 257) assert actual == expected
def test_index_one(): expected = 0 actual = binary_search([0, 5, 10, 15, 20, 25], 0) assert actual == expected
def test_with_strings(): actual = binary_search(['at', 'from', 'hello', 'hi', 'there', 'this'], 'hello') expected = 2 assert actual == expected
def test_with_multiple_matches_both_less_than_mid(): actual = binary_search([1, 2, 3, 4, 4, 5, 6, 7, 7, 8], 4) expected = 3 assert actual == expected
def test_with_no_matching_elem(): actual = binary_search([1, 2, 4, 7, 9], 8) expected = -1 assert actual == expected
def test_one(): expected = 11 actual = binary_search([2, 4, 5, 10, 12, 18, 21, 30, 32, 54, 70, 76], 76) assert actual == expected
def test_lg(): actual = binary_search([6,7,8,9,10,12,16,19,20], 12) expected = 5 assert actual == expected
def test_even(): actual = binary_search([7,8,9,10,12,16,19,20], 12) expected = 4 assert actual == expected
def test_binary_search_three(): actual = binary_search([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15], 12) expected = 11 assert expected == actual
def test_two(): expected = 3 actual = binary_search([2, 4, 5, 10, 12, 18, 21, 30, 32, 54, 70, 76], 10) assert actual == expected
def test_binary_search(): actual = binary_search([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15], 5) expected = 4 assert expected == actual
def test_with_multiple_matches_both_mid(): actual = binary_search([1, 4, 4, 5], 4) expected = 2 assert actual == expected
def test_index_two(): expected = 1 actual = binary_search([0, 5, 10, 15, 20, 25], 5) assert actual == expected
def test_with_odd_num_elem(): actual = binary_search([1, 2, 4, 7, 9], 4) expected = 2 assert actual == expected
def test_index_three(): expected = 2 actual = binary_search([0, 5, 10, 15, 20, 25], 10) assert actual == expected
def test_with_even_num_elem(): actual = binary_search([1, 2, 4, 7], 7) expected = 3 assert actual == expected
def test_index_Four(): expected = 3 actual = binary_search([0, 5, 10, 15, 20, 25], 15) assert actual == expected