public async Task <IActionResult> Post([FromBody] TodoItemForCreationDto dto) { var result = await Mediator.Send(new CreateTodoItemCommand() { Name = dto.Name, Description = dto.Description }); return(CreatedAtAction(nameof(Get), new { id = result.Id }, result)); }
public async Task <ActionResult <TodoItem> > CreateTodoItem([FromBody] TodoItemForCreationDto todoItemForCreation) { var todoItemEntity = _mapper.Map <TodoItem>(todoItemForCreation); _repo.AddTodoItem(todoItemEntity); await _repo.SaveChangesAsync(); var todoItemDto = _mapper.Map <TodoItemDto>(todoItemEntity); return(CreatedAtRoute("GetTodoItem", new { todoItemId = todoItemEntity.Id }, todoItemDto)); }
public async void ReturnCreatedAtRouteWhenCreateTodoItem() { // Arrange // See constructor var todoItemForCreationDto = new TodoItemForCreationDto { Text = "Cleaning" }; // Act var actual = await _sut.CreateTodoItem(todoItemForCreationDto); // Assert Assert.IsType <CreatedAtRouteResult>(actual.Result); }
public void ReturnStringContentWhenGetStringContentFromObject() { // Arrange var sut = new TodoItemService(_mockClientFactory.Object); var objectForTest = new TodoItemForCreationDto { Text = "Testtext", IsDone = false }; // Act var actual = sut.GetStringContentFromObject(objectForTest); // Assert Assert.IsType <StringContent>(actual); }
public async void CallAddTodoItemAndSaveChangesAsyncInRepositoryWhenCreateTodoItem() { // Arrange // See constructor var todoItemForCreationDto = new TodoItemForCreationDto { Text = "Cleaning" }; // Act await _sut.CreateTodoItem(todoItemForCreationDto); // Assert _mockRepo.Verify(x => x.AddTodoItem(It.IsAny <TodoItem>()), Times.Once); _mockRepo.Verify(x => x.SaveChangesAsync(), Times.Once); }
public async Task AddTodoItem() { var todoItemForCreation = new TodoItemForCreationDto { Text = TodoItemTextInput }; if (String.IsNullOrWhiteSpace(todoItemForCreation.Text)) { PlaceHolderText = "MUST ENTER SOME TEXT"; return; } HideModal(); await TodoService.AddTodoAsync(todoItemForCreation); await OnTodoItemAdded.InvokeAsync(true); }
public async Task <HttpResponseMessage> AddTodoAsync(TodoItemForCreationDto todoItemForCreation) { return(await _client.PostAsync("/api/TodoItems", GetStringContentFromObject(todoItemForCreation))); }