Skip to content
Snippets Groups Projects
Commit 4de27f12 authored by Daniel Rafeh's avatar Daniel Rafeh
Browse files

Delete calculator.py

parent 64c5b16a
No related merge requests found
Pipeline #19984 passed
from abc import ABC, abstractmethod
import unittest
class ICalculator(ABC):
@abstractmethod
def add(self, a, b):
pass
@abstractmethod
def sub(self, a, b):
pass
@abstractmethod
def mul(self, a, b):
pass
@abstractmethod
def div(self, a, b):
pass
class Calculator(ICalculator):
def add(self, a, b):
return a + b
def sub(self, a, b):
return a - b
def mul(self, a, b):
return a * b
def div(self, a, b):
if b == 0:
raise ValueError("Division durch die Zahl null ist nicht erlaubt")
return a / b
class TestCalculator(unittest.TestCase):
def setUp(self):
self.calc = Calculator()
# Test add-function
def test_add(self):
erg = self.calc.add(3, 5)
self.assertEqual(erg, 8)
# Test sub-function
def test_sub(self):
erg = self.calc.sub(10, 3)
self.assertEqual(erg, 7)
# Test mul-function
def test_mul(self):
erg = self.calc.mul(4, 6)
self.assertEqual(erg, 24)
# Test div-function
def test_div(self):
erg = self.calc.div(20, 4)
self.assertEqual(erg, 5)
# Test div/0
def test_div_by_zero(self):
with self.assertRaises(ValueError):
self.calc.div(10, 0)
if __name__ == "__main__":
unittest.main()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment