def test_radix_sort_against_merge_sort(self): """Sort 100 randomly generated lists of numbers with merge sort sort and with radix sort and assert that their outputs match. """ for i in range(100): radix = [randrange(0, 1000000) for x in range(100)] merge = radix[:] radix = radix_sort_int(radix) merge = merge_sort(merge) self.assertEqual(radix, merge)
def test_insertion_sort_against_merge_sort(self): """Sort 100 randomly generated lists of numbers with insertion sort and with merge sort and assert that their outputs match. """ for i in range(100): insertion = [randrange(0, 1000000) for x in range(100)] merge = insertion[:] insertion_sort(insertion) merge = merge_sort(merge) self.assertEqual(insertion, merge)
def test_merge_sort_against_quicksort(self): """Sort 100 randomly generated lists of numbers with merge sort and with quicksort and assert that their outputs match. """ for i in range(100): quick = [randrange(0, 1000000) for x in range(100)] merge = quick[:] quick = quicksort(quick) merge = merge_sort(merge) self.assertEqual(quick, merge)
def test_merge_sort_against_native(self): """Sort 100 randomly generated lists of numbers with merge sort and assert that their output matches that of Python's built-in sort. """ for i in range(100): li = [randrange(0, 1000000) for x in range(100)] expected = sorted(li) li = merge_sort(li) self.assertEqual(expected, li)
def test_sort(self): input_li = [6, 4, 2, 1, 3, 5] expected = [1, 2, 3, 4, 5, 6] self.assertEquals(merge_sort(input_li), expected)
def test_ordered(self): input_li = [1, 2, 3, 4, 5, 6] self.assertEquals(merge_sort(input_li), input_li)
def test_single(self): input_li = [1] self.assertEquals(merge_sort(input_li), input_li)
def test_empty(self): input_li = [] self.assertEquals(merge_sort(input_li), input_li)