Beispiel #1
0
        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);
        }
Beispiel #3
0
        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);
 }