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()); }
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); }