public async Task <GameDTO> GetGame(Guid gameId) { var query = new GetGameQuery(gameId); var result = await this.mediator.Send(query); return(result); }
public async Task <ActionResult <GameFollowResponse> > GetGameAsync(Guid gameId) { var query = new GetGameQuery(gameId); var game = await _getGameQueryHandler.HandleAsync(query); return(Ok(game)); }
public async Task <ActionResult <MinesweeperApi.Models.Minesweeper> > PostStartNewGame(NewGameRequest gameRequest) { var createNewGameCommand = new CreateNewGameCommand() { Width = gameRequest.Width, Height = gameRequest.Height, NumberOfMines = gameRequest.NumberOfMines }; var createGameResponse = await _mediator.Send(createNewGameCommand); if (createGameResponse.Success) { var getGameQuery = new GetGameQuery() { GameID = createGameResponse.Value }; var getGameResponse = await _mediator.Send(getGameQuery); return(getGameResponse.Success ? new ActionResult <MinesweeperApi.Models.Minesweeper>(getGameResponse.Value) : new BadRequestObjectResult(getGameResponse.Error)); } else { return(new BadRequestObjectResult(createGameResponse.Error)); } }
public async Task <ActionResult <GameFollowResponse> > PutGoalAsync(Guid goalId, UpsertGoalRequest request) { var command = new UpsertGoalCommand(goalId, request); await _upsertGoalCommandHandler.HandleAsync(command); var query = new GetGameQuery(request.GameId); var game = await _getGameQueryHandler.HandleAsync(query); return(Ok(game)); }
public async Task <ActionResult <MinesweeperApi.Models.Minesweeper> > GetGame(string gameID) { var getGameQuery = new GetGameQuery() { GameID = gameID }; var getGameResponse = await _mediator.Send(getGameQuery); return(getGameResponse.Success ? new ActionResult <MinesweeperApi.Models.Minesweeper>(getGameResponse.Value) : new BadRequestObjectResult(getGameResponse.Error)); }
public async Task ShouldGetStatusOfExistingGame() { // Arrage var manager = new GameRepository(); var game = manager.Create("my game", new[] { Guid.NewGuid().ToString() }); var searchUsersQuery = SetupHelpers.SetupUserRepository(game.PlayerUserIds); var query = new GetGameQuery(game.Id); var handler = new GetGameQueryHandler(manager, searchUsersQuery); // Act var result = await handler.Handle(query, CancellationToken.None); // Assert Assert.Equal(game.Id, result.Id); Assert.Equal(game.Title, result.Title); Assert.All(game.PlayerUserIds, p => result.UserScores.Any(p2 => p2.User.UserId == p)); Assert.Equal(game.Scores, game.Scores); }