public SeiyuuController( ILoggingService loggingService, GetSeiyuuCardInfoQueryHandler getSeiyuuCardInfoQueryHandler, SearchSeiyuuQueryHandler searchSeiyuuQueryHandler, CompareSeiyuuQueryHandler compareSeiyuuQueryHandler ) : base(loggingService) { _getSeiyuuCardInfoQueryHandler = getSeiyuuCardInfoQueryHandler; _searchSeiyuuQueryHandler = searchSeiyuuQueryHandler; _compareSeiyuuQueryHandler = compareSeiyuuQueryHandler; }
public async Task HandleAsync_GivenRepositoryReturnNull_ShouldReturnNotFoundResponse() { // Given const long seiyuuMalId = 0; var mockRepository = new Mock <ISeiyuuRepository>(); var handler = new GetSeiyuuCardInfoQueryHandler(mockRepository.Object); // When var result = await handler.HandleAsync(new GetSeiyuuCardInfoQuery(seiyuuMalId)); // Then mockRepository.Verify(x => x.GetAsync(seiyuuMalId), Times.Once); result.Should().BeNull(); }
public async Task HandleAsync_GivenRepositoryReturnAnime_ShouldReturnResponse() { // Given const long seiyuuMalId = 0; var mockRepository = new Mock <ISeiyuuRepository>(); mockRepository.Setup(x => x.GetAsync(seiyuuMalId)).ReturnsAsync(new SeiyuuBuilder().WithMalId(seiyuuMalId).Build()); var handler = new GetSeiyuuCardInfoQueryHandler(mockRepository.Object); // When var result = await handler.HandleAsync(new GetSeiyuuCardInfoQuery(seiyuuMalId)); // Then mockRepository.Verify(x => x.GetAsync(seiyuuMalId), Times.Once); result.Should().NotBeNull().And.BeOfType(typeof(SeiyuuCardDto)); }