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

Test successful

parent 2e9f4761
No related branches found
No related tags found
No related merge requests found
Pipeline #20044 passed
......@@ -10,8 +10,7 @@
# Bei der Eingabe von Zahlen mit einem benutzerdefinierten Trennzeichen soll die Summe der Zahlen berechnet werden (z.B. //;\n1;2 = 3)
# Bei Eingabe von Zahlen >1000 sollen diese ignoriert werden (z.B. 2 + 1001 = 2)
# Bei der Eingabe von Zahlen mit einem benutzerdefinierten Trennzeichen soll die Summe der Zahlen berechnet werden. Trennzeichen können unbegrenzt lang sein (z.B. “//[***]\n1***2***3” = 6).
# Bei der eingabe verschiedener Trennzeichen sollen trotzdem die Zahlen erkannt und zusammen addiert werden (--;\n1;2 = 3)
# Bei der Eingabe mehrerer negativen Zahlen (z.B. -3, -4) sollen die Zahlen in der exception ausgegeben werden
import unittest
from abc import ABC, abstractmethod
......@@ -53,7 +52,8 @@ class StringCalculator(IStringCalculator):
list = numbers.split(",")
result = 0
result = 0
negative_numbers = []
for num in list:
num = num.strip()
if num == "":
......@@ -71,12 +71,17 @@ class StringCalculator(IStringCalculator):
'''Konvertirung von Strings zu Integer'''
if number < 0:
return "negatives not allowed"
negative_numbers.append(number)
if number > 1000:
continue
result += number
if len(negative_numbers) > 1:
return "negatives not allowed " + str(negative_numbers)
elif negative_numbers:
return "negatives not allowed"
return result
......@@ -129,5 +134,9 @@ class TestStringCalculator(unittest.TestCase):
res = self.c.add("//[***]\n1***2***3")
self.assertEqual(res, 6)
def test_multi_negative(self):
res = self.c.add("-3, -4")
self.assertEqual(res, "negatives not allowed " + str([-3, -4]))
if __name__ == "__main__":
unittest.main()
\ No newline at end of file
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