Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • Muhamed.Alici/modern_dev_ma
1 result
Show changes
Commits on Source (2)
......@@ -3,7 +3,8 @@
import unittest
from abc import ABC, abstractmethod
#from muhamed_directory.other.alma.test2converter import RomanNumber as Alma
from muhamed_directory.other.daniel.converter import Converter as Dani
#from muhamed_directory.other.daniel.converter import Converter as Dani
#from muhamed_directory.other.hatice.converter import RomanNumber as Hati
class IStringCalculator(ABC):
@abstractmethod
......@@ -29,7 +30,7 @@ class Converter(IStringCalculator):
'''class TestRomanConverter(unittest.TestCase):
def setUp(self):
self.calculator = Dani
self.calculator = Hati
def test_1(self):
self.assertEqual(self.calculator.convert(1), "I")
......@@ -51,68 +52,27 @@ class Converter(IStringCalculator):
def test_1999(self):
self.assertEqual(self.calculator.convert(1999), "MCMXCIX")'''
class TestConverter(unittest.TestCase):
class TestRomanConverter(unittest.TestCase):
def setUp(self):
self.c = Converter
def test_convertOne(self):
res = self.c.convert(1)
self.assertEqual(res, 'I')
def test_convertTwo(self):
res = self.c.convert(2)
self.assertEqual(res, 'II')
def test_convertThree(self):
res = self.c.convert(3)
self.assertEqual(res, 'III')
def test_convertFour(self):
res = self.c.convert(4)
self.assertEqual(res, 'IV')
def test_convertFive(self):
res = self.c.convert(5)
self.assertEqual(res, 'V')
def test_convertNine(self):
res = self.c.convert(9)
self.assertEqual(res, 'IX')
def test_convertTen(self):
res = self.c.convert(10)
self.assertEqual(res, 'X')
def test_convertTwentyTwo(self):
res = self.c.convert(21)
self.assertEqual(res, 'XXI')
def test_convertFifty(self):
res = self.c.convert(50)
self.assertEqual(res, 'L')
def test_convertHundred(self):
res = self.c.convert(100)
self.assertEqual(res, 'C')
def test_convertFiveHundred(self):
res = self.c.convert(500)
self.assertEqual(res, 'D')
def test_convertThousand(self):
res = self.c.convert(1000)
self.assertEqual(res, 'M')
self.converter = Converter
def test_single_value(self):
self.assertEqual(self.converter.convert(1), "I")
self.assertEqual(self.converter.convert(2), "II")
self.assertEqual(self.converter.convert(3), "III")
self.assertEqual(self.converter.convert(4), "IV")
self.assertEqual(self.converter.convert(5), "V")
self.assertEqual(self.converter.convert(9), "IX")
self.assertEqual(self.converter.convert(21), "XXI")
self.assertEqual(self.converter.convert(50), "L")
self.assertEqual(self.converter.convert(100), "C")
self.assertEqual(self.converter.convert(500), "D")
self.assertEqual(self.converter.convert(1000), "M")
def test_convertFourDigit(self):
res = self.c.convert(1111)
self.assertEqual(res, 'MCXI')
def test_convertNintyNine(self):
res = self.c.convert(99)
self.assertEqual(res, 'XCIX')
def test_inivalid_numbers(self):
self.assertEqual(self.converter.convert(6), "")
self.assertEqual(self.converter.convert(99), "")
self.assertEqual(self.converter.convert(-1), "")
if __name__ == "__main__":
unittest.main()
\ No newline at end of file
File added
......@@ -3,4 +3,6 @@
| Alma | yes | all | `TypeError`: Methode `convert()` fehlt der erwartete Parameter `n`. Interface nicht eingehalten. |
| ich vs Alma Tests | no | none | Einziger definierter Test in `test2converter.py` wurde bestanden. |
| Daniel | yes | all | Die Tests rufen Converter.convert() als statische Methode auf, aber die convert-Methode aus Skript 1 ist eine Instanzmethode, die eine Objektinstanz (self) benötigt. Dieser falsche Aufruf verursacht bei jedem der 7 Tests einen TypeError, weil das erwartete self-Argument fehlt. |
| Ich vs Daniel Tests | no | none |
\ No newline at end of file
| Ich vs Daniel Tests | no | none |
| Hatice | yes | all | TypeError: RomanNumber.convert() missing 1 required positional argument: 'n' |
| ich vs Hatice Tests | no | 1 | FAIL: test_inivalid_numbers (__main__.TestRomanConverter.test_inivalid_numbers) |
\ No newline at end of file