Exemple #1
0
        public static GridPoint[,] CreateNewBoard(int width, int height, int minesToPlace)
        {
            GridPoint[,] board = new GridPoint[width, height];
            board.AddGridPointsToBoard();
            board.AddMinesToBoard(minesToPlace);
            board.CalculateAdjacentMineCount();

            foreach (var point in board)
            {
                GridPointHelper.SetDisplayCharacter(point);
            }

            return(board);
        }
Exemple #2
0
        public void CalculateAdjacentMineCount_ReturnsCorrectValue()
        {
            var board = new GridPoint[3, 3];

            board.AddGridPointsToBoard();
            var firstMineLocation  = board[0, 0];
            var secondMineLocation = board[1, 1];

            firstMineLocation.IsMine  = true;
            secondMineLocation.IsMine = true;

            board.CalculateAdjacentMineCount();

            Assert.Equal(2, board[0, 1].AdjacentMineCount);
            Assert.Equal(1, board[0, 2].AdjacentMineCount);
            Assert.Equal(2, board[1, 0].AdjacentMineCount);
            Assert.Equal(1, board[1, 2].AdjacentMineCount);
            Assert.Equal(1, board[2, 0].AdjacentMineCount);
            Assert.Equal(1, board[2, 1].AdjacentMineCount);
            Assert.Equal(1, board[2, 2].AdjacentMineCount);
        }