Skip to content

Commit

Permalink
Add files via upload
Browse files Browse the repository at this point in the history
  • Loading branch information
lnugraha authored May 30, 2024
1 parent 5e81099 commit d624072
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions 2024_05_31_DataStructures/test_factorial.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# python3 -m unittest test_factorial.py

import unittest
from factorial import factorial_iteration
from factorial import factorial_dynamic_programming

class TestFactorial(unittest.TestCase):
def test_factorial_iteration(self):
self.assertEqual(factorial_iteration(1), 1)
self.assertEqual(factorial_iteration(0), 1)
self.assertEqual(factorial_iteration(5), 120)

self.assertEqual(factorial_dynamic_programming(1), 1)
self.assertEqual(factorial_dynamic_programming(0), 1)
self.assertEqual(factorial_dynamic_programming(4), 24)

def test_negative(self):
self.assertRaises(ValueError, factorial_iteration, -1)
self.assertRaises(ValueError, factorial_dynamic_programming, -5)

def test_nonnumber(self):
self.assertRaises(TypeError, factorial_iteration, True)
self.assertRaises(TypeError, factorial_iteration, "codeinplace")

self.assertRaises(TypeError, factorial_dynamic_programming, True)
self.assertRaises(TypeError, factorial_dynamic_programming, "codeinplace")

0 comments on commit d624072

Please sign in to comment.