Skip to content

Commit 88804e7

Browse files
authored
Merge pull request #67 from larissalages/tests/radix
add unit tests for radix python
2 parents 9b72dd6 + 2855044 commit 88804e7

File tree

3 files changed

+34
-1
lines changed

3 files changed

+34
-1
lines changed

classical_algorithms/python/radix.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ def _sort(self, data):
2121
data.extend(bucket)
2222
return data
2323

24+
# TODO: Expand functionality to work with negative numbers
2425

2526
# Ex:
2627
array = [50, 2, 13, 23, 11, 100]
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
import unittest
2+
from classical_algorithms.python.radix import Radix
3+
4+
5+
class TestRadix(unittest.TestCase):
6+
def test_radix(self):
7+
radix = Radix()
8+
9+
print('None Input')
10+
self.assertRaises(TypeError, radix.sort, None)
11+
12+
print('Empty Input')
13+
self.assertEqual(radix.sort([]), [])
14+
15+
print('One Element')
16+
self.assertEqual(radix.sort([25]), [25])
17+
18+
print('Two or More Elements')
19+
array = [10, 1, 0, 100, 5, 15, 100, 7, 500, 200]
20+
self.assertEqual(sorted(array), radix.sort(array))
21+
22+
# TODO: Include tests for negative numbers
23+
24+
print('Success: test_radix\n')
25+
26+
27+
def main():
28+
TestRadix.test_radix()
29+
30+
31+
if __name__ == '__main__':
32+
main()

readme.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Code | Test
1616
------------ | -------------
1717
[Quick Sort](https://github.com/larissalages/code_problems/blob/master/classical_algorithms/python/quicksort.py) | [Unit Test](https://github.com/larissalages/code_problems/blob/master/classical_algorithms/python/tests/test_quick_sort.py)
1818
[Merge Sort](https://github.com/larissalages/code_problems/blob/master/classical_algorithms/python/mergesort.py) | [Unit Test](https://github.com/larissalages/code_problems/blob/master/classical_algorithms/python/tests/test_merge_sort.py)
19-
[Radix](https://github.com/larissalages/code_problems/blob/master/classical_algorithms/python/radix.py) | Missing tests
19+
[Radix](https://github.com/larissalages/code_problems/blob/master/classical_algorithms/python/radix.py) | [Unit Test](https://github.com/larissalages/code_problems/blob/f0353fac71e3b773dbfb12080c01b02baa35ac72/classical_algorithms/python/tests/test_radix.py)
2020
[Selection Sort](https://github.com/larissalages/code_problems/blob/master/classical_algorithms/python/selection%20sort.py) | Missing tests
2121
[Binary Search](https://github.com/larissalages/code_problems/blob/master/classical_algorithms/python/Binary%20search.py) | Missing tests
2222

0 commit comments

Comments
 (0)