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 }
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 }
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 }