public ActionResult Create(RequestType requestType) { if (ViewData.ModelState.IsValid) { requestType.LastUpdateTimeStamp = DateTime.Now; requestType.LastUpdateUser = GetCurrentUser().Id; ActionConfirmation saveOrUpdateConfirmation = _requestTypeManagementService.SaveOrUpdate(requestType); if (saveOrUpdateConfirmation.WasSuccessful) { TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()] = saveOrUpdateConfirmation.Message; return RedirectToAction("Index"); } } else { requestType = null; } RequestTypeFormViewModel viewModel = _requestTypeManagementService.CreateFormViewModelFor(requestType); return View(viewModel); }
public void CanCompareRequestTypes() { var instance = new RequestType(); instance.Code = "ABC"; instance.LongDesc = "Description for type"; var instanceToCompareTo = new RequestType(); instanceToCompareTo.Code = "ABC"; instanceToCompareTo.LongDesc = "Description for type"; instance.ShouldEqual(instanceToCompareTo); }
public void CanCreateValidRequestTypeFromForm() { // Establish Context var requestTypeFromForm = new RequestType(); var testUser = PersonInstanceFactory.CreateValidTransientPerson(); testUser.SetAssignedIdTo(1); _authenticationProvider.Expect(r => r.GetLoggedInUser()).Return("testuser"); _personManagementService.Expect(r => r.GetByUserName(Arg<string>.Is.Anything)).Return(testUser); _requestTypeManagementService.Expect(r => r.SaveOrUpdate(requestTypeFromForm)) .Return(ActionConfirmation.CreateSuccessConfirmation("saved")); // Act RedirectToRouteResult redirectResult = _requestTypesController.Create(requestTypeFromForm) .AssertActionRedirect().ToAction("Index"); // Assert _requestTypesController.TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()].ToString() .ShouldEqual("saved"); }
public ActionConfirmation SaveOrUpdate(RequestType requestType) { if (requestType.IsValid()) { _requestTypeRepository.SaveOrUpdate(requestType); ActionConfirmation saveOrUpdateConfirmation = ActionConfirmation.CreateSuccessConfirmation( "The requestType was successfully saved."); saveOrUpdateConfirmation.Value = requestType; return saveOrUpdateConfirmation; } else { _requestTypeRepository.DbContext.RollbackTransaction(); return ActionConfirmation.CreateFailureConfirmation( "The requestType could not be saved due to missing or invalid information."); } }
public RequestTypeFormViewModel CreateFormViewModelFor(RequestType requestType) { RequestTypeFormViewModel viewModel = CreateFormViewModel(); viewModel.RequestType = requestType; return viewModel; }
private void TransferFormValuesTo(RequestType requestTypeToUpdate, RequestType requestTypeFromForm) { requestTypeToUpdate.Code = requestTypeFromForm.Code; requestTypeToUpdate.LongDesc = requestTypeFromForm.LongDesc; requestTypeToUpdate.LastUpdateTimeStamp = requestTypeFromForm.LastUpdateTimeStamp; requestTypeToUpdate.LastUpdateUser = requestTypeFromForm.LastUpdateUser; }
public ActionConfirmation UpdateWith(RequestType requestTypeFromForm, int idOfRequestTypeToUpdate) { RequestType requestTypeToUpdate = _requestTypeRepository.Get(idOfRequestTypeToUpdate); TransferFormValuesTo(requestTypeToUpdate, requestTypeFromForm); if (requestTypeToUpdate.IsValid()) { ActionConfirmation updateConfirmation = ActionConfirmation.CreateSuccessConfirmation( "The requestType was successfully updated."); updateConfirmation.Value = requestTypeToUpdate; return updateConfirmation; } else { _requestTypeRepository.DbContext.RollbackTransaction(); return ActionConfirmation.CreateFailureConfirmation( "The requestType could not be saved due to missing or invalid information."); } }
public void CannotUpdateInvalidRequestTypeFromForm() { // Establish Context var requestTypeFromForm = new RequestType(); var viewModelToExpect = new RequestTypeFormViewModel(); var testUser = PersonInstanceFactory.CreateValidTransientPerson(); testUser.SetAssignedIdTo(1); _authenticationProvider.Expect(r => r.GetLoggedInUser()).Return("testuser"); _personManagementService.Expect(r => r.GetByUserName(Arg<string>.Is.Anything)).Return(testUser); _requestTypeManagementService.Expect(r => r.UpdateWith(requestTypeFromForm, 0)) .Return(ActionConfirmation.CreateFailureConfirmation("not updated")); _requestTypeManagementService.Expect(r => r.CreateFormViewModelFor(requestTypeFromForm)) .Return(viewModelToExpect); // Act ViewResult result = _requestTypesController.Edit(requestTypeFromForm).AssertViewRendered(); // Assert result.ViewData.Model.ShouldNotBeNull(); (result.ViewData.Model as RequestTypeFormViewModel).ShouldNotBeNull(); }