public bool TestIsCellIndexValid(int x, int y) { CartesianGrid grid = new CartesianGrid(10, 10); CartesianGridLogic gridLogic = new CartesianGridLogic(grid); return gridLogic.IsCellIndexValid(x, y); }
public bool TestIsNeighborAlive(int x, int y) { CartesianGridCell gridCell = new CartesianGridCell(1, 1); CartesianGrid grid = new CartesianGrid(FourNeighborsGrid); CartesianGridLogic gridLogic = new CartesianGridLogic(grid); return gridLogic.IsNeighborAlive(gridCell, x, y); }
public int TestNumberOfLiveNeighbors(int x, int y) { string[] lines = File.ReadAllLines("../../smallexploder.txt"); CartesianGrid cartesianGrid = new CartesianGrid(lines); CartesianGridLogic cartesianGridLogic = new CartesianGridLogic(cartesianGrid); return cartesianGridLogic.NumberOfLiveNeighbors(cartesianGrid.Map[x][y]); }
public void NextGeneration() { CartesianGridCell[][] emptyMap = new CartesianGrid(Width, Height).Map; CartesianGridLogic cartesianGridLogic = new CartesianGridLogic(this); for (int w = 0; w < Width; w++) { for (int h = 0; h < Height; h++) { emptyMap[w][h].IsAlive = CellLogic.DetermineIfCellLives(Map[w][h], cartesianGridLogic.NumberOfLiveNeighbors(Map[w][h])); } } Map = emptyMap; }
public static void Main(string[] args) { string[] lines = File.ReadAllLines(args[0]); CartesianGrid cartesianGrid = new CartesianGrid(lines); Console.WriteLine("Starting grid, press \"Y\" to view next generation"); Console.WriteLine(cartesianGrid.ToString()); while (Console.ReadLine() == "y") { cartesianGrid.NextGeneration(); Console.WriteLine(cartesianGrid.ToString()); Console.WriteLine("Press \"Y\" to view next generation"); } }
public void TestNextGeneration(int numberOfGenerations, string startFile, string endFile) { string[] startLines = File.ReadAllLines(startFile); string[] endLines = File.ReadAllLines(endFile); CartesianGrid cartesianGrid = new CartesianGrid(startLines); CartesianGrid cartesianGridFinal = new CartesianGrid(endLines); for (int i = 0; i < numberOfGenerations; i++) { cartesianGrid.NextGeneration(); Console.WriteLine(cartesianGrid.ToString()); } Assert.AreEqual(cartesianGridFinal.ToString(), cartesianGrid.ToString()); }
public void TestNumberOfLiveNeighbors(string[] testArray, int expectedLiveNeighbors) { CartesianGrid grid = new CartesianGrid(testArray); CartesianGridLogic gridLogic = new CartesianGridLogic(grid); int liveNeighbors = gridLogic.NumberOfLiveNeighbors(grid.Map[1][1]); Assert.AreEqual(liveNeighbors, expectedLiveNeighbors); }
public int TestGenerateGrid(int width, int height) { CartesianGrid cartesianGrid = new CartesianGrid(width, height); return cartesianGrid.Map.GetLength(0) * cartesianGrid.Map[0].GetLength(0); }