From ad6752d06fd6a9d78a0174a15b5b45ef084628c2 Mon Sep 17 00:00:00 2001
From: Marvin Serchimo <marvin.serchimo@student.reutlingen-university.de>
Date: Fri, 4 Apr 2025 13:38:43 +0200
Subject: [PATCH] featureWasiliosGotsis

---
 other/GotsisWasilios/TDD_Converter.py         |  51 ++++++++++++++++++
 .../__pycache__/TDD_Converter.cpython-313.pyc | Bin 0 -> 3441 bytes
 report.md                                     |   7 +--
 test_converter                                |   4 +-
 4 files changed, 57 insertions(+), 5 deletions(-)
 create mode 100644 other/GotsisWasilios/TDD_Converter.py
 create mode 100644 other/GotsisWasilios/__pycache__/TDD_Converter.cpython-313.pyc

diff --git a/other/GotsisWasilios/TDD_Converter.py b/other/GotsisWasilios/TDD_Converter.py
new file mode 100644
index 0000000..36a0518
--- /dev/null
+++ b/other/GotsisWasilios/TDD_Converter.py
@@ -0,0 +1,51 @@
+import unittest
+from abc import ABC, abstractmethod
+
+#Interface für Counter
+class IRomanNumber(ABC):
+    @abstractmethod
+    def convert_int_to_str(self, n: int) -> str:
+        pass
+
+# Implementierung Converter Klasse
+class RomanNumber(IRomanNumber):
+    def convert_int_to_str(self, n: int) -> str:
+
+        #Eingabe anders als int
+        if not isinstance(n, int):
+            return "Fehler: Bitte Zahl eingeben"
+        
+        #Int Eingabe kleiner gleich 0
+        if n <= 0:
+            return "Integer muss größer als 0 sein"
+
+        # Bekannte Werte umwandeln
+        roman_convert = {1: "I", 21: "XXI", 1000: "M"}
+        return roman_convert.get(n)
+        
+# Testklasse (TestConverter)
+class TestRomanNumber (unittest.TestCase):
+    def setUp(self):
+        self.r = RomanNumber()
+
+    def test_convert_1(self):
+        self.assertEqual(self.r.convert_int_to_str(1), "I")
+
+    def test_convert_21(self):
+        self.assertEqual(self.r.convert_int_to_str(21), "XXI")
+
+    def test_convert_empty(self):
+        self.assertEqual(self.r.convert_int_to_str(None), "Fehler: Bitte Zahl eingeben")
+
+    def test_convert_string(self):
+        self.assertEqual(self.r.convert_int_to_str("Hello"), "Fehler: Bitte Zahl eingeben")
+
+    def test_convert_downzero(self):
+        self.assertEqual(self.r.convert_int_to_str(-5), "Integer muss größer als 0 sein")
+
+    def test_convert_downzero(self):
+        self.assertEqual(self.r.convert_int_to_str(1000), "M")
+
+if __name__ == "__main__":
+    unittest.main()
+
diff --git a/other/GotsisWasilios/__pycache__/TDD_Converter.cpython-313.pyc b/other/GotsisWasilios/__pycache__/TDD_Converter.cpython-313.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..b9c725cff5466223ae8965823d319048fda5f532
GIT binary patch
literal 3441
zcmc&$-D^}w6rcOGxk+~2Y7$N2M{YhWZfmn9H7e06HMSZhTbk=)stcE!&2@8S_pY6}
zYpYM8P%D%|pafbdD19<-J{4b!|3E?r3DZIgeQ7AAiyJAl5B8kdkM3@h?UOhUznMAr
z%$zyrckY=fghDL@+Hc?gk@{UD<QJTj8_Y#3d<)$IF^MT%A{2Z1l5|m~@<oLz2I(Yy
z#8kS8sV3wRrMQHuLaKo@kWed9O-P$Sswc=~u&7&&70srEZZ?lj5n}Hm1atxGTOS!I
zi42mGQc|R41Lv`b%$2v#j`1D#H1nyQ^fQh>o1IBkudldv1f&aKfJ!EzvMEs|p_+0+
zGnGW(sA{U+<c3-{Lz_&E>Zw4ai3i6gvl-iq<ucO_-N4<r<naJ?{2cX?a+N6w#u$`>
z3a~&@WKoJO5;&vEob+|7gOs7ZVet2(apq7K&Divo>qXCHlevuJ`7C<g^)KY6qZCbg
z!X%4k{aJ@b&u4w+vMV-o({7eUFP}SSjb*)C4)q;6c=I;jl`PII*YhnuYe7JGPxaXc
z|EmzdBcV%k<YzrtfB~UMRV>oXb<6VXjAL26#j-NlnOqvjLCg9uXQxYF!j^U2rOZ#e
zp5tXLi=yXTffH~A?9(t#J1jVh?Yl|K_I>J3=X{5OD%znt5q2QpQ3T*|SRcS$vaYq|
zWl0M?7|Rpr9*z~TD<~w;UO;(qIj*c>91nr5@G3wp<G{BHd~0RCX#jX`5<It7)7%Ox
z1!1%qMl~$s?t<kTV)tvvx@d9fS|uAsN~1%iZ!@5klH!snkB&m3<4iGCQ!@i*)1czX
zae1<wr==Cx#ifzb?gJ#E$Nt*;t}~l<=%{hl^?k><YR{$($MsUqwBu2<_{;zp_k1Vi
zP$QFL%t+BE-#xhxGds<UBL)L?E{$_#YHFNI6A@(t4QzBE{0d%06yD-8*8{@5q(gUu
zoGU5Ek0>+*V-XS_64_~$(urX(48thWC>TFb70NBL4w+|X0OrVMfV|TERqr?ETDW&P
z+`Ha(Bp)Eb(7g2dvGukQ81FY8#2@u9cOJVJS`Y7A3meN}<H63AaQ~9tU!=d7uR6uD
zLE8}85zr-Ze!2%ocrMzBP?vYzC__NX8LqlZ@^Vlcz@&rj;n<(p6>XtjO{$gXA%)ZM
zr9RcV358?>)Udc<ssT2c0YKe^%1E0{U0^e9Nwq{;dHAx!{HoY(>_vNJ8!#qFvPix@
z7%Y%~ldoL3;v`+sPZ5evMP%V0m*}D-SY)VC<cn*}@#8mnN1f$CA>Idi47ZpgKknT3
z<^Fr>7XcB7nloYIiZfk>!2*es$;t^pP--A8{Ssvf_FE;rSxI_RF8@YQ^&vH56uqWB
z0E-H5wHcI9{~atx^bPzVI39#iwSzmL+W6&MwTAeCdQWS=<L0avV2-To!8N^eS?~O+
z{r>K+cdvB~FLw<;8d~WZdBj%rlP@(8{phcOFpN;|bhyT;;UV7B(CgtL3~WQUhgZ6e
zJ=RwB(=Xm_QZ9Os38kD7{L3-Ae_M}t)p+b=Zu+-*Uqh#b&O!7Wo!^e`qbpq}mPW6v
z>QgV?@$D0zYZsh!I@`eiwi^H8?uBcC_cshcQ3-FTh7mZv(sgp_t*fj0wU-%zjlZ8i
ze@+i<%YR3W|1;T-ygLrf@`DW{P*!{W|6+jIzjWed$AAu?`&gW|{Ojpi{4xe0%0Z(d
zhFSf%zx+2xBvC(Ok=89Q(I{?v6yZ3+C<0!0MSEM_sjuNz1iZf(X4qZw6dr6nPXm&6
z3gHaG2NGhUgwIecQcNtx_h-g-J<E!;a6RYYi-*Cp(w<IIyluo&v-oPnTbb*~^q37-
zg0POS0j}Z(br(L@PZb}tr|Ct|!K;c*0OS=(l71lJpGf~^K#@Z8Z*CIkHiIE)VE*tX
vfo{`im(I+8yte1i@}5JR1Sa{zL=E1%v!ZmZtHIAEKAHIRy}UxyZsEp1-*%)V

literal 0
HcmV?d00001

diff --git a/report.md b/report.md
index a5ec629..1b4c82c 100644
--- a/report.md
+++ b/report.md
@@ -1,5 +1,6 @@
 ## Eigene Tests gegen andere Implementierungen
 
-| Name        | Interface break | Failed Testcases |
-|-------------|------------------|------------------|
-| BerishaAlma | no               | test_1, test_4, test_21, test_1000, test_0, test_float, test_negative, test_multiple_values |
+| Name            | Interface break | Failed Testcases                                                                 |
+|-----------------|------------------|----------------------------------------------------------------------------------|
+| BerishaAlma     | no               | test_1, test_4, test_21, test_1000, test_0, test_float, test_negative, test_multiple_values |
+| GotsisWasilios  | yes              | all                                                                              |
diff --git a/test_converter b/test_converter
index 0b8f32e..8995adb 100644
--- a/test_converter
+++ b/test_converter
@@ -10,7 +10,7 @@
 
 import unittest
 from abc import ABC, abstractmethod
-from other.BerishaAlma.test2converter import RomanNumber as Alma 
+from other.GotsisWasilios.TDD_Converter import TestRomanNumber as Wasili
 
 # Interface (abstrakte Basisklasse)
 class IConverter(ABC):
@@ -58,7 +58,7 @@ class RomanConverter(IConverter):
 # Testklasse mit 8 funktionierenden Tests
 class TestRomanConverter(unittest.TestCase):
     def setUp(self):
-        self.converter = Alma()
+        self.converter = Wasili()
 
     # Bei Eingabe der Zahl 1 soll "I" ausgegeben werden
     def test_1(self):
-- 
GitLab