public void UpdateTaskReturnsOkOnSuccessfulUpdate() { var taskData = new TaskCreateUpdateRequestDto() { Id = 1, Title = "test", Description = "test", Status = "status" }; var mappedTask = new Task() { Status = new TaskStatus() { Label = "status" } }; _taskServiceMock.Setup(service => service.GetTaskById(It.IsAny <int>())) .Returns(TestValuesProvider.GetTasks().FirstOrDefault()); _mapperMock.Setup(mapper => mapper.Map(It.IsAny <TaskCreateUpdateRequestDto>(), It.IsAny <Task>())) .Returns(mappedTask); IActionResult result = this.TasksControllerInstance.UpdateTask(taskData); Assert.IsType <OkResult>(result); }
public IActionResult UpdateTask([FromBody] TaskCreateUpdateRequestDto updatedTaskData) { if (ModelState.IsValid) { var taskForUpdate = _taskService.GetTaskById(updatedTaskData.Id.Value); if (taskForUpdate != null) { taskForUpdate = _mapper.Map(updatedTaskData, taskForUpdate); if (updatedTaskData.Status != taskForUpdate.Status.Label) { var newTaskStatus = _taskStatusService.GetStatus(updatedTaskData.Status); if (newTaskStatus == null) { return(NotFound(updatedTaskData.Status)); } taskForUpdate.Status = newTaskStatus; } _taskService.Update(taskForUpdate); return(Ok()); } return(NotFound(updatedTaskData.Id)); } return(BadRequest(ModelState)); }
public void UpdateTaskReturnsNotFoundIfStatusNotFound() { var oldStatus = new TaskStatus() { Label = "old status" }; var newStatus = new TaskStatus() { Label = "new status" }; var taskData = new TaskCreateUpdateRequestDto() { Id = 1, Status = newStatus.Label, ProjectId = 1 }; var mappedTask = new Task() { Status = oldStatus }; _taskServiceMock.Setup(service => service.GetTaskById(It.IsAny <int>())) .Returns(TestValuesProvider.GetTasks().FirstOrDefault()); _mapperMock.Setup(mapper => mapper.Map(It.IsAny <TaskCreateUpdateRequestDto>(), It.IsAny <Task>())) .Returns(mappedTask); _taskStatusServiceMock.Setup(service => service.GetStatus(taskData.Status)) .Returns(null as TaskStatus); IActionResult result = this.TasksControllerInstance.UpdateTask(taskData); Assert.IsType <NotFoundObjectResult>(result); }
public void UpdateTaskReturnsBadRequestOnInvalidData() { var taskData = new TaskCreateUpdateRequestDto() { Title = "test", Description = "test" }; TasksController controller = this.TasksControllerInstance; controller.ModelState.AddModelError("error", "error"); IActionResult result = controller.UpdateTask(taskData); Assert.IsType <BadRequestObjectResult>(result); }
public void UpdateTaskReturnsNotFoundIfTaskNotFoundById() { var taskData = new TaskCreateUpdateRequestDto() { Id = 1, Title = "test", Description = "test", }; _taskServiceMock.Setup(service => service.GetTaskById(taskData.Id.Value)) .Returns(null as Task); IActionResult result = this.TasksControllerInstance.UpdateTask(taskData); Assert.IsType <NotFoundObjectResult>(result); }
public void CreateTaskReturnsOkOnCorrectData() { var taskData = new TaskCreateUpdateRequestDto(); var foundStatus = new TaskStatus(); var taskEntity = new Task(); _mapperMock.Setup(mapper => mapper.Map <Task>(taskData)) .Returns(taskEntity); _taskStatusServiceMock.Setup(service => service.GetStatus(It.IsAny <string>())) .Returns(foundStatus); IActionResult result = this.TasksControllerInstance.CreateTask(taskData); _taskStatusServiceMock.Verify(service => service.GetStatus(It.IsAny <string>()), Times.Once); Assert.IsType <OkResult>(result); }
public void CreateTaskReturnsNotFoundIfStatusNotFound() { var taskData = new TaskCreateUpdateRequestDto() { Status = "status" }; _taskStatusServiceMock.Setup(service => service.GetStatus(It.IsAny <string>())) .Returns(null as TaskStatus); IActionResult result = this.TasksControllerInstance.CreateTask(taskData); _taskStatusServiceMock.Verify(service => service.GetStatus(It.IsAny <string>()), Times.Once); Assert.IsType <NotFoundObjectResult>(result); Assert.Equal(taskData.Status, (result as NotFoundObjectResult)?.Value); }
public IActionResult CreateTask([FromBody] TaskCreateUpdateRequestDto taskData) { if (ModelState.IsValid) { var task = _mapper.Map <Task>(taskData); var newTaskStatus = _taskStatusService.GetStatus(taskData.Status); if (newTaskStatus == null) { return(NotFound(taskData.Status)); } task.Status = newTaskStatus; _taskService.Create(task); return(Ok()); } return(BadRequest(ModelState)); }