Skip to content
Snippets Groups Projects
Commit e1a12298 authored by Muhamed's avatar Muhamed
Browse files

ich vs Daniel

parent 16d5a475
No related branches found
No related tags found
No related merge requests found
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
import unittest import unittest
import re import re
from abc import ABC, abstractmethod from abc import ABC, abstractmethod
from other.Daniel.stringCalculator import StringCalculator as Dani #from other.Daniel.stringCalculator import StringCalculator as Dani
class CalculatorInterface(ABC): class CalculatorInterface(ABC):
@abstractmethod @abstractmethod
...@@ -61,8 +61,83 @@ class StringCalculator(CalculatorInterface): ...@@ -61,8 +61,83 @@ class StringCalculator(CalculatorInterface):
def get_called_count(self): def get_called_count(self):
return self.called_count return self.called_count
class TestStringCalculator(unittest.TestCase):
def setUp(self):
self.c = StringCalculator()
def test_empty(self):
res = self.c.add("")
self.assertEqual(res, 0)
def test_oneNumber(self):
res = self.c.add("1")
self.assertEqual(res, 1)
class TestStingCalculator(unittest.TestCase): def test_addingTwoNumbers(self):
res = self.c.add("1,2")
self.assertEqual(res, 3)
def test_addingTwoNumbersWithZero(self):
res = self.c.add("0,5")
self.assertEqual(res, 5)
def test_handleFloat(self):
res = self.c.add("3.5")
self.assertEqual(res, "only integers allowed")
def test_handleLetter(self):
res = self.c.add("1, z")
self.assertEqual(res, "only integers allowed")
def test_addWithBackslashN(self):
res = self.c.add("1\n2,3")
self.assertEqual(res, 6)
def test_negativeValues(self):
res = self.c.add("-3")
self.assertEqual(res, "negatives not allowed")
def test_delimiter(self):
res = self.c.add("//;\n1;2")
self.assertEqual(res, 3)
def test_thousandone(self):
res = self.c.add("2, 1001")
self.assertEqual(res, 2)
def test_multidelimiter(self):
res = self.c.add("//[***]\n1***2***3")
self.assertEqual(res, 6)
def test_multi_negative(self):
res = self.c.add("-3, -4")
self.assertEqual(res, "negatives not allowed " + str([-3, -4]))
def test_space_between_numbers(self):
res = self.c.add(" 4 , 5")
self.assertEqual(res, 9)
def test_multiple_num_with_thousandone(self):
res = self.c.add(" 2, 1001, 5")
self.assertEqual(res, 7)
def test_empty_text(self):
res = self.c.add("//;\n")
self.assertEqual(res, 0)
def test_one_number_with_empty_string(self):
res = self.c.add("1,")
self.assertEqual(res, 1)
def test_negative_with_positive(self):
res = self.c.add("-2, 5")
self.assertEqual(res, "negatives not allowed")
def test_mixture(self):
res = self.c.add("//;\n-1;2;1001;-3")
self.assertEqual(res, "negatives not allowed " + str([-1, -3]))
'''class TestStingCalculator(unittest.TestCase):
def setUp(self): def setUp(self):
self.calculator = Dani() self.calculator = Dani()
def test_empty_string(self): def test_empty_string(self):
...@@ -116,7 +191,7 @@ class TestStingCalculator(unittest.TestCase): ...@@ -116,7 +191,7 @@ class TestStingCalculator(unittest.TestCase):
def test_custom_del(self): def test_custom_del(self):
self.assertEqual(self.calculator.add("//[+++]\n1+++2+++3"),6) self.assertEqual(self.calculator.add("//[+++]\n1+++2+++3"),6)
def test_custom_del2(self): def test_custom_del2(self):
self.assertEqual(self.calculator.add("//[aa]\n1aa2aa3"),6) self.assertEqual(self.calculator.add("//[aa]\n1aa2aa3"),6)'''
......
| Name | Interface break | Failed Testcases | | Name | Interface break | Failed Testcases |
|--------|-----------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |---------|-----------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Alma | 2 | test_add_numbers_greater_than_1000_and_minus (Interface Break: Erwartete Fehlermeldung für negative Zahl in Kombination mit Zahl > 1000 war anders: "invalid literal for int() with base 10: '-3,4'" vs. erwartet 'negatives not allowed: -3'), test_multiple_negative_numbers_exception (Geringfügige Abweichung in der Fehlermeldung: 'Negatives not allowed: -1, -2' vs. erwartet 'negatives not allowed: -1,-2'), test_negative_number_exception (Geringfügige Abweichung in der Fehlermeldung: 'Negatives not allowed: -1' vs. erwartet 'negatives not allowed: -1'), test_add_numbers_with_custom_delimiter (Interface Break: ValueError: invalid literal for int() mit Eingabe '//;\n1,2,3'), test_custom_del (Interface Break: ValueError: invalid literal for int() mit Eingabe '//[+++]\n1+++2+++3'), test_custom_del2 (Interface Break: ValueError: invalid literal for int() mit Eingabe '//[aa]\n1aa2aa3'), test_custom_delimiter (Interface Break: ValueError: invalid literal for int() mit Eingabe '//[***]\n1***2***3') | | Alma | 2 | test_add_numbers_greater_than_1000_and_minus (Interface Break: Erwartete Fehlermeldung für negative Zahl in Kombination mit Zahl > 1000 war anders: "invalid literal for int() with base 10: '-3,4'" vs. erwartet 'negatives not allowed: -3'), test_multiple_negative_numbers_exception (Geringfügige Abweichung in der Fehlermeldung: 'Negatives not allowed: -1, -2' vs. erwartet 'negatives not allowed: -1,-2'), test_negative_number_exception (Geringfügige Abweichung in der Fehlermeldung: 'Negatives not allowed: -1' vs. erwartet 'negatives not allowed: -1'), test_add_numbers_with_custom_delimiter (Interface Break: ValueError: invalid literal for int() mit Eingabe '//;\n1,2,3'), test_custom_del (Interface Break: ValueError: invalid literal for int() mit Eingabe '//[+++]\n1+++2+++3'), test_custom_del2 (Interface Break: ValueError: invalid literal for int() mit Eingabe '//[aa]\n1aa2aa3'), test_custom_delimiter (Interface Break: ValueError: invalid literal for int() mit Eingabe '//[***]\n1***2***3') |
| Daniel | yes | test_add_numbers_greater_1000_and_minus (Interface Break: ValueError wurde nicht ausgelöst, obwohl eine negative Zahl vorhanden war), test_add_numbers_with_custom_delimiter (Interface Break: ValueError wurde nicht ausgelöst, obwohl eine negative Zahl im benutzerdefinierten Trennzeichen-Szenario vorhanden war), test_multiple_negative_numbers_exception (Interface Break: ValueError wurde nicht ausgelöst, obwohl mehrere negative Zahlen vorhanden waren), test_negative_number_exception (Interface Break: ValueError wurde nicht ausgelöst, obwohl eine negative Zahl vorhanden war) | | Daniel | yes | test_add_numbers_greater_1000_and_minus (Interface Break: ValueError wurde nicht ausgelöst, obwohl eine negative Zahl vorhanden war), test_add_numbers_with_custom_delimiter (Interface Break: ValueError wurde nicht ausgelöst, obwohl eine negative Zahl im benutzerdefinierten Trennzeichen-Szenario vorhanden war), test_multiple_negative_numbers_exception (Interface Break: ValueError wurde nicht ausgelöst, obwohl mehrere negative Zahlen vorhanden waren), test_negative_number_exception (Interface Break: ValueError wurde nicht ausgelöst, obwohl eine negative Zahl vorhanden war) |
\ No newline at end of file | Hatice | 2 | test_add_numbers_greater_than_1000_and_minus (Interface Break: Erwartete Fehlermeldung für negative Zahl in Kombination mit Zahl > 1000 war anders: "invalid literal for int() with base 10: '-3,4'" vs. erwartet 'negatives not allowed: -3'), test_multiple_negative_numbers_exception (Geringfügige Abweichung in der Fehlermeldung: 'Negatives not allowed: -1, -2' vs. erwartet 'negatives not allowed: -1,-2'), test_negative_number_exception (Geringfügige Abweichung in der Fehlermeldung: 'Negatives not allowed: -1' vs. erwartet 'negatives not allowed: -1'), test_add_numbers_with_custom_delimiter (Interface Break: ValueError: invalid literal for int() mit Eingabe '//;\n1,2,3'), test_custom_del (Interface Break: ValueError: invalid literal for int() mit Eingabe '//[+++]\n1+++2+++3'), test_custom_del2 (Interface Break: ValueError: invalid literal for int() mit Eingabe '//[aa]\n1aa2aa3'), test_custom_delimiter (Interface Break: ValueError: invalid literal for int() mit Eingabe '//[***]\n1***2***3') |
| Marvin | yes | test_add_numbers_greater_1000_and_minus (Interface Break: Fehlermeldung für negative Zahl war anders: 'Negative numbers are not allowed: -3' vs. erwartet 'negatives not allowed: -3'), test_add_numbers_with_custom_delimiter (Interface Break: Fehlermeldung für negative Zahl war anders: 'Negative numbers are not allowed: -3' vs. erwartet 'negatives not allowed: -3'), test_multiple_negative_numbers_exception (Interface Break: Fehlermeldung für negative Zahl war anders: 'Negative numbers are not allowed: -1, -2' vs. erwartet 'negatives not allowed: -1,-2'), test_negative_number_exception (Interface Break: Fehlermeldung für negative Zahl war anders: 'Negative numbers are not allowed: -1' vs. erwartet 'negatives not allowed: -1') |
| Wasili | no | none
| Lasse | yes | test_add_numbers_greater_1000_and_minus (Interface Break: Fehlermeldung für negative Zahl war anders: 'Negative nicht erlaubt: [-3]' vs. erwartet 'negatives not allowed: -3'), test_add_numbers_with_custom_delimiter (Interface Break: Fehlermeldung für negative Zahl war anders: 'Negative nicht erlaubt: [-3]' vs. erwartet 'negatives not allowed: -3'), test_multiple_negative_numbers_exception (Interface Break: Fehlermeldung für negative Zahl war anders: 'Negative nicht erlaubt: [-1, -2]' vs. erwartet 'negatives not allowed: -1,-2'), test_negative_number_exception (Interface Break: Fehlermeldung für negative Zahl war anders: 'Negative nicht erlaubt: [-1]' vs. erwartet 'negatives not allowed: -1') |
### alma tests muhamed calculator
* **Anzahl der ausgeführten Tests:** 15
* **Fehler (Errors):** 2
* **test_long_delimiter:** Dieser Test schlägt fehl, weil deine Implementierung Schwierigkeiten hat, Zahlen zu addieren, die durch ein benutzerdefiniertes Trennzeichen getrennt sind, das länger als ein einzelnes Zeichen ist (z.B. "***"). Es kommt zu einem `ValueError`, da der Teil des Strings, der das Trennzeichen enthält, nicht korrekt in eine Zahl umgewandelt werden kann.
* **test_long_delimiter_with_multiple_numbers:** Dieser Test schlägt ebenfalls fehl aus dem gleichen Grund wie oben, nur dass hier mehrere Zahlen durch ein längeres benutzerdefiniertes Trennzeichen (z.B. "---") getrennt sind.
### lasse tests muhamed calculator
* **Anzahl der ausgeführten Tests:** 11
* **Fehlgeschlagene Tests (Failures):** 2
* **test_add_multiple_negative_numbers:** Dieser Test ist fehlgeschlagen, weil deine `add`-Methode bei der Eingabe von "-10\n-20,-30" zwar eine `ValueError`-Ausnahme auslöst (was korrekt ist), die erwartete Fehlermeldung lautete jedoch "Negative nicht erlaubt: [-10, -20, -30]", während deine Implementierung die Meldung "negatives not allowed: -10,-20,-30" zurückgegeben hat.
* **test_add_single_negative_number:** Dieser Test ist ebenfalls fehlgeschlagen, weil deine `add`-Methode bei der Eingabe von "1,-2,3" zwar eine `ValueError`-Ausnahme auslöst, die erwartete Fehlermeldung lautete jedoch "Negative nicht erlaubt: [-2]", während deine Implementierung die Meldung "negatives not allowed: -2" zurückgegeben hat.
### wasili tests muhamed calculator
* **Ergebnis:** OK (Alle 11 Tests bestanden)
### marvin tests muhamed calculator
* **Anzahl der ausgeführten Tests:** 14
* **Fehlgeschlagene Tests (Failures):** 2
* **test_add_negative_numbers:** Dieser Test ist fehlgeschlagen, weil deine `add`-Methode bei der Eingabe von Zahlen mit negativen Werten zwar eine `ValueError`-Ausnahme auslöst (was korrekt ist), die erwartete Fehlermeldung lautete jedoch "Negative numbers are not allowed: -1, -3", während deine Implementierung die Meldung "negatives not allowed: -1,-3" zurückgegeben hat.
* **test_custom_long_delimiter_with_negative_numbers:** Dieser Test ist ebenfalls fehlgeschlagen, weil deine `add`-Methode bei der Eingabe von Zahlen mit negativen Werten und einem benutzerdefinierten, längeren Trennzeichen zwar eine `ValueError`-Ausnahme auslöst, die erwartete Fehlermeldung lautete jedoch "Negative numbers are not allowed: -2, -4", während deine Implementierung die Meldung "negatives not allowed: -2,-4" zurückgegeben hat.
### hatice tests muhamed calculator
* **Anzahl der ausgeführten Tests:** 15
* **Fehlgeschlagene Tests (Failures):** 2
* **test_multiple_negative_numbers:** Dieser Test ist fehlgeschlagen, weil deine `add`-Methode bei der Eingabe von "-2, -3" zwar eine `ValueError`-Ausnahme auslöst (was korrekt ist), die erwartete Fehlermeldung lautete jedoch "Negatives not allowed: -2, -3", während deine Implementierung die Meldung "negatives not allowed: -2,-3" zurückgegeben hat.
* **test_negative_number:** Dieser Test ist ebenfalls fehlgeschlagen, weil deine `add`-Methode bei der Eingabe von "-2" zwar eine `ValueError`-Ausnahme auslöst, die erwartete Fehlermeldung lautete jedoch "Negatives not allowed: -2", während deine Implementierung die Meldung "negatives not allowed: -2" zurückgegeben hat.
### dani tests muhamed calculator
* **Anzahl der ausgeführten Tests:** 18
* **Fehler (Errors):** 8
* **test_empty_text:** Fehlgeschlagen aufgrund eines `ValueError`, da versucht wurde, einen leeren String in eine Ganzzahl umzuwandeln. Dies trat bei der Eingabe von "//;\n" auf.
* **test_handleFloat:** Fehlgeschlagen aufgrund eines `ValueError`, da versucht wurde, die Gleitkommazahl "3.5" in eine Ganzzahl umzuwandeln.
* **test_handleLetter:** Fehlgeschlagen aufgrund eines `ValueError`, da versucht wurde, den String " z" (mit einem Buchstaben) in eine Ganzzahl umzuwandeln. Dies trat bei der Eingabe von "1, z" auf.
* **test_mixture:** Fehlgeschlagen aufgrund eines `ValueError: negatives not allowed: -1,-3`. Dani's Test erwartet möglicherweise eine andere Behandlung von negativen Zahlen in Kombination mit anderen Regeln.
* **test_multi_negative:** Fehlgeschlagen aufgrund eines `ValueError: negatives not allowed: -3,-4`. Dani's Test erwartet möglicherweise eine andere Behandlung von mehreren negativen Zahlen.
* **test_negativeValues:** Fehlgeschlagen aufgrund eines `ValueError: negatives not allowed: -3`. Dani's Test erwartet möglicherweise eine andere Behandlung von einzelnen negativen Zahlen.
* **test_negative_with_positive:** Fehlgeschlagen aufgrund eines `ValueError: negatives not allowed: -2`. Dani's Test erwartet möglicherweise eine andere Behandlung von negativen Zahlen in Kombination mit positiven Zahlen.
* **test_one_number_with_empty_string:** Fehlgeschlagen aufgrund eines `ValueError`, da versucht wurde, einen leeren String in eine Ganzzahl umzuwandeln. Dies trat bei der Eingabe von "1," auf.
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