public async Task <IActionResult> UpdateTaskStatusAsync(Guid conferenceId, long taskId, [FromBody] UpdateTaskRequest updateTaskRequest) { _logger.LogDebug("UpdateTaskStatus"); try { var command = new UpdateTaskCommand(conferenceId, taskId, updateTaskRequest.UpdatedBy); await _commandHandler.Handle(command); } catch (TaskNotFoundException ex) { _logger.LogError(ex, "Unable to find task"); return(NotFound()); } var query = new GetTasksForConferenceQuery(conferenceId); var tasks = await _queryHandler.Handle <GetTasksForConferenceQuery, List <Task> >(query); var task = tasks.SingleOrDefault(x => x.Id == taskId); if (task == null) { _logger.LogError("Unable to find task"); return(NotFound()); } var response = TaskToResponseMapper.MapTaskToResponse(task); return(Ok(response)); }
public void Should_map_all_properties() { var alert = Builder <Task> .CreateNew() .WithFactory(() => new Task(Guid.NewGuid(), Guid.NewGuid(), "Automated Test", TaskType.Hearing)) .Build(); var response = TaskToResponseMapper.MapTaskToResponse(alert); response.Should().BeEquivalentTo(alert, options => options .Excluding(x => x.Status) .Excluding(x => x.Created) .Excluding(x => x.Updated) .Excluding(x => x.UpdatedBy) .Excluding(x => x.ConferenceId) ); }