public void GenerateBoards_GeneratesTheCorrectNumberOfCells(int columns, int rows, int mines)
        {
            var expectedCells    = columns * rows;
            var user             = _fixture.Create <User>();
            var initialClickCell = _fixture.Build <Cell>()
                                   .With(c => c.Column, 2)
                                   .With(c => c.Row, 2)
                                   .Create();


            var result = _gameProcessor.GenerateBoard(initialClickCell, user, columns, rows, mines);

            Assert.AreEqual(expectedCells, result.Cells.Count());
        }
Example #2
0
        public async Task <Board> InitializeAsync(Cell initialClickCell, string username, int columns, int rows, int mines)
        {
            User user = await ValidateBeforeInitialize(initialClickCell, username, columns, rows);

            // Generates the board
            var newBoard = _gameProcessor.GenerateBoard(initialClickCell, user, columns, rows, mines);

            // Process the first click
            newBoard = await CheckAsync(newBoard, initialClickCell.Column, initialClickCell.Row);

            return(newBoard);
        }