public async Task ListProducts_Valid_OK() { var listRequest = new ListProductRequest { }; var actual = await Fixture.Api.Products.ListProductsAsync(listRequest); Assert.Equal(HttpStatusCode.OK, actual.StatusCode); var actualContent = actual.Data; Assert.Equal(2, actualContent.Records.Count); var expectedFirst = _productRecords[0]; var actualFirst = actualContent.Records[0]; AssertUtilities.NotEmpty(actualFirst.Id); Assert.Equal($"{expectedFirst.ProductCode} - {expectedFirst.ProductName}", actualFirst.Name); var expectedSecond = _productRecords[1]; var actualSecond = actualContent.Records[1]; AssertUtilities.NotEmpty(actualSecond.Id); Assert.Equal($"{expectedSecond.ProductCode} - {expectedSecond.ProductName}", actualSecond.Name); }
public async Task <PaginatedResult <ListProductResponseDetail> > Handle(ListProductRequest request, CancellationToken cancellationToken) { var total = await _storeDbContext .Products .CountAsync(cancellationToken); var products = await _storeDbContext .Products .OrderBy(p => p.Name) .Skip(request.PageIndex * request.PageCount) .Take(request.PageCount) .ToListAsync(cancellationToken); return(new PaginatedResult <ListProductResponseDetail>() { Count = products.Count, Total = total, PageIndex = request.PageIndex, Items = products.Select(p => new ListProductResponseDetail { Name = p.Name, Description = p.Description }).ToList() }); }
public async Task <ActionResult <ListProductsResponse> > ListProductsAsync() { var request = new ListProductRequest { }; var response = await Service.ListProductsAsync(request); return(Ok(response)); }
public async Task ListProducts_ValidRequest_ReturnsResponse() { var request = new ListProductRequest { }; var response = await Fixture.Products.ListProductsAsync(request); Assert.Equal(_productRecords.Count, response.TotalRecords); for (int i = 0; i < _productRecords.Count; i++) { var expected = _productRecords[i]; var actual = response.Records[i]; Assert.Equal(expected.Id, actual.Id); Assert.Equal($"{expected.ProductCode} - {expected.ProductName}", actual.Name); } Assert.NotNull(response); }
public async Task <ActionResult <PaginatedResult <ListProductResponseDetail> > > List([FromQuery] ListProductRequest request, CancellationToken cancellationToken = default) { var list = await _mediator.Send(request, cancellationToken); return(Ok(list)); }
public async Task <IActionResult> List([FromQuery] ListProductRequest request, CancellationToken cancellationToken = default) { var list = await _mediator.Send(request, cancellationToken); return(Ok(list)); }
public Task <ListProductsResponse> ListProductsAsync(ListProductRequest request) { return(HandleAsync <ListProductRequest, ListProductsResponse>(request)); }
public Task <ListProductsResponse> ListProductsAsync(ListProductRequest request) { return(ExecuteAsync(e => e.ListProductsAsync(request))); }
public Task <IObjectClientResponse <ListProductsResponse> > ListProductsAsync(ListProductRequest request) { return(Client.GetAsync <ListProductsResponse>("list")); }