Skip to content
Snippets Groups Projects
Commit bf16e398 authored by linopino's avatar linopino
Browse files

Kommentar mit Änderung damit Tests mit negativen Zahlen nicht failen

parent 137e6312
No related branches found
No related tags found
1 merge request!15Develop
from src.interfaces import IStringCalculator from src.interfaces import IStringCalculator
import re
class StringCalculator(IStringCalculator): class StringCalculator(IStringCalculator):
def add(self, numbers: str) -> int: def add(self, numbers: str) -> int:
...@@ -33,3 +32,10 @@ class StringCalculator(IStringCalculator): ...@@ -33,3 +32,10 @@ class StringCalculator(IStringCalculator):
numbers_list = [num for num in numbers_list if num <= 1000] numbers_list = [num for num in numbers_list if num <= 1000]
return sum(numbers_list) return sum(numbers_list)
'''
Änderung damit die Tests mit den negativen Zahlen durchlaufen:
negative_numbers = [num for num in numbers_list if num < 0]
if negative_numbers:
raise ValueError(f"negatives not allowed: {','.join(map(str, negative_numbers))}")
'''
\ No newline at end of file
...@@ -23,13 +23,12 @@ ...@@ -23,13 +23,12 @@
# Bei Eingabe von //[**]\n1**2**3 soll 6 ausgegeben werden # Bei Eingabe von //[**]\n1**2**3 soll 6 ausgegeben werden
# Bei Eingabe von //[###]\n10###20###30 soll 60 ausgegeben werden # Bei Eingabe von //[###]\n10###20###30 soll 60 ausgegeben werden
'''
Eigener Code:
import unittest import unittest
from src.interfaces import IStringCalculator from src.interfaces import IStringCalculator
from src.stringcalculator import StringCalculator from src.stringcalculator import StringCalculator
Orlandos Code: '''
import unittest import unittest
from others.Orlando.OrlandoInterfaces import IStringCalculator from others.Orlando.OrlandoInterfaces import IStringCalculator
from others.Orlando.OrlandoStringCalculator import StringCalculator from others.Orlando.OrlandoStringCalculator import StringCalculator
...@@ -48,10 +47,10 @@ from others.Alma.AlmaStringCalculator import IStringCalculator, StringCalculator ...@@ -48,10 +47,10 @@ from others.Alma.AlmaStringCalculator import IStringCalculator, StringCalculator
import unittest import unittest
from others.Marvin.MarvinStringCalculator import StringCalculator from others.Marvin.MarvinStringCalculator import StringCalculator
'''
import unittest import unittest
from others.Hatice.HaticeStringCalculator import IStringCalculator, StringCalculator from others.Hatice.HaticeStringCalculator import IStringCalculator, StringCalculator
'''
class TestStringCalculator(unittest.TestCase): class TestStringCalculator(unittest.TestCase):
def setUp(self): def setUp(self):
self.calculator: IStringCalculator = StringCalculator() # Zugriff über das Interface self.calculator: IStringCalculator = StringCalculator() # Zugriff über das Interface
...@@ -107,3 +106,12 @@ if __name__ == "__main__": ...@@ -107,3 +106,12 @@ if __name__ == "__main__":
# python -m unittest tests.testStringcalculator -v # python -m unittest tests.testStringcalculator -v
# python -m unittest discover -s tests -v # python -m unittest discover -s tests -v
'''
Keine strikte Typprüfung zur Laufzeit
In der Methode setUp() hast du die Zuweisung:
self.calculator: IStringCalculator = StringCalculator()
-Das : IStringCalculator ist nur ein Typ-Hinweis (Type Hint), aber Python überprüft das nicht zur Laufzeit.
-Python ignoriert den Typ-Hinweis und weist self.calculator einfach die Instanz von StringCalculator zu.
'''
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment