public void SetStatusReturnsOkOnChangeStatusSuccess() { var setStatusData = new TaskSetStatusRequestDto() { Status = "test status", Tasks = TestValuesProvider.GetTaskListItems() }; List <Task> mappedTestTasks = TestValuesProvider.GetTasks(); var foundStatus = new TaskStatus() { Label = setStatusData.Status }; _taskServiceMock.Setup(service => service.GetTasks(It.IsAny <IEnumerable <int> >())) .Returns(mappedTestTasks); _taskServiceMock.Setup(service => service.GetStatusByLabel(setStatusData.Status)) .Returns(foundStatus); IActionResult result = this.TasksControllerInstance.SetStatus(setStatusData); _taskServiceMock.Verify(service => service.GetTasks(It.IsAny <IEnumerable <int> >()), Times.Once); _taskServiceMock.Verify(service => service.GetStatusByLabel(setStatusData.Status), Times.Once); _taskServiceMock.Verify(service => service.ChangeStatus(mappedTestTasks, foundStatus), Times.Once); Assert.IsType <OkObjectResult>(result); }
public void SetStatusReturnsBadRequestIfModelStateHasErrors() { var setStatusData = new TaskSetStatusRequestDto() { Status = "test status", Tasks = TestValuesProvider.GetTaskListItems() }; TasksController controller = this.TasksControllerInstance; controller.ModelState.AddModelError("error", "error"); IActionResult result = controller.SetStatus(setStatusData); Assert.IsType <BadRequestObjectResult>(result); }
public IActionResult SetStatus([FromBody] TaskSetStatusRequestDto setStatusData) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var taskIdsForUpdate = setStatusData.Tasks .Where(task => task.Checked == true) .Select(task => task.Id); var taskEntitiesForUpdate = _taskService.GetTasks(taskIdsForUpdate); var status = _taskService.GetStatusByLabel(setStatusData.Status); if (status == null) { return(NotFound(setStatusData.Status)); } return(Ok(_taskService.ChangeStatus(taskEntitiesForUpdate, status))); }
public void SetStatusReturnsNotFoundWhenStatusNotExists() { var setStatusData = new TaskSetStatusRequestDto() { Status = "test status", Tasks = TestValuesProvider.GetTaskListItems() }; List <Task> mappedTestTasks = TestValuesProvider.GetTasks(); _taskServiceMock.Setup(service => service.GetTasks(It.IsAny <IEnumerable <int> >())) .Returns(mappedTestTasks); _taskServiceMock.Setup(service => service.GetStatusByLabel(setStatusData.Status)) .Returns(null as TaskStatus); IActionResult result = this.TasksControllerInstance.SetStatus(setStatusData); _taskServiceMock.Verify(service => service.GetTasks(It.IsAny <IEnumerable <int> >()), Times.Once); _taskServiceMock.Verify(service => service.GetStatusByLabel(setStatusData.Status), Times.Once); _taskServiceMock.Verify(service => service.ChangeStatus(It.IsAny <IEnumerable <Task> >(), It.IsAny <TaskStatus>()), Times.Never); Assert.IsType <NotFoundObjectResult>(result); Assert.Equal(setStatusData.Status, (result as NotFoundObjectResult)?.Value); }