public void When_Complete_Then_tell_service_to_send_notification_email() { // Given var target = GetTarget(); var taskId = 123L; var companyId = 1234L; var model = new CompleteActionTaskViewModel { ActionTaskId = taskId, CompanyId = companyId }; // When target.Complete(model, new DocumentsToSaveViewModel()); // Then _actionTaskService.Verify(x => x.SendTaskCompletedNotificationEmail(It.Is<long>(a => a == taskId),It.Is<long>(b=>b==companyId))); }
public JsonResult Complete(CompleteActionTaskViewModel viewModel, DocumentsToSaveViewModel documentsToSaveViewModel) { if (!ModelState.IsValid) { throw new ArgumentException("Invalid Arguments To Complete Action Task"); } var request = new CompleteActionTaskRequest { CompanyId = viewModel.CompanyId, ActionTaskId = viewModel.ActionTaskId, CompletedComments = viewModel.CompletedComments, UserId = CurrentUser.UserId, CreateDocumentRequests = documentsToSaveViewModel.CreateDocumentRequests, DocumentLibraryIdsToDelete = documentsToSaveViewModel.DeleteDocumentRequests, CompletedDate = DateTimeOffset.Now }; using (var session = _businessSafeSessionManager.Session) { _actionTaskService.Complete(request); _businessSafeSessionManager.CloseSession(); } using (var session = _businessSafeSessionManager.Session) { _actionTaskService.SendTaskCompletedNotificationEmail(request.ActionTaskId,request.CompanyId); _businessSafeSessionManager.CloseSession(); } return Json(new { Success = true, Id = viewModel.ActionTaskId }); }