Пример #1
0
        public void TestEditPostSavesWhenValid()
        {
            #region Arrange
            Controller.ControllerContext.HttpContext = new MockHttpContext(0, new[] { "" }, "Me");
            SetupData2();
            SetupData3();
            var autoApprovalToEdit = CreateValidEntities.AutoApproval(99);
            autoApprovalToEdit.SetIdTo(99);
            autoApprovalToEdit.MaxAmount  = (decimal)12.44;
            autoApprovalToEdit.TargetUser = null;
            autoApprovalToEdit.Account    = CreateValidEntities.Account(9);
            autoApprovalToEdit.User       = null;
            var saveLessThan = AutoApprovalRepository.GetNullableById(3).LessThan;
            autoApprovalToEdit.LessThan = !saveLessThan;
            #endregion Arrange

            #region Act
            var result = Controller.Edit(3, autoApprovalToEdit, true)
                         .AssertActionRedirect()
                         .ToAction <AutoApprovalController>(a => a.Index(true));
            #endregion Act

            #region Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(true, result.RouteValues["showAll"]);

            AutoApprovalRepository.AssertWasCalled(a => a.EnsurePersistent(Arg <AutoApproval> .Is.Anything));
            var args = (AutoApproval)AutoApprovalRepository.GetArgumentsForCallsMadeOn(a => a.EnsurePersistent(Arg <AutoApproval> .Is.Anything))[0][0];
            Assert.AreEqual(3, args.Id);
            Assert.AreEqual((decimal)12.44, args.MaxAmount);
            Assert.IsNotNull(args.User);
            Assert.AreNotEqual(args.LessThan, saveLessThan);
            Assert.AreEqual("AutoApproval Edited Successfully", Controller.Message);
            #endregion Assert
        }
Пример #2
0
        public void TestCreatePostRedirectsWhenValid7()
        {
            #region Arrange
            Controller.ControllerContext.HttpContext = new MockHttpContext(0, new[] { "" }, "Me");
            SetupData2();
            var autoApprovalToCreate = CreateValidEntities.AutoApproval(9);
            autoApprovalToCreate.User       = null;
            autoApprovalToCreate.TargetUser = CreateValidEntities.User(66);
            autoApprovalToCreate.Account    = null;
            autoApprovalToCreate.MaxAmount  = (decimal)765.32;
            autoApprovalToCreate.LessThan   = false;
            autoApprovalToCreate.Equal      = true;
            autoApprovalToCreate.Expiration = DateTime.UtcNow.ToPacificTime().Date.AddDays(1);
            #endregion Arrange

            #region Act
            var result = Controller.Create(autoApprovalToCreate, true)
                         .AssertActionRedirect()
                         .ToAction <AutoApprovalController>(a => a.Index(true));
            #endregion Act

            #region Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(true, result.RouteValues["showAll"]);
            AutoApprovalRepository.AssertWasCalled(a => a.EnsurePersistent(Arg <AutoApproval> .Is.Anything));
            var args = (AutoApproval)AutoApprovalRepository.GetArgumentsForCallsMadeOn(a => a.EnsurePersistent(Arg <AutoApproval> .Is.Anything))[0][0];
            Assert.IsNotNull(args);
            Assert.AreEqual("Me", args.User.Id);
            Assert.AreEqual((decimal)765.32, args.MaxAmount);
            Assert.IsFalse(args.LessThan);
            Assert.IsTrue(args.Equal);
            Assert.AreEqual("LastName66", args.TargetUser.LastName);
            Assert.IsNull(args.Account);
            Assert.AreEqual(DateTime.UtcNow.ToPacificTime().Date.AddDays(1), args.Expiration);
            Assert.AreEqual("AutoApproval Created Successfully Warning, will expire in 5 days or less", Controller.Message);
            #endregion Assert
        }
Пример #3
0
        public void TestDeletePostRedirectsToErrorWhenValid()
        {
            #region Arrange
            Controller.ControllerContext.HttpContext = new MockHttpContext(0, new[] { "" }, "Me");
            SetupData3();
            #endregion Arrange

            #region Act
            var result = Controller.Delete(3, new AutoApproval(), true)
                         .AssertActionRedirect()
                         .ToAction <AutoApprovalController>(a => a.Index(true));
            #endregion Act

            #region Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(true, result.RouteValues["showAll"]);
            Assert.AreEqual("AutoApproval Deactivated Successfully", Controller.Message);
            AutoApprovalRepository.AssertWasCalled(a => a.EnsurePersistent(Arg <AutoApproval> .Is.Anything));
            var args = (AutoApproval)AutoApprovalRepository.GetArgumentsForCallsMadeOn(a => a.EnsurePersistent(Arg <AutoApproval> .Is.Anything))[0][0];
            Assert.IsNotNull(args);
            Assert.IsFalse(args.IsActive);
            AutoApprovalRepository.AssertWasNotCalled(a => a.Remove(Arg <AutoApproval> .Is.Anything));
            #endregion Assert
        }