public void PersonalContactInfo_Post() { LoanApplicationController controller = new LoanApplicationController(null); LoanApplication application = new LoanApplication() { HomeAddress = "test address", HomeCity = "test city", HomePhone = "test phone", HomeState = "test state", HomePostalCode = "test postal" }; #region Mocking Controller Request // Mock Session Object Mock <HttpSessionStateBase> mockSession = new Mock <HttpSessionStateBase>(); // Mock Http Context Request for Controller // because Session doesn't exist unless MVC actually receives a "request" Mock <HttpContextBase> mockContext = new Mock <HttpContextBase>(); // When the Controller calls this.Session it will get a mock session mockContext.Setup(c => c.Session).Returns(mockSession.Object); // Assign the context property on the controller to our mock context which uses our mock session controller.ControllerContext = new ControllerContext(mockContext.Object, new RouteData(), controller); // For more details: https://dontpaniclabs.com/blog/post/2011/03/22/testing-session-in-mvc-in-four-lines-of-code/ #endregion RedirectToRouteResult result = controller.PersonalContactInformation(application) as RedirectToRouteResult; Assert.IsNotNull(result, "Result returned was not of type RedirectToRouteResult"); Assert.AreEqual("WorkContactInformation", result.RouteValues["action"]); }
public void PersonalContactInfo_Get() { LoanApplicationController controller = new LoanApplicationController(null); ViewResult result = controller.PersonalContactInformation() as ViewResult; Assert.IsNotNull(result, "Result returned was not of type ViewResult"); Assert.AreEqual("PersonalContactInformation", result.ViewName); }