public void GetNeighbourStates__InteriorCell_2_2_InFilledGrid__Neighbours3Red2Green3Blue() { var grid = NeighbourStatesTestHelper.MakeFilled4x4RGBGrid(); var cell = grid.Data[2, 2]; var neighbours = new NeighbourStates(grid, cell); var actualStates = neighbours.GetNeighbourStates(); var actualStateCounts = NeighbourStatesTestHelper.GetStateCountsDict(actualStates); var expectedStateCounts = new Dictionary <State, int> { { State.RED, 3 }, { State.GREEN, 2 }, { State.BLUE, 3 }, }; Assert.IsTrue(NeighbourStatesTestHelper.DictsAreEqual(actualStateCounts, expectedStateCounts)); }
public void GetNeighbourStates_EdgeCellLeftInFilledGrid_Neighbours2Dead3Red() { var grid = NeighbourStatesTestHelper.MakeFilled4x4RGBGrid(); var cell = grid.Data[2, 0]; var neighbours = new NeighbourStates(grid, cell); var actualStates = neighbours.GetNeighbourStates(); var actualStateCounts = NeighbourStatesTestHelper.GetStateCountsDict(actualStates); var expectedStateCounts = new Dictionary <State, int> { { State.DEAD, 2 }, { State.RED, 3 } }; Assert.IsTrue(NeighbourStatesTestHelper.DictsAreEqual(actualStateCounts, expectedStateCounts)); }
public void GetNeighbourStates_CornerCellBottomRightInFilledGrid_Neighbours1Blue2Green() { var grid = NeighbourStatesTestHelper.MakeFilled4x4RGBGrid(); var cell = grid.Data[3, 3]; var neighbours = new NeighbourStates(grid, cell); var actualStates = neighbours.GetNeighbourStates(); var actualStateCounts = NeighbourStatesTestHelper.GetStateCountsDict(actualStates); var expectedStateCounts = new Dictionary <State, int> { { State.BLUE, 1 }, { State.GREEN, 2 } }; Assert.IsTrue(NeighbourStatesTestHelper.DictsAreEqual(actualStateCounts, expectedStateCounts)); }
public void GetNeighbourStates_EdgeCellTopInFilledGrid_Neighbours2Red1Green2Blue() { var grid = NeighbourStatesTestHelper.MakeFilled4x4RGBGrid(); var cell = grid.Data[0, 2]; var neighbours = new NeighbourStates(grid, cell); var actualStates = neighbours.GetNeighbourStates(); var actualStateCounts = NeighbourStatesTestHelper.GetStateCountsDict(actualStates); var expectedStateCounts = new Dictionary <State, int> { { State.BLUE, 2 }, { State.GREEN, 1 }, { State.RED, 2 } }; Assert.IsTrue(NeighbourStatesTestHelper.DictsAreEqual(actualStateCounts, expectedStateCounts)); }
public void GetNeighbourStates_InteriorCellInEmptyGrid_HasAllDeadNeighbours() { var grid = new RGBGrid(4, false); var cell = grid.Data[2, 2]; var neighbours = new NeighbourStates(grid, cell); var actualStates = neighbours.GetNeighbourStates(); var actualStateCounts = NeighbourStatesTestHelper.GetStateCountsDict(actualStates); var expectedStateCounts = new Dictionary <State, int> { { State.DEAD, 8 } }; Assert.IsTrue(NeighbourStatesTestHelper.DictsAreEqual(actualStateCounts, expectedStateCounts)); }