public void CountAliveNeighbors_FourCellsGrid_Return3() { var grid = new CellularGrid(2, 2, null); grid.Cells[0, 1].Revive(); grid.Cells[1, 1].Revive(); grid.Cells[1, 0].Revive(); var count = grid.CountAliveNeighbors(0, 0); Assert.AreEqual(3, count); }
public bool Condition(Cell cell, CellularGrid grid) { var neighborsAlive = grid.CountAliveNeighbors(cell.Row, cell.Column); return(cell.State == CellState.Alive && (neighborsAlive < 2 || neighborsAlive > 3)); }