diff --git a/Unittest.py b/Unittest.py
index 3b644e55a980aa7ceefc92b9ba20866486d504c1..2d8eedebbce480d7e1a3efaaeaafc88f9e2abd0b 100644
--- a/Unittest.py
+++ b/Unittest.py
@@ -318,6 +318,25 @@ class TestRoverMovment(unittest.TestCase):
self.assertEqual(observed_grid, [])
print("Test observe_returns_empty_list erfolgreich!")
+ def test_mars_singleton(self):
+ """
+ Test ob Mars wirklich als Singleton implementiert ist.
+ Überprüft ob mehrere Instanziierungen die gleiche Instanz zurückgeben.
+ """
+ plateau1 = Plateau(5, 5)
+ plateau2 = Plateau(3, 3)
+
+ # Erstelle zwei Mars-Instanzen
+ mars1 = Mars(plateau1)
+ mars2 = Mars(plateau2)
+
+ # Überprüfe ob es sich um die gleiche Instanz handelt
+ self.assertIs(mars1, mars2, "Mars-Instanzen sollten identisch sein (Singleton)")
+
+ # Überprüfe ob das Plateau der ersten Instanzierung beibehalten wurde
+ self.assertEqual(mars1.plateau.width, 5)
+ self.assertEqual(mars2.plateau.width, 5)
+
if __name__ == '__main__':
unittest.main()