public async Task <IActionResult> Get([FromRoute] GetQuizStatisticQuery query) { using (var scope = _tracer.BuildSpan("GetQuizStatisticByQuizId").StartActive(finishSpanOnDispose: true)) { var response = await _mediator.Send(query); if (response == null) { return(NotFound($"Statistic for quiz with ID '{query.QuizId}' was not found.")); } //catch if failure return(Ok(response)); } }
public async Task GetQuizStatisticByQuizIdHandler_NotExsistId_ShouldArgumentNullException() { //Arrange var quizId = Guid.NewGuid(); var query = new GetQuizStatisticQuery() { QuizId = quizId }; var handler = _autoMocker.CreateInstance <GetQuizStatisticQueryHandler>(); _quizStatisticRepositoryMock.Setup(x => x.GetAllAsync(It.IsAny <ISpecification <QuizStatistic> >())) .ReturnsAsync(default(List <QuizStatistic>)); //Act var result = await Assert.ThrowsAsync <ArgumentNullException>(() => handler.Handle(query, CancellationToken.None)); //Assert Assert.Contains($"Quiz statistic for quiz {quizId} not found", result.Message); }
public async Task GetQuizStatisticByQuizIdHandler_ExsistId_ShouldSuccess() { //Arrange var quizId = Guid.NewGuid(); var query = new GetQuizStatisticQuery() { QuizId = quizId }; var handler = _autoMocker.CreateInstance <GetQuizStatisticQueryHandler>(); _quizStatisticRepositoryMock.Setup(x => x.GetAllAsync(It.IsAny <ISpecification <QuizStatistic> >())) .ReturnsAsync(GetQuizStatisticList(quizId)); _quizStatisticServiceMock.Setup(x => x.GetQuizStatistics(It.IsAny <IEnumerable <QuizStatistic> >())) .Returns(GetQuizStatisticView()); //Act var result = await handler.Handle(query, CancellationToken.None); //Assert Assert.NotNull(result); }