Moved 20 to 26 to Python.
This commit is contained in:
@@ -9,6 +9,8 @@ try:
|
||||
from .lib_misc import even, odd
|
||||
from .lib_misc import collatz_sequence
|
||||
from .lib_misc import collatz_sequence_length
|
||||
from .lib_misc import factorial
|
||||
from .lib_misc import proper_divisors, sum_proper_divisors
|
||||
except ModuleNotFoundError:
|
||||
from lib_misc import is_palindrome_integer
|
||||
from lib_misc import is_palindrome_string
|
||||
@@ -19,6 +21,8 @@ except ModuleNotFoundError:
|
||||
from lib_misc import even, odd
|
||||
from lib_misc import collatz_sequence
|
||||
from lib_misc import collatz_sequence_length
|
||||
from lib_misc import factorial
|
||||
from lib_misc import proper_divisors, sum_proper_divisors
|
||||
|
||||
|
||||
class TestPrimeMethods(unittest.TestCase):
|
||||
@@ -70,6 +74,27 @@ class TestPrimeMethods(unittest.TestCase):
|
||||
[13, 40, 20, 10, 5, 16, 8, 4, 2, 1])
|
||||
self.assertEqual(collatz_sequence_length(13), 10)
|
||||
|
||||
def test_factorial(self):
|
||||
self.assertEqual(factorial(1), 1)
|
||||
self.assertEqual(factorial(3), 6)
|
||||
self.assertEqual(factorial(10), 3628800)
|
||||
|
||||
def test_proper_divisors(self):
|
||||
self.assertEqual(proper_divisors(0), [])
|
||||
self.assertEqual(proper_divisors(1), [])
|
||||
self.assertEqual(proper_divisors(2), [1])
|
||||
self.assertEqual(proper_divisors(4), [1, 2])
|
||||
self.assertEqual(proper_divisors(220), [
|
||||
1, 2, 4, 5, 10, 11, 20, 22, 44, 55, 110])
|
||||
|
||||
def test_sum_proper_divisors(self):
|
||||
self.assertEqual(sum_proper_divisors(0), 0)
|
||||
self.assertEqual(sum_proper_divisors(1), 0)
|
||||
self.assertEqual(sum_proper_divisors(2), 1)
|
||||
self.assertEqual(sum_proper_divisors(3), 1)
|
||||
self.assertEqual(sum_proper_divisors(220), 284)
|
||||
self.assertEqual(sum_proper_divisors(284), 220)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
|
||||
Reference in New Issue
Block a user