public void CanCompareSupportTeams() { var instance = new SupportTeam { TeamName = "Team 1", PhoneNumber = "123-4567", SupervisorId = 1 }; var instanceToCompareTo = new SupportTeam { TeamName = "Team 1", PhoneNumber = "123-4567", SupervisorId = 1 }; instance.ShouldEqual(instanceToCompareTo); }
public void CanDeleteSupportTeam() { // Establish Context var supportTeamToDelete = new SupportTeam(); supportTeamRepository.Expect(r => r.Get(1)) .Return(supportTeamToDelete); // Act ActionConfirmation confirmation = supportTeamManagementService.Delete(1); // Assert confirmation.ShouldNotBeNull(); confirmation.WasSuccessful.ShouldBeTrue(); confirmation.Value.ShouldBeNull(); }
public void CanCreateValidSupportTeamFromForm() { // Establish Context var supportTeamFromForm = new SupportTeam(); var testUser = new Person(); testUser.SetAssignedIdTo(1); _authenticationProvider.Expect(r => r.GetLoggedInUser()).Return("user1"); _personManagementService.Expect(r => r.GetByUserName("user1")).Return(testUser); supportTeamManagementService.Expect(r => r.SaveOrUpdate(supportTeamFromForm)) .Return(ActionConfirmation.CreateSuccessConfirmation("saved")); // Act RedirectToRouteResult redirectResult = supportTeamsController.Create(supportTeamFromForm) .AssertActionRedirect().ToAction("Search"); // Assert supportTeamsController.TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()].ToString() .ShouldEqual("saved"); }
public void CanUpdateWithValidSupportTeamFromForm() { // Establish Context SupportTeam validSupportTeamFromForm = SupportTeamInstanceFactory.CreateValidTransientSupportTeam(); // Intentionally empty to ensure successful transfer of values var supportTeamFromDb = new SupportTeam(); supportTeamRepository.Expect(r => r.Get(1)) .Return(supportTeamFromDb); // Act ActionConfirmation confirmation = supportTeamManagementService.UpdateWith(validSupportTeamFromForm, 1); // Assert confirmation.ShouldNotBeNull(); confirmation.WasSuccessful.ShouldBeTrue(); confirmation.Value.ShouldNotBeNull(); confirmation.Value.ShouldEqual(supportTeamFromDb); confirmation.Value.ShouldEqual(validSupportTeamFromForm); }
public void CannotUpdateWithInvalidSupportTeamFromForm() { // Establish Context var invalidSupportTeamFromForm = new SupportTeam(); // Intentionally empty to ensure successful transfer of values var supportTeamFromDb = new SupportTeam(); supportTeamRepository.Expect(r => r.Get(1)) .Return(supportTeamFromDb); // Act ActionConfirmation confirmation = supportTeamManagementService.UpdateWith(invalidSupportTeamFromForm, 1); // Assert confirmation.ShouldNotBeNull(); confirmation.WasSuccessful.ShouldBeFalse(); confirmation.Value.ShouldBeNull(); }
public void CannotSaveOrUpdateInvalidSupportTeam() { // Establish Context var invalidSupportTeam = new SupportTeam(); // Act ActionConfirmation confirmation = supportTeamManagementService.SaveOrUpdate(invalidSupportTeam); // Assert confirmation.ShouldNotBeNull(); confirmation.WasSuccessful.ShouldBeFalse(); confirmation.Value.ShouldBeNull(); }
public void CannotUpdateInvalidSupportTeamFromForm() { // Establish Context var supportTeamFromForm = new SupportTeam(); var viewModelToExpect = new SupportTeamFormViewModel(); var testUser = new Person(); testUser.SetAssignedIdTo(1); _authenticationProvider.Expect(r => r.GetLoggedInUser()).Return("user1"); _personManagementService.Expect(r => r.GetByUserName("user1")).Return(testUser); supportTeamManagementService.Expect(r => r.UpdateWith(supportTeamFromForm, 0)) .Return(ActionConfirmation.CreateFailureConfirmation("not updated")); supportTeamManagementService.Expect(r => r.CreateFormViewModelFor(supportTeamFromForm)) .Return(viewModelToExpect); // Act ViewResult result = supportTeamsController.Edit(supportTeamFromForm).AssertViewRendered(); // Assert result.ViewData.Model.ShouldNotBeNull(); (result.ViewData.Model as SupportTeamFormViewModel).ShouldNotBeNull(); }
public SupportTeamFormViewModel CreateFormViewModelFor(SupportTeam supportTeam) { var viewModel = new SupportTeamFormViewModel { SupportTeam = supportTeam }; LoadViewModel(viewModel); return viewModel; }
private void TransferFormValuesTo(SupportTeam supportTeamToUpdate, SupportTeam supportTeamFromForm) { supportTeamToUpdate.TeamName = supportTeamFromForm.TeamName; supportTeamToUpdate.PhoneNumber = supportTeamFromForm.PhoneNumber; supportTeamToUpdate.SupervisorId = supportTeamFromForm.SupervisorId; supportTeamToUpdate.LastUpdateTimeStamp = supportTeamFromForm.LastUpdateTimeStamp; supportTeamToUpdate.LastUpdateUser = supportTeamFromForm.LastUpdateUser; }
public ActionConfirmation UpdateWith(SupportTeam supportTeamFromForm, int idOfSupportTeamToUpdate) { SupportTeam supportTeamToUpdate = _supportTeamRepository.Get(idOfSupportTeamToUpdate); TransferFormValuesTo(supportTeamToUpdate, supportTeamFromForm); if (supportTeamToUpdate.IsValid()) { ActionConfirmation updateConfirmation = ActionConfirmation.CreateSuccessConfirmation( "The support team was successfully updated."); updateConfirmation.Value = supportTeamToUpdate; return updateConfirmation; } else { _supportTeamRepository.DbContext.RollbackTransaction(); return ActionConfirmation.CreateFailureConfirmation( "The support team could not be saved due to missing or invalid information."); } }
public ActionConfirmation SaveOrUpdate(SupportTeam supportTeam) { if (supportTeam.IsValid()) { _supportTeamRepository.SaveOrUpdate(supportTeam); ActionConfirmation saveOrUpdateConfirmation = ActionConfirmation.CreateSuccessConfirmation( "The support team was successfully saved."); saveOrUpdateConfirmation.Value = supportTeam; return saveOrUpdateConfirmation; } else { _supportTeamRepository.DbContext.RollbackTransaction(); return ActionConfirmation.CreateFailureConfirmation( "The support team could not be saved due to missing or invalid information."); } }