public ActionResult Create(Org org) { try { if (ViewData.ModelState.IsValid) { org.LastUpdateTimeStamp = DateTime.Now; org.LastUpdateUser = GetCurrentUser().Id; ActionConfirmation saveOrUpdateConfirmation = _orgManagementService.SaveOrUpdate(org); if (saveOrUpdateConfirmation.WasSuccessful) { TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()] = saveOrUpdateConfirmation.Message; return RedirectToAction("Search"); } } else { org = null; } } catch (PreconditionException pce) { TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()] = pce.Message; } OrgFormViewModel viewModel = _orgManagementService.CreateFormViewModelFor(org); return View(viewModel); }
public void CanCompareOrgs() { var instance = new Org(); instance.Code = "ABCD"; instance.LongDesc = "Description for Agency ABC"; var instanceToCompareTo = new Org(); instanceToCompareTo.Code = "ABCD"; instanceToCompareTo.LongDesc = "Description for Agency ABC"; instance.ShouldEqual(instanceToCompareTo); }
public void CanDeleteOrg() { // Establish Context var orgToDelete = new Org(); _orgRepository.Expect(r => r.Get(1)) .Return(orgToDelete); // Act ActionConfirmation confirmation = _orgManagementService.Delete(1); // Assert confirmation.ShouldNotBeNull(); confirmation.WasSuccessful.ShouldBeTrue(); confirmation.Value.ShouldBeNull(); }
public void CanCreateValidOrgFromForm() { // Establish Context var orgFromForm = new Org(); var testUser = new Person(); testUser.SetAssignedIdTo(1); _authenticationProvider.Expect(r => r.GetLoggedInUser()).Return("user1"); _personManagementService.Expect(r => r.GetByUserName("user1")).Return(testUser); _orgManagementService.Expect(r => r.SaveOrUpdate(orgFromForm)) .Return(ActionConfirmation.CreateSuccessConfirmation("saved")); // Act RedirectToRouteResult redirectResult = _orgsController.Create(orgFromForm) .AssertActionRedirect().ToAction("Search"); // Assert _orgsController.TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()].ToString() .ShouldEqual("saved"); }
public void CannotUpdateInvalidOrgFromForm() { // Establish Context var orgFromForm = new Org(); var viewModelToExpect = new OrgFormViewModel(); var testUser = new Person(); testUser.SetAssignedIdTo(1); _authenticationProvider.Expect(r => r.GetLoggedInUser()).Return("user1"); _personManagementService.Expect(r => r.GetByUserName("user1")).Return(testUser); _orgManagementService.Expect(r => r.UpdateWith(orgFromForm, 0)) .Return(ActionConfirmation.CreateFailureConfirmation("not updated")); _orgManagementService.Expect(r => r.CreateFormViewModelFor(orgFromForm)) .Return(viewModelToExpect); // Act ViewResult result = _orgsController.Edit(orgFromForm).AssertViewRendered(); // Assert result.ViewData.Model.ShouldNotBeNull(); (result.ViewData.Model as OrgFormViewModel).ShouldNotBeNull(); }
public void CanUpdateWithValidOrgFromForm() { // Establish Context Org validOrgFromForm = OrgInstanceFactory.CreateValidTransientOrg(); // Intentionally empty to ensure successful transfer of values var orgFromDb = new Org(); _orgRepository.Expect(r => r.Get(1)) .Return(orgFromDb); // Act ActionConfirmation confirmation = _orgManagementService.UpdateWith(validOrgFromForm, 1); // Assert confirmation.ShouldNotBeNull(); confirmation.WasSuccessful.ShouldBeTrue(); confirmation.Value.ShouldNotBeNull(); confirmation.Value.ShouldEqual(orgFromDb); confirmation.Value.ShouldEqual(validOrgFromForm); }
public void CannotUpdateWithInvalidOrgFromForm() { // Establish Context var invalidOrgFromForm = new Org(); // Intentionally empty to ensure successful transfer of values var orgFromDb = new Org(); _orgRepository.Expect(r => r.Get(1)) .Return(orgFromDb); // Act ActionConfirmation confirmation = _orgManagementService.UpdateWith(invalidOrgFromForm, 1); // Assert confirmation.ShouldNotBeNull(); confirmation.WasSuccessful.ShouldBeFalse(); confirmation.Value.ShouldBeNull(); }
public void CannotSaveOrUpdateInvalidOrg() { // Establish Context var invalidOrg = new Org(); // Act ActionConfirmation confirmation = _orgManagementService.SaveOrUpdate(invalidOrg); // Assert confirmation.ShouldNotBeNull(); confirmation.WasSuccessful.ShouldBeFalse(); confirmation.Value.ShouldBeNull(); }
public OrgFormViewModel CreateFormViewModelFor(Org org) { OrgFormViewModel viewModel = CreateFormViewModel(); viewModel.Org = org; return viewModel; }
private void TransferFormValuesTo(Org orgToUpdate, Org orgFromForm) { orgToUpdate.Code = orgFromForm.Code; orgToUpdate.AgencyId = orgFromForm.AgencyId; //orgToUpdate.Agency = orgFromForm.Agency; orgToUpdate.LongDesc = orgFromForm.LongDesc; orgToUpdate.LastUpdateUser = orgFromForm.LastUpdateUser; orgToUpdate.LastUpdateTimeStamp = orgFromForm.LastUpdateTimeStamp; }
protected void ValidateOrg(Org org) { var example = new Org(); example.Code = org.Code; Check.Require(_orgRepository.GetCountByExample(example, org.Id) == 0, "An Organization with this code already exist."); }
public ActionConfirmation UpdateWith(Org orgFromForm, int idOfOrgToUpdate) { Org orgToUpdate = _orgRepository.Get(idOfOrgToUpdate); ValidateOrg(orgFromForm); TransferFormValuesTo(orgToUpdate, orgFromForm); if (orgToUpdate.IsValid()) { ActionConfirmation updateConfirmation = ActionConfirmation.CreateSuccessConfirmation( "The org was successfully updated."); updateConfirmation.Value = orgToUpdate; return updateConfirmation; } else { _orgRepository.DbContext.RollbackTransaction(); return ActionConfirmation.CreateFailureConfirmation( "The org could not be saved due to missing or invalid information."); } }
public ActionConfirmation SaveOrUpdate(Org org) { if (org.IsValid()) { ValidateOrg(org); _orgRepository.SaveOrUpdate(org); ActionConfirmation saveOrUpdateConfirmation = ActionConfirmation.CreateSuccessConfirmation( "The org was successfully saved."); saveOrUpdateConfirmation.Value = org; return saveOrUpdateConfirmation; } else { _orgRepository.DbContext.RollbackTransaction(); return ActionConfirmation.CreateFailureConfirmation( "The org could not be saved due to missing or invalid information."); } }