public static UpdateFurtherControlMeasureTaskRequest Create( string title, string description, string reference, string taskCompletionDueDate, int taskStatusId, long companyId, long id, Guid taskAssignedToId, int taskReoccurringTypeId, string taskReoccurringFirstDueDate, DateTime? taskReoccurringEndDate, Guid userId, List<CreateDocumentRequest> createDocumentRequests, List<long> deleteDocumentRequests, bool sendTaskNotification, bool sendTaskCompletedNotification, bool sendTaskOverdueNotification, bool sendTaskDueTomorrowNotification ) { var request = new UpdateFurtherControlMeasureTaskRequest { Title = title, Description = description, Reference = reference, TaskStatus = (TaskStatus)taskStatusId, CompanyId = companyId, Id = id, TaskAssignedToId = taskAssignedToId, TaskReoccurringTypeId = taskReoccurringTypeId, TaskReoccurringEndDate = taskReoccurringEndDate, UserId = userId, CreateDocumentRequests = createDocumentRequests, DocumentLibraryIdsToDelete = deleteDocumentRequests, SendTaskCompletedNotification = sendTaskCompletedNotification, SendTaskNotification = sendTaskNotification, SendTaskOverdueNotification = sendTaskOverdueNotification, SendTaskDueTomorrowNotification = sendTaskDueTomorrowNotification }; if (request.IsReoccurringTask) { request.TaskCompletionDueDate = string.IsNullOrEmpty(taskReoccurringFirstDueDate) ? (DateTime?)null : DateTime.Parse(taskReoccurringFirstDueDate); } else { request.TaskCompletionDueDate = string.IsNullOrEmpty(taskCompletionDueDate) ? (DateTime?)null : DateTime.Parse(taskCompletionDueDate); } return request; }
public void Given_that_update_further_action_task_to_risk_assessment_is_called_with_no_task_assigned_to_Then_should_call_correct_methods() { //Given var target = CreateRiskAssessmentFurtherActionService(); var request = new UpdateFurtherControlMeasureTaskRequest() { TaskAssignedToId = Guid.Empty }; _userRepository .Setup(x => x.GetByIdAndCompanyId(request.UserId, request.CompanyId)) .Returns(_user); var mockFurtherActionTask = new Mock<MultiHazardRiskAssessmentFurtherControlMeasureTask>(); _furtherControlMeasureTaskRepository .Setup(x => x.GetById(request.Id)) .Returns(mockFurtherActionTask.Object); //When target.Update(request); //Then _furtherControlMeasureTaskRepository.Verify(x => x.SaveOrUpdate(mockFurtherActionTask.Object)); _userRepository.VerifyAll(); _employeeRepository.Verify(x => x.GetByIdAndCompanyId(request.TaskAssignedToId, request.CompanyId), Times.Never()); mockFurtherActionTask.Verify(x => x.Update( It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<DateTime?>(), It.IsAny<TaskStatus>(), It.IsAny<List<CreateDocumentParameters>>(), It.IsAny<List<long>>(), It.IsAny<int>(), It.IsAny<DateTime?>(), It.IsAny<Employee>(), It.IsAny<UserForAuditing>(), It.IsAny<bool>(), It.IsAny<bool>(), It.IsAny<bool>(), It.IsAny<bool>() )); }
public void Update(UpdateFurtherControlMeasureTaskRequest request) { _log.Add(request); var furtherControlMeasureTask = _taskRepository.GetById(request.Id); Employee assignedTo = null; if (request.TaskAssignedToId != default(Guid)) assignedTo = _employeeRepository.GetByIdAndCompanyId(request.TaskAssignedToId, request.CompanyId); var user = _userForAuditingRepository.GetByIdAndCompanyId(request.UserId, request.CompanyId); var createDocumentParameterObjects = _documentParameterHelper.GetCreateDocumentParameters(request.CreateDocumentRequests, request.CompanyId); furtherControlMeasureTask.Update(request.Reference, request.Title, request.Description, request.TaskCompletionDueDate, request.TaskStatus, createDocumentParameterObjects, request.DocumentLibraryIdsToDelete, request.TaskReoccurringTypeId, request.TaskReoccurringEndDate, assignedTo, user, request.SendTaskCompletedNotification, request.SendTaskNotification, request.SendTaskOverdueNotification, request.SendTaskDueTomorrowNotification); _taskRepository.SaveOrUpdate(furtherControlMeasureTask); // flush so when bus checks the task to see if have to send notification, it is up to date _taskRepository.Flush(); }
public void When_Update_Then_fields_mapped_to_Task_Update() { //Given var target = CreateRiskAssessmentFurtherActionService(); var request = new UpdateFurtherControlMeasureTaskRequest() { CompanyId = 1234L, CompletedComments = "completed comments", CreateDocumentRequests = new List<CreateDocumentRequest>(), Description = "description", DocumentLibraryIdsToDelete = new List<long>(), Id = 5678L, Reference = "reference", SendTaskCompletedNotification = true, SendTaskNotification = true, SendTaskOverdueNotification = true, TaskAssignedToId = Guid.NewGuid(), TaskCompletionDueDate = DateTime.Now, TaskReoccurringEndDate = DateTime.Now, TaskReoccurringTypeId = 123, TaskStatus = TaskStatus.Completed, Title = "title", UserId = Guid.NewGuid() }; _userRepository .Setup(x => x.GetByIdAndCompanyId(request.UserId, request.CompanyId)) .Returns(_user); var mockFurtherActionTask = new Mock<MultiHazardRiskAssessmentFurtherControlMeasureTask>(); _furtherControlMeasureTaskRepository .Setup(x => x.GetById(request.Id)) .Returns(mockFurtherActionTask.Object); //When target.Update(request); //Then _furtherControlMeasureTaskRepository.Verify(x => x.SaveOrUpdate(mockFurtherActionTask.Object)); _userRepository.VerifyAll(); mockFurtherActionTask.Verify(x => x.Update( request.Reference, request.Title, request.Description, request.TaskCompletionDueDate, request.TaskStatus, It.IsAny<List<CreateDocumentParameters>>(), request.DocumentLibraryIdsToDelete, request.TaskReoccurringTypeId, request.TaskReoccurringEndDate, It.IsAny<Employee>(), It.IsAny<UserForAuditing>(), request.SendTaskCompletedNotification, request.SendTaskNotification, request.SendTaskOverdueNotification, request.SendTaskDueTomorrowNotification )); }
public void Given_that_update_further_action_task_to_risk_assessment_is_called_with_task_assigned_to_Then_flush_task_repo() { //Given var target = CreateRiskAssessmentFurtherActionService(); var request = new UpdateFurtherControlMeasureTaskRequest() { TaskAssignedToId = Guid.NewGuid() }; _userRepository .Setup(x => x.GetByIdAndCompanyId(request.UserId, request.CompanyId)) .Returns(_user); var mockFurtherActionTask = new Mock<MultiHazardRiskAssessmentFurtherControlMeasureTask>(); _furtherControlMeasureTaskRepository .Setup(x => x.GetById(request.Id)) .Returns(mockFurtherActionTask.Object); //When target.Update(request); //Then _furtherControlMeasureTaskRepository.Verify(x => x.Flush(), Times.Once()); }