From de90d7a16c69f616a786ac521c2c394b57db08ff Mon Sep 17 00:00:00 2001 From: Hatice Yildirim <Hatice.Yildirim@student.reutlingen-university.de> Date: Sun, 23 Mar 2025 19:25:55 +0100 Subject: [PATCH] Add converter.py --- counter.py | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/counter.py b/counter.py index 61fb094..73ac095 100644 --- a/counter.py +++ b/counter.py @@ -11,25 +11,43 @@ class ICounter (ABC): pass class Counter (ICounter): - #def count_ED(self,s): - #return s.count("e")+s.count("D") - pass + def count_ED(self,s): + s = s.upper() + return s.count("D")+s.count("E") + class TestCounter (unittest.TestCase): + def setUp(self): + self.c = Counter() + def test_count_ED_regular (self): - c=Counter() - res=c.count_ED ("Decker") + res=self.c.count_ED ("Decker") self.assertEqual(res,3) + def test_count_ED_empty (self): - c=Counter() - res=c.count_ED ("") + res=self.c.count_ED ("") self.assertEqual(res,0) + def test_count_ED_wo (self): '''Testet einen String ohne E und D''' - c=Counter() - res=c.count_ED ("Hallo") + res=self.c.count_ED ("Hallo") self.assertEqual(res,0) - def + + def test_count_ED_insensitive(self): + '''Testet verschiedene Groß- und Kleinschreibungen''' + res=self.c.count_ED("Der Esel") + self.assertEqual(res, 4) + + def test_count_ED_single_letter(self): + '''Testet Eingaben mit nur einem Buchstaben''' + res=self.c.count_ED("D") + self.assertEqual(res, 1) + res=self.c.count_ED("E") + self.assertEqual(res, 1) + res=self.c.count_ED("d") + self.assertEqual(res, 1) + res=self.c.count_ED("e") + self.assertEqual(res, 1) if __name__=="__main__": unittest.main() -- GitLab