public override async Task <ActionResult <UpdateCatalogItemResponse> > HandleAsync(UpdateCatalogItemRequest request, CancellationToken cancellationToken) { var response = new UpdateCatalogItemResponse(request.CorrelationId()); var existingItem = await _itemRepository.GetByIdAsync(request.Id, cancellationToken); existingItem.UpdateDetails(request.Name, request.Description, request.Price); existingItem.UpdateBrand(request.CatalogBrandId); existingItem.UpdateType(request.CatalogTypeId); await _itemRepository.UpdateAsync(existingItem, cancellationToken); var dto = new CatalogItemDto { Id = existingItem.Id, CatalogBrandId = existingItem.CatalogBrandId, CatalogTypeId = existingItem.CatalogTypeId, Description = existingItem.Description, Name = existingItem.Name, PictureUri = _uriComposer.ComposePicUri(existingItem.PictureUri), Price = existingItem.Price }; response.CatalogItem = dto; return(response); }
public async Task UpdatedCatalogItem() { UpdateCatalogItemResponse updateCatalogItemResponse = await HttpClient.GetFromJsonAsync <UpdateCatalogItemResponse>(UpdateCatalogItemRequest.GetRoute()); ValidateUpdateCatalogItemResponse(updateCatalogItemResponse); }
private void ValidateUpdateCatalogItemResponse(UpdateCatalogItemResponse aUpdateCatalogItemResponse) { aUpdateCatalogItemResponse.CorrelationId.Should().Be(UpdateCatalogItemRequest.CorrelationId); }
public async Task UpdatedCatalogItem() { UpdateCatalogItemResponse updateCatalogItemResponse = await Send(UpdateCatalogItemRequest); ValidateUpdateCatalogItemResponse(updateCatalogItemResponse); }