From b1ffd970ab238923fdabc6326b342eb068f0c3e4 Mon Sep 17 00:00:00 2001 From: Susanne Date: Sun, 16 Feb 2025 16:08:03 +0100 Subject: [PATCH] Test destroyCrowdedCell() --- out/test/GameOfLifeAssignment/LifeTest.class | Bin 1038 -> 1144 bytes test/LifeTest.java | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/out/test/GameOfLifeAssignment/LifeTest.class b/out/test/GameOfLifeAssignment/LifeTest.class index 82df7e4b8baac02f2d2ce25d60c59f7e0fb3a8e7..8f0a18ba173605cb75e2335ccb4f4e937817e49a 100644 GIT binary patch delta 139 zcmXAhF%E)I5JVq;!F-5Hqm6~35u&IhqGDnKhw(l(#CuqI3J+w5W6Wk|vu`GQ_aFa! zTl~N@(DZ|wPb_?qlotIw>{DCba$==5o+DFE%s8{4A>%^Mm6BGZW2IL1|0G`M@>HzZ U5U4Yjwm5d;Bayv!z(MY)ziXBbdH?_b delta 25 gcmeyt(Z{jj4D;l6W=TfF$qShk*^L+&7?>E00d0T=L;wH) diff --git a/test/LifeTest.java b/test/LifeTest.java index 4b1340c..7393eef 100644 --- a/test/LifeTest.java +++ b/test/LifeTest.java @@ -46,6 +46,24 @@ public class LifeTest { @Test public void destroyCrowdedCell() { // Zellen mit mehr als drei Nachbarn sterben (Überbevölkerung). + + // Arrange: lebende Zelle (1,1) hat mehr als drei Nachbarn und sollte sterben. + Life l = new Life(); + l.setAlive(1, 1); + l.setAlive(0, 0); + l.setAlive(0, 1); + l.setAlive(0, 2); + l.setAlive(1, 0); + + // Act: Berechnung der Folgegeneration + ILife nextGen = l.nextGeneration(); + + // Assert: Zelle (1,1) sollte tot sein + assertFalse(nextGen.isAlive(1, 1)); + + // Test passed wieder sofort, obwohl ich noch keine weitere Überprüfung eingebaut habe, aus zuvor beschriebenem + // Grund, dass Zellen in der nextGen grundsätzlich mit false initialisiert werden, solange man sie nicht + // explizit mit setAlive() auf true setzt. }