public async Task UpdateItemAsync_WithItemNotFromDb_ReturnsRetrievedItemEmpty() { var item = ItemsCreator .CreateItem(id: "00000000-0000-0000-0000-000000000007", text: "different text"); _getItemService.GetItemAsync(item.Id).Returns(Task.FromResult(RetrievedItem <Item> .Empty)); var result = await _updateItemService.UpdateItemAsync(item); Assert.That(result, Is.EqualTo(RetrievedItem <Item> .Empty)); }
public async Task <IHttpActionResult> GetItemAsync(Guid id) { ValidateNonEmptyId(id); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var result = await _getItemService.GetItemAsync(id); if (!result.WasFound) { return(NotFound()); } return(Ok(result.Item)); }
public async Task <RetrievedItem <Item> > UpdateItemAsync(Item item) { var retrievedItem = await _getItemService.GetItemAsync(item.Id); if (!retrievedItem.WasFound) { return(retrievedItem); } var updatedItem = CreateUpdatedItem(existingItem: retrievedItem.Item, newItem: item); var result = await _repository.UpdateItemAsync(updatedItem); return(result == null ? RetrievedItem <Item> .Empty : new RetrievedItem <Item>(result)); }