示例#1
0
        public void BoardFirstTickSuccessTest()
        {
            // arrange
            var board = new int[, ] {
                { 0, 0, 0, 0, 0 },
                { 0, 0, 1, 1, 0 },
                { 0, 1, 1, 0, 0 },
                { 0, 0, 1, 0, 0 },
                { 0, 0, 0, 0, 0 }
            };

            var expectedBoard = new int[, ] {
                { 0, 0, 0, 0, 0 },
                { 0, 1, 1, 1, 0 },
                { 0, 1, 0, 0, 0 },
                { 0, 1, 1, 0, 0 },
                { 0, 0, 0, 0, 0 }
            };

            // act
            var game = new GameOfLife(board);

            game.CalcTick();
            var resultBoard = game.Board;

            // assert
            Assert.AreEqual(expectedBoard.Length, resultBoard.Length);
            Assert.AreEqual(expectedBoard.Rank, resultBoard.Rank);

            for (int rowIdx = 0; rowIdx < resultBoard.GetLength(0); rowIdx++)
            {
                for (int colIdx = 0; colIdx < resultBoard.GetLength(1); colIdx++)
                {
                    Assert.AreEqual(expectedBoard[rowIdx, colIdx], resultBoard[rowIdx, colIdx]);
                }
            }
        }