Skip to content
Snippets Groups Projects
Commit c3bc8a60 authored by Lasse Pikkemaat's avatar Lasse Pikkemaat
Browse files

Merge branch 'feature2' into 'develop'

Feature2

See merge request !2
parents 231b9e4f fcafdbfd
No related branches found
No related tags found
2 merge requests!7Develop into main,!2Feature2
from src.interfaces import IStringCalculator
import re
class StringCalculator(IStringCalculator):
def add(self, numbers: str) -> int:
if not numbers:
return 0
return sum(map(int, numbers.split(',')))
\ No newline at end of file
# Erlaubt Kommas und Zeilenumbrüche als Trennzeichen
tokens = re.split(r"[,\n]", numbers)
return sum(map(int, tokens))
\ No newline at end of file
......@@ -3,11 +3,12 @@
# Bei Eingabe einer 1 soll 1 ausgegeben werden
# Bei Eingabe einer 3,4 soll 7 ausgegeben werden
# Bei Eingabe einer 10,20 soll 30 ausgegeben werden
#Feature1
#Feature1 Längere Zahlenfolge
# Bei Eingabe einer 1,2,3 soll 6 ausgegeben werden
# Bei Eingabe einer 10,20,30,40 soll 100 ausgegeben werden
#Feature2
# Bei Eingabe einer
#Feature2 Neues Trennzeichen neben dem Komma
# Bei Eingabe von 1\n2,3 soll 6 ausgegeben werden
# Bei Eingabe von 10\n20\n30 soll 60 ausgegeben werden
import unittest
from src.interfaces import IStringCalculator
......@@ -30,6 +31,10 @@ class TestStringCalculator(unittest.TestCase):
self.assertEqual(self.calculator.add("1,2,3"), 6)
self.assertEqual(self.calculator.add("10,20,30,40"), 100)
def test_add_with_newline_separator(self):
self.assertEqual(self.calculator.add("1\n2,3"), 6)
self.assertEqual(self.calculator.add("10\n20\n30"), 60)
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