public void ShouldReviveSingleLiveCellWithThreeNeighbours() { var initialGeneration = new[, ] { { "x", "o", "o" }, { "o", "x", "o" }, { "x", "o", "o" } }; _gameSetupHandler = new StringArrayGameSetupHandler(initialGeneration); var grid = _gameSetupHandler.CreateInitialGrid(); var result = _generationUpdater.CreateNewGeneration(grid); Assert.AreEqual(CellStatus.Alive, result.CellGrid[1, 0].CellStatus); }
public void ShouldKillLiveCellWithFourNeighbours() { var initialGeneration = new[, ] { { "o", "x", "o" }, { "o", "x", "x" }, { "x", "x", "x" } }; _gameSetupHandler = new StringArrayGameSetupHandler(initialGeneration); var grid = _gameSetupHandler.CreateInitialGrid(); var result = _generationUpdater.CreateNewGeneration(grid); Assert.AreEqual(CellStatus.Dead, result.CellGrid[0, 1].CellStatus); }
public Grid IterateGame(Grid grid) { var newGeneration = _generationUpdater.CreateNewGeneration(grid); return(newGeneration); }