diff --git a/.DS_Store b/.DS_Store index 68586da00124b12933dffab2131c028d80d8be1e..a1007fa1bab5176a6eaa100d5bab06e9d4969a0f 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/ICounter.py b/ICounter.py new file mode 100644 index 0000000000000000000000000000000000000000..2136b3223decea861cff4a2b5269274a83f7f014 --- /dev/null +++ b/ICounter.py @@ -0,0 +1,56 @@ +from abc import ABC,abstractmethod +from calendar import c +import unittest +from weakref import ref + +#Interface +class ICounter (ABC): + @abstractmethod + def count_ED(self,s): + pass + +# Implementierung Klasse +class Counter (ICounter): + def count_ED (self,): + 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): + self.c + res=c.count_ED ("Decker") + self.assertEqual(res,3) + + def test_count_ED_empty (self): + ergebnis=self.c.count_ED("") + self.assertCountEqual(ergebnis,0) + + def test_count_ED_wo (self): + """testet einen string ohne E und D""" + ergebnis=self.c.count_ED("Hallo") + self.assertEqual(ergebnis, 0) + + def test_count_ED_insensitive(self): + """TEstes verschiedene Groß und Kleinschreibungen""" + ergebnis=self.c.count_ED("Der Esel") + self.assertEqual(ergebnis, 4) + + def test_count_ED_single_letter(self): + """Testet Eingaben nur mit einem Buchstaben""" + ergebnis=self.c.count_ED("D") + self.assertEqual(ergebnis,1) + ergebnis=self.c.count_ED("E") + self.assertEqual(ergebnis,1) + ergebnis=self.c.count_ED("d") + self.assertEqual(ergebnis,1) + ergebnis=self.c.count_ED("e") + self.assertEqual(ergebnis,1) + + +if __name__=="__main__": + unittest.main() + + diff --git a/Testliste Counter Str b/Testliste Counter Str new file mode 100644 index 0000000000000000000000000000000000000000..784ee1d4215201241e7fdf5de8548e7f4298d0e4 --- /dev/null +++ b/Testliste Counter Str @@ -0,0 +1,5 @@ +Testliste Counter Str +Bei Eingabe des Strings Decker liefert die Funktion 3 +Bei Eingabe eines leeren Strings soll 0 ausgegeben werden +Bei Eingabe des Srings "Hallo" ohne e und D soll 0 ausgegeben werden +Bei Eingabe von dem String "Der Esel" soll großgroß-kleinschreibung (caseinsensitive ) gezählt werden \ No newline at end of file