public async Task <IActionResult> Get([FromRoute] GetUserStatisticQuery query) { using (var scope = _tracer.BuildSpan("GetUserStatisticByUserId").StartActive(finishSpanOnDispose: true)) { var response = await _mediator.Send(query); if (response == null) { return(NotFound($"Statistic for user with ID '{query.UserId}' was not found.")); } //catch if failure return(Ok(response)); } }
public async Task GetUserStatisticByUserIdHandler_NotExsistId_ShouldArgumentNullException() { //Arrange var userId = Guid.NewGuid(); var query = new GetUserStatisticQuery() { UserId = userId }; var handler = _autoMocker.CreateInstance <GetUserStatisticQueryHandler>(); _userStatisticRepositoryMock.Setup(x => x.GetAllAsync(It.IsAny <ISpecification <UserStatistic> >())) .ReturnsAsync(default(List <UserStatistic>)); //Act var result = await Assert.ThrowsAsync <ArgumentNullException>(() => handler.Handle(query, CancellationToken.None)); //Assert Assert.Contains($"User statistic for user {userId} not found", result.Message); }
public async Task GetUserStatisticByQuizIdHandler_ExsistId_ShouldSuccess() { //Arrange var userId = Guid.NewGuid(); var query = new GetUserStatisticQuery() { UserId = userId }; var handler = _autoMocker.CreateInstance <GetUserStatisticQueryHandler>(); _userStatisticRepositoryMock.Setup(x => x.GetAllAsync(It.IsAny <ISpecification <UserStatistic> >())) .ReturnsAsync(GetUserStatisticList(userId)); _userStatisticServiceMock.Setup(x => x.GetUserStatistics(It.IsAny <IEnumerable <UserStatistic> >(), It.IsAny <EnglishLevel>())) .Returns(GetUserStatisticView()); //Act var result = await handler.Handle(query, CancellationToken.None); //Assert Assert.NotNull(result); }