diff --git a/counter.py b/counter.py index 61fb094fd36601ec8b89ecb0ed27d4ecdaaa3ddc..73ac0959c513243642e6cde168bd0f6fd59e8b9a 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()