diff --git a/out/production/GameOfLifeAssignment/Life.class b/out/production/GameOfLifeAssignment/Life.class index 24afbc3..d0084a2 100644 Binary files a/out/production/GameOfLifeAssignment/Life.class and b/out/production/GameOfLifeAssignment/Life.class differ diff --git a/out/test/GameOfLifeAssignment/LifeTest.class b/out/test/GameOfLifeAssignment/LifeTest.class index 2748436..72dfc8e 100644 Binary files a/out/test/GameOfLifeAssignment/LifeTest.class and b/out/test/GameOfLifeAssignment/LifeTest.class differ diff --git a/src/Life.java b/src/Life.java index 00df3fd..53b91c7 100644 --- a/src/Life.java +++ b/src/Life.java @@ -54,6 +54,8 @@ public class Life implements ILife { for (int x = 0; x < grid[y].length; x++) { if (countAliveNeighbours(x, y) == 3) { next.setAlive(x, y); + } else if (countAliveNeighbours(x, y) == 2) { + next.setAlive(x, y); } else if (countAliveNeighbours(x, y) < 2 || countAliveNeighbours(x, y) > 3) { next.setDead(x, y); } diff --git a/test/LifeTest.java b/test/LifeTest.java index e81bb79..537efc8 100644 --- a/test/LifeTest.java +++ b/test/LifeTest.java @@ -37,12 +37,8 @@ public class LifeTest { } - // Testfall "keepAliveCell()" aufgeteilt in zwei einzelne Tests, da es ja eigentlich üblich ist, dass je Test - // nur ein einzelnes Szenario überprüft wird @Test public void keepAliveWithTwoNeighbours() { - // failed, weil bislang nur Zellen mit genau 3 Nachbarn in nextGen auf alive gesetzt werden, - // andernfalls standardmäßig mit false, also tot, initialisiert Life l = new Life(); l.setAlive(1, 1); l.setAlive(0, 0); @@ -54,7 +50,6 @@ public class LifeTest { @Test public void keepAliveWithThreeNeighbours() { - // passed, weil Zellen mit genau 3 Nachbarn bereits in nextGen auf alive gesetzt werden Life l = new Life(); l.setAlive(1, 1); l.setAlive(0, 0);