public void Should_LetCellLive_When_CellHassTwoOrThreeLiveNeighbours() { // Arrange Generation initialGeneration = new Generation(universeSize: 5); initialGeneration.ToggleCellLife(0, 0); initialGeneration.ToggleCellLife(0, 1); initialGeneration.ToggleCellLife(0, 2); // Act EvolutionEngine engine = new EvolutionEngine(initialGeneration); engine.EvolveGeneration(); // Assert Assert.AreEqual(initialGeneration.GetCell(0, 1).Alive, true); }
public void Should_KillCell_When_CellHasFewerThanTwoNeighbors() { // Arrange Generation initialGeneration = new Generation(universeSize: 5); initialGeneration.ToggleCellLife(0, 0); initialGeneration.ToggleCellLife(0, 1); // Act EvolutionEngine engine = new EvolutionEngine(initialGeneration); engine.EvolveGeneration(); // Assert Assert.AreEqual(initialGeneration.GetCell(0, 0).Alive, false); Assert.AreEqual(initialGeneration.GetCell(0, 1).Alive, false); }