public ActionResult DeletePost(DeleteVacancyViewModel vacancyViewModel) { var response = _vacancyManagementMediator.Delete(vacancyViewModel); SetUserMessage(response.Message); return(RedirectToRoute(RecruitmentRouteNames.RecruitmentHome, vacancyViewModel.RouteValues)); }
public ActionResult DeleteGet(DeleteVacancyViewModel vacancyViewModel) { var result = _vacancyManagementMediator.ConfirmDelete(vacancyViewModel); if (result.Code == VacancyManagementMediatorCodes.ConfirmDelete.NotFound) { return(HttpNotFound()); } return(View(result.ViewModel)); }
public void ShouldReturnAErrorIfTheVacancyIsMissing() { // Arrange var viewModel = new DeleteVacancyViewModel(); MockVacancyManagementProvider.Setup(x => x.FindSummary(It.IsAny <int>())).Returns(new ServiceResult <VacancySummary>(VacancyManagementServiceCodes.FindSummary.NotFound, null)); var sut = GetMediator(); // Act var response = sut.ConfirmDelete(viewModel); // Assert Assert.AreEqual(VacancyManagementMediatorCodes.ConfirmDelete.NotFound, response.Code); MockVacancyManagementProvider.Verify(x => x.FindSummary(It.IsAny <int>())); }
public MediatorResponse <DeleteVacancyViewModel> ConfirmDelete(DeleteVacancyViewModel vacancyViewModel) { var serviceResult = _vacancyManagementProvider.FindSummary(vacancyViewModel.VacancyId); if (serviceResult.Code == VacancyManagementServiceCodes.FindSummary.Ok) { vacancyViewModel.VacancyTitle = serviceResult.Result.Title; return(GetMediatorResponse(VacancyManagementMediatorCodes.ConfirmDelete.Ok, vacancyViewModel)); } if (serviceResult.Code == VacancyManagementServiceCodes.FindSummary.NotFound) { return(GetMediatorResponse(VacancyManagementMediatorCodes.ConfirmDelete.NotFound, vacancyViewModel)); } return(GetMediatorResponse(serviceResult.Code, vacancyViewModel)); }
public void ShouldReturnAFailureIfDeletingAVacancyHasAnyTypeOfError() { // Arrange var viewModel = new DeleteVacancyViewModel(); MockVacancyManagementProvider.Setup(x => x.Delete(It.IsAny <int>())).Returns(new ServiceResult(VacancyManagementServiceCodes.Delete.VacancyInIncorrectState)); var sut = GetMediator(); // Act var response = sut.Delete(viewModel); // Assert Assert.AreEqual(VacancyManagementMediatorCodes.DeleteVacancy.Failure, response.Code); Assert.AreEqual(UserMessageLevel.Error, response.Message.Level); MockVacancyManagementProvider.Verify(x => x.Delete(It.IsAny <int>())); }
public void ShouldHaveAGoodResultIfDeletingAVacancyServiceWasOk() { // Arrange var viewModel = new DeleteVacancyViewModel(); MockVacancyManagementProvider.Setup(x => x.Delete(It.IsAny <int>())).Returns(new ServiceResult(VacancyManagementServiceCodes.Delete.Ok)); var sut = GetMediator(); // Act var response = sut.Delete(viewModel); // Assert Assert.AreEqual(VacancyManagementMediatorCodes.DeleteVacancy.Ok, response.Code); Assert.AreNotEqual(UserMessageLevel.Error, response.Message.Level); MockVacancyManagementProvider.Verify(x => x.Delete(It.IsAny <int>())); }
public void ShouldFindASummaryAndReturnOk() { // Arrange var viewModel = new DeleteVacancyViewModel(); MockVacancyManagementProvider.Setup(x => x.FindSummary(It.IsAny <int>())).Returns(new ServiceResult <VacancySummary>(VacancyManagementServiceCodes.FindSummary.Ok, new VacancySummary() { Title = "title" })); var sut = GetMediator(); // Act var response = sut.ConfirmDelete(viewModel); // Assert Assert.AreEqual(VacancyManagementMediatorCodes.ConfirmDelete.Ok, response.Code); Assert.That(response.ViewModel.VacancyTitle, Is.Not.Null.And.Not.Empty); MockVacancyManagementProvider.Verify(x => x.FindSummary(It.IsAny <int>())); }
public MediatorResponse <DeleteVacancyViewModel> Delete(DeleteVacancyViewModel vacancyViewModel) { MediatorResponseMessage message; var result = _vacancyManagementProvider.Delete(vacancyViewModel.VacancyId); var vacancyTitle = string.IsNullOrEmpty(vacancyViewModel.VacancyTitle) ? "(No Title)" : vacancyViewModel.VacancyTitle; if (result.Code == VacancyManagementServiceCodes.Delete.Ok) { message = new MediatorResponseMessage { Text = $"You have deleted {vacancyTitle} vacancy" }; return(GetMediatorResponse(VacancyManagementMediatorCodes.DeleteVacancy.Ok, vacancyViewModel, null, null, message)); } message = new MediatorResponseMessage { Text = $"There was a problem deleting {vacancyTitle} vacancy", Level = UserMessageLevel.Error }; return(GetMediatorResponse(VacancyManagementMediatorCodes.DeleteVacancy.Failure, vacancyViewModel, null, null, message)); }