Add calculator with unit tests
This commit is contained in:
14
calculator.py
Normal file
14
calculator.py
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
class Calculator:
|
||||||
|
def add(self, a, b):
|
||||||
|
return a + b
|
||||||
|
|
||||||
|
def subtract(self, a, b):
|
||||||
|
return a - b
|
||||||
|
|
||||||
|
def multiply(self, a, b):
|
||||||
|
return a * b
|
||||||
|
|
||||||
|
def divide(self, a, b):
|
||||||
|
if b == 0:
|
||||||
|
raise ValueError("Division by zero is not allowed")
|
||||||
|
return a / b
|
||||||
27
test_calculator.py
Normal file
27
test_calculator.py
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
import unittest
|
||||||
|
from calculator import Calculator
|
||||||
|
|
||||||
|
class TestCalculator(unittest.TestCase):
|
||||||
|
def setUp(self):
|
||||||
|
self.calc = Calculator()
|
||||||
|
|
||||||
|
def test_add(self):
|
||||||
|
self.assertEqual(self.calc.add(2, 3), 5)
|
||||||
|
self.assertEqual(self.calc.add(-1, 1), 0)
|
||||||
|
|
||||||
|
def test_subtract(self):
|
||||||
|
self.assertEqual(self.calc.subtract(5, 3), 2)
|
||||||
|
self.assertEqual(self.calc.subtract(0, 0), 0)
|
||||||
|
|
||||||
|
def test_multiply(self):
|
||||||
|
self.assertEqual(self.calc.multiply(2, 3), 6)
|
||||||
|
self.assertEqual(self.calc.multiply(-1, 5), -5)
|
||||||
|
|
||||||
|
def test_divide(self):
|
||||||
|
self.assertEqual(self.calc.divide(6, 3), 2)
|
||||||
|
self.assertEqual(self.calc.divide(5, 2), 2.5)
|
||||||
|
with self.assertRaises(ValueError):
|
||||||
|
self.calc.divide(1, 0)
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
unittest.main()
|
||||||
Reference in New Issue
Block a user