def test_insertion_sort_works_correct(self): lst = [5, 4, 3, 2, 1] insertion_sort(lst) self.assertEqual(lst, [1, 2, 3, 4, 5]) lst = [1, 3, 2, 5, 4] insertion_sort(lst) self.assertEqual(lst, [1, 2, 3, 4, 5])
def test_nearly_sorted(): nearly_sorted = [5, 12, 7, 5, 5, 7] insertion_sort(nearly_sorted) actual = nearly_sorted expected = [5, 5, 5, 7, 7, 12] assert actual == expected
def test_sorting_in_reverse(): reverse_sort = [20, 18, 12, 8, 5, -2] insertion_sort(reverse_sort) actual = reverse_sort expected = [-2, 5, 8, 12, 18, 20] assert actual == expected
def test_sorting_random_inputs(): random_input = [8, 4, 23, 42, 16, 15] insertion_sort(random_input) actual = random_input expected = [4, 8, 15, 16, 23, 42] assert actual == expected
def test_nearly_sorted(): assert insertion_sort([2, 3, 5, 7, 13, 11]) == [2, 3, 5, 7, 11, 13]
def test_insertion_sort_few(): arr = [5, 12, 7, 5, 5, 7] actual = insertion_sort(arr) expected = [5, 5, 5, 7, 7, 12] assert actual == expected
def test_insertion_sort(): arr = [8, 4, 23, 42, 16, 15] actual = insertion_sort(arr) expected = [4, 8, 15, 16, 23, 42] assert actual == expected
def test_one(): z = [1] actual = insertion_sort(z) expected = [1] assert actual == expected
def test_many(): z = [8, 4, 23, 42, 16, 15] actual = insertion_sort(z) expected = [4, 8, 15, 16, 23, 42] assert actual == expected
def test_will_fail_when_passed_letters(): expected = "Error" actual = insertion_sort(["a", "z", "g", "w", "y", "s", "t"]) assert expected == actual
def test_can_successfully_sort_an_unsorted_list(): expected = [4, 8, 15, 16, 23, 42] actual = insertion_sort([8, 4, 23, 42, 16, 15]) assert expected == actual
def test_can_successfully_sort_a_list_with_negative_nubmers(): expected = [-2, 5, 8, 12, 18, 20] actual = insertion_sort([20, 18, 12, 8, 5, -2]) assert expected == actual
def test_simple_lst(): lst = [8, 4, 23, 42, 16, 15] insertion_sort(lst) assert lst == [4, 8, 15, 16, 23, 42]
def test_reverse_sorted(): assert insertion_sort([20, 18, 12, 8, 5, -2]) == [-2, 5, 8, 12, 18, 20]
def test_instantiate_empty(): arr = [] tester = insertion_sort(arr) assert tester == None
def test_many1(): z = [20, 18, 12, 8, 5, -2] actual = insertion_sort(z) expected = [-2, 5, 8, 12, 18, 20] assert actual == expected
def test_insertion_sort_reverse_in(): arr = [20, 18, 12, 8, 5, -2] actual = insertion_sort(arr) expected = [-2, 5, 8, 12, 18, 20] assert actual == expected
def test_many2(): z = [5, 12, 7, 5, 5, 7] actual = insertion_sort(z) expected = [5, 5, 5, 7, 7, 12] assert actual == expected
def test_insertion_sort_nearly_sorted(): arr = [2, 3, 5, 7, 13, 11] actual = insertion_sort(arr) expected = [2, 3, 5, 7, 11, 13] assert actual == expected
def test_many3(): z = [2, 3, 5, 7, 13, 11] actual = insertion_sort(z) expected = [2, 3, 5, 7, 11, 13] assert actual == expected
def test_sort_works(): arr = [6,5,4,3,2,1] insertion_sort(arr) assert arr == [1,2,3,4,5,6]
def test_zero(): z = [] actual = insertion_sort(z) expected = "Not a valid input" assert actual == expected
def test_insert_sorting(test_lists, expected): actual = insertion_sort(test_lists) assert actual == expected
def test_few_uniques(): assert insertion_sort([5, 12, 7, 5, 5, 7]) == [5, 5, 5, 7, 7, 12]