public void ShouldLive_LiveCell_If_TwoOrThreeLiveNeighbours() { //Arrange or setup uint universeSize = 3; IGameBuilder gameBuilder = new GameBuilder(new GameOfLife(universeSize)); var cells = gameBuilder.GetCells(); cells[0, 1].IsAlive = true; cells[1, 1].IsAlive = true; cells[2, 1].IsAlive = true; //Perform or Act gameBuilder.Play(); //validate and Assert Assert.AreEqual(cells[0, 1].IsAlive, false); Assert.AreEqual(cells[1, 1].IsAlive, true); Assert.AreEqual(cells[2, 1].IsAlive, false); }
public void ShouldDieLiveCell_If_LessThanTwoLiveNeighbours() { //Arrange or setup uint universeSize = 3; IGameBuilder gameBuilder = new GameBuilder(new GameOfLife(universeSize)); var cells = gameBuilder.GetCells(); cells[0, 1].IsAlive = true; cells[1, 1].IsAlive = true; //Perform or Act gameBuilder.Play(); //validate and Assert for (var i = 0; i < universeSize; i++) { for (var j = 0; j < universeSize; j++) { Assert.AreEqual(cells[i, j].IsAlive, false); } } }