def start_sort(self):
        try:
            if ',' in self.input_data:
                start_array = [int(s) for s in self.input_data.split(',')]
            else:
                start_array = [int(s) for s in self.input_data.split()]

            result_array = RadixSort(start_array).sort()
            self.output_data = convert_list_into_string(result_array)
        except ValueError:
            self.output_data = "Please, check correct input data"
Esempio n. 2
0
    def start_sort(self):
        self.logger.log('Start Sorting: ' + self.input_data)
        try:
            if ',' in self.input_data:
                start_array = [int(s) for s in self.input_data.split(',')]
            else:
                start_array = [int(s) for s in self.input_data.split()]

            result_array = RadixSort(start_array).sort()
            result = convert_list_into_string(result_array)
            self.output_data = result
            self.logger.log('Finish Sorting: ' + result)
        except ValueError:
            self.logger.log('Incorrect input: ' + self.input_data)
            self.output_data = "Incorrect input!"
Esempio n. 3
0
 def test_create_sorting_object(self):
     radix = RadixSort([])
     self.assertTrue(isinstance(radix, RadixSort))
Esempio n. 4
0
 def test_radix_sort_with_single_element(self):
     arr = [123456789]
     sorted = RadixSort(arr).sort()
     self.assertEqual(sorted, [123456789])
Esempio n. 5
0
 def test_radix_sort_with_zeroes(self):
     arr = [0, 0, 0]
     sorted = RadixSort(arr).sort()
     self.assertEqual(sorted, [0, 0, 0])
Esempio n. 6
0
 def test_radix_sort_throws_with_invalid_list(self):
     arr = [1, 'orange', 2, 3, 4, 'apple']
     with self.assertRaises(ValueError):
         RadixSort(arr)
Esempio n. 7
0
 def test_radix_sort_throws_when_array_is_not_a_list(self):
     arr = "string"
     with self.assertRaises(TypeError):
         RadixSort(arr)
Esempio n. 8
0
 def test_radix_sort_with_positive_and_negative_numbers(self):
     size = 10000
     arr = [randint(-size, size) for i in range(size)]
     sorted_arr = RadixSort(arr.copy()).sort()
     self.assertEqual(sorted_arr, sorted(arr))
Esempio n. 9
0
 def test_radix_sort_with_negative_numbers(self):
     arr = [-1, -801, -7, -25, -5]
     sorted = RadixSort(arr).sort()
     self.assertEqual(sorted, [-801, -25, -7, -5, -1])
Esempio n. 10
0
 def test_radix_sort_with_small_array(self):
     arr = [1500, 675, 8, 115, 34]
     sorted = RadixSort(arr).sort()
     self.assertEqual(sorted, [8, 34, 115, 675, 1500])
Esempio n. 11
0
 def test_radix_sort_with_small_positive_numbers(self):
     arr = [7, 1, 8, 2, 5]
     sorted = RadixSort(arr).sort()
     self.assertEqual(sorted, [1, 2, 5, 7, 8])
Esempio n. 12
0
 def test_radix_sort_with_empty_array(self):
     arr = []
     sorted = RadixSort(arr).sort()
     self.assertEqual(sorted, [])