public async Task AddUpdateRemoveListItemAsync() { const int listId = 1; var testId = Guid.NewGuid().ToString("N"); // Prepare initial list item var saveRequest = new SaveListItemRequest { Color = testId, Weight = 1, Name = $"Test list item: {testId}", ListId = listId, NumericValue = 1, }; // Insert and assert var saveResponse = await _apiClient.SaveListItemAsync(saveRequest); AssertHelper.AssertSuccess(saveResponse); Assert.IsTrue(saveResponse.Value.Id != Guid.Empty, "Returned ID from insert was empty."); // Update and assert saveRequest.Id = saveResponse.Value.Id; saveRequest.Name = $"Update test list item: {testId}"; saveResponse = await _apiClient.SaveListItemAsync(saveRequest); AssertHelper.AssertSuccess(saveResponse); Assert.IsTrue(saveResponse.Value.Id == saveRequest.Id, "Returned ID from update was not correct."); // Remove var deleteResponse = await _apiClient.DeleteListItemAsync(listId, saveRequest.Id.Value); AssertHelper.AssertSuccess(deleteResponse); }
public IActionResult SaveListItem(int listId, [FromBody] SaveListItemRequest saveRequest) { var itemId = saveRequest.Id.HasValue == false?Guid.NewGuid() : saveRequest.Id.Value; var apiResponse = new SaveListItemResponse(itemId); return(Ok(apiResponse)); }
/// <summary> /// Saves (inserts/updates) a list item to the provided list. Returns the identifier of the new list item /// or null if the list could not be found. /// </summary> /// <param name="saveListItemRequest"></param> /// <returns></returns> public async Task <ApiResponse <SaveListItemResponse> > SaveListItemAsync(SaveListItemRequest saveListItemRequest) { Arg.IsNotNull(saveListItemRequest, nameof(saveListItemRequest)); var path = UrlHelper.GetSaveListItemPath(saveListItemRequest.ListId); var response = await PutAsync <SaveListItemResponse>(path, saveListItemRequest); return(response); }