public async Task GetList_WithoutItemType_PassesExpectedQuery() { GetSuppliersByNameQuery actualQuery = null; var mockMediator = new Mock <IMediator>(); mockMediator .Setup(m => m.Send(It.IsNotNull <IRequest <IEnumerable <ISupplier> > >(), It.IsAny <CancellationToken>())) .Callback <IRequest <IEnumerable <ISupplier> >, CancellationToken>((q, _) => actualQuery = (GetSuppliersByNameQuery)q) .ReturnsAsync(Array.Empty <ISupplier>()); const string expectedName = "Supplier Name"; const PublishedStatus expectedPublishedStatus = PublishedStatus.Draft; var controller = new SuppliersController(mockMediator.Object); var searchQuery = new SupplierSearchQueryModel { Name = expectedName, SolutionPublicationStatus = expectedPublishedStatus, }; await controller.GetList(searchQuery); var expectedQuery = new GetSuppliersByNameQuery(expectedName, expectedPublishedStatus, CatalogueItemType.Solution); actualQuery.Should().BeEquivalentTo(expectedQuery); }
public async Task <IEnumerable <ISupplier> > Handle(GetSuppliersByNameQuery request, CancellationToken cancellationToken) { return(_mapper.Map <IEnumerable <ISupplier> >( await _reader.ByNameAsync(request.Name, request.SolutionPublicationStatus, cancellationToken))); }