コード例 #1
0
ファイル: SupportTeamTests.cs プロジェクト: ryantornberg/wrms
        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);
        }
コード例 #2
0
        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();
        }
コード例 #3
0
        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");
        }
コード例 #4
0
        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);
        }
コード例 #5
0
        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();
        }
コード例 #6
0
        public void CannotSaveOrUpdateInvalidSupportTeam()
        {
            // Establish Context
            var invalidSupportTeam = new SupportTeam();

            // Act
            ActionConfirmation confirmation =
                supportTeamManagementService.SaveOrUpdate(invalidSupportTeam);

            // Assert
            confirmation.ShouldNotBeNull();
            confirmation.WasSuccessful.ShouldBeFalse();
            confirmation.Value.ShouldBeNull();
        }
コード例 #7
0
        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();
        }
コード例 #8
0
 public SupportTeamFormViewModel CreateFormViewModelFor(SupportTeam supportTeam)
 {
     var viewModel = new SupportTeamFormViewModel { SupportTeam = supportTeam };
     LoadViewModel(viewModel);
     return viewModel;
 }
コード例 #9
0
 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;
 }
コード例 #10
0
        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.");
            }
        }
コード例 #11
0
        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.");
            }
        }