public async Task <MatchResponseDto> AddAsync([FromBody] MatchRequestDto matchDto) { var model = mapper.Map <MatchModel>(matchDto); var response = await matchService.AddAsync(model); return(mapper.Map <MatchResponseDto>(response)); }
public async Task AddMatchAsync_HappyPath() { // Arrange var match = new MatchResponseDto() { ID = Guid.NewGuid(), GameMode = "Doubles", MatchDate = DateTime.UtcNow, DateCreatedUTC = DateTime.UtcNow, DateModifiedUTC = DateTime.UtcNow }; var matchRequest = new MatchRequestDto() { MatchDate = match.MatchDate, GameMode = match.GameMode }; mockHttpClient.Setup(client => client.ExecuteRequestAsync <MatchResponseDto>($"{fakeUrl}/api/match", It.IsAny <RestRequest>())).ReturnsAsync(match); // Act var response = await rocketClient.AddMatchAsync(matchRequest); // Assert mockHttpClient.Verify(Clients => Clients.ExecuteRequestAsync <MatchResponseDto>($"{fakeUrl}/api/match", It.IsAny <RestRequest>()), Times.Once); Assert.NotNull(response); Assert.Equal(matchRequest.GameMode, response.GameMode); Assert.Equal(matchRequest.MatchDate, response.MatchDate); Assert.Equal(match.ID, response.ID); }
public virtual async Task <MatchResponseDto> AddMatchAsync(MatchRequestDto match) { var url = $"{rocketApiUrl}/api/match"; var token = await authClient.ObtainAccessTokenAsync(); var request = new RestRequest(Method.POST); request.AddJsonBody(JsonConvert.SerializeObject(match)); request.AddHeader("Authorization", $"Bearer {token}"); return(await http.ExecuteRequestAsync <MatchResponseDto>(url, request)); }
private static bool AreEqualRequestAndResponseDto(MatchRequestDto request, MatchResponseDto response) { return(request.MatchDate == response.MatchDate && request.GameMode == response.GameMode); }