private async Task UpdateTodo() { // Given: var client = Factory.CreateClient(); // And: var updateTodoRequest = new UpdateTodoRequest() { Name = "Water Plants", Completed = true }; // And: HttpContent httpContent = new StringContent( JsonConvert.SerializeObject(updateTodoRequest), Encoding.UTF8, "application/json" ); // When: var response = await client.PutAsync("/api/Todos/1", httpContent); // Then: Assert.Equal(HttpStatusCode.NoContent, response.StatusCode); }
public async Task <IActionResult> Clear(Guid todoId, UpdateTodoRequest request) { request.Id = todoId; return(await Eventor.SendStream <UpdateTodoRequest, UpdateTodoResponse>( request, x => x.Result)); }
public async Task <IActionResult> Update([FromRoute] Guid todoId, [FromBody] UpdateTodoRequest request) { var todo = await _todoService.GetTodoByIdAsync(todoId); if (todo == null) { return(NotFound(todoId)); } if (!string.IsNullOrEmpty(request.Name)) { todo.Name = request.Name; } todo.IsCompleted = request.IsCompleted; var updated = await _todoService.UpdateTodoAsync(todo); if (updated) { return(Ok(_mapper.Map <TodoResponse>(todo))); } return(NotFound(todoId)); }
public async Task <ActionResult <TodoItemDto> > UpdateTodoAsync([FromBody] UpdateTodoRequest request) { var res = await _service.UpdateAsync(request); if (res == null) { return(BadRequest()); } return(Ok(res)); }
public ValidationResponse UpdateTodo(UpdateTodoRequest request) { ValidationResponse response = new ValidationResponse(); if (request == null || string.IsNullOrWhiteSpace(request.Username) || string.IsNullOrWhiteSpace(request.Token)) { response.Error = "Need to login"; return(response); } User user = context.Users.FirstOrDefault(u => u.Name == request.Username && u.Token == request.Token); if (user == null) { response.Error = "Need to login"; return(response); } var todo = context.ToDos.Find(request.Id); if (todo == null) { response.Error = "No such todo"; return(response); } context.Entry(todo) .Reference(it => it.User) .Load(); if (todo.User.Token != request.Token || todo.User.Name != request.Username) { response.Error = "This todo belongs to another user"; return(response); } todo.Text = request.TodoText; context.Entry(todo).State = EntityState.Modified; context.SaveChanges(); return(response); }
public async Task <IActionResult> UpdateTodo(long id, UpdateTodoRequest request) { var todo = new Core.Models.Todo() { Id = id, Name = request.Name, Completed = request.Completed }; try { await TodoService.UpdateTodoAsync(todo); } catch (TodoNotFoundException) { return(NotFound()); } return(NoContent()); }
public Response <Todo> Edit([FromBody] UpdateTodoRequest request) { if (!TryLogin(request)) { return(new Response <Todo> { Ok = false, Error = "Login ou mot de passe invalide" }); } User user = Database.GetUser(request.Login); if (string.IsNullOrEmpty(request.Title) || string.IsNullOrEmpty(request.Description)) { return(new Response <Todo> { Ok = false, Error = "Champs Title ou Description vide" }); } Todo newTodo = Database.UpdateTodo(user, request.Id, request.Title, request.Description); if (newTodo != null) { return(new Response <Todo> { Ok = true, Resource = newTodo }); } return(new Response <Todo> { Ok = false, Error = "Cet id n'existe pas il me semble" }); }
public async Task <IActionResult> UpdateTodo(Guid id, [FromBody] UpdateTodoRequest updateTodoRequest) { try { _logger.LogInformation($"Updating exisitng to-do with id: {id.ToString()}"); var todo = await _todoRepository.GetItemAsync(id.ToString()); todo.Name = updateTodoRequest.Name; todo.Description = updateTodoRequest.Description; todo.IsComplete = updateTodoRequest.IsComplete; await _todoRepository.UpdateItemAsync(id.ToString(), todo); return(Ok()); } catch (Exception ex) { _logger.LogError(ex, "Exception caught!"); return(BadRequest(new ApiResult { Error = "An error has occured" })); } }
public async Task <TodoItemDto> UpdateAsync(UpdateTodoRequest request) { try { var itemToUpdate = await _context.Todos .FirstOrDefaultAsync(x => x.Id == request.Id); if (itemToUpdate is null) { return(null); } itemToUpdate.Content = request.Content; itemToUpdate.IsDone = request.IsDone; _context.Todos.Update(itemToUpdate); var saved = await _context.SaveChangesAsync() > 0; if (!saved) { return(null); } return(new TodoItemDto { Id = itemToUpdate.Id, Content = itemToUpdate.Content, IsDone = itemToUpdate.IsDone, }); } catch (Exception ex) { Console.WriteLine($"[ERR] {ex.Message}"); return(null); } }
public ValidationResponse UpdateTodo([FromBody] UpdateTodoRequest request) { return(toDoService.UpdateTodo(request)); }
public async Task <ActionResult> Update([FromBody] UpdateTodoRequest request) { await _mediator.Send(request); return(NoContent()); }