public void RedirectToActionResult_ThrowsIsTypeException_WhenIActionResultIsNotRedirectToActionResult() { // Arrange var mockActionResult = new Mock <IActionResult>(MockBehavior.Strict); // Act & Assert Assert.Throws <IsTypeException>(() => MvcAssert.RedirectToActionResult(mockActionResult.Object, "Index")); }
public void RedirectToActionResult_ThrowsEqualException_WhenActionNameNotEqual() { // Arrange var redirectToActionResult = new RedirectToActionResult("Index", null, null); // Act & Assert Assert.Throws <EqualException>( () => MvcAssert.RedirectToActionResult( redirectToActionResult, "NotIndex" ) ); }
public void RedirectToActionResult_ThrowsEqualException_WhenRouteValuesNotEqual() { // Arrange var redirectToActionResult = new RedirectToActionResult("Index", "Home", new { ReturnUrl = "ReturnUrl" }); // Act & Assert Assert.Throws <EqualException>( () => MvcAssert.RedirectToActionResult( redirectToActionResult, "Index", "Home", new List <KeyValuePair <string, object> > { new KeyValuePair <string, object>("ReturnUrl", "NotReturnUrl") } ) ); }
public void RedirectToLocal_Success(string returnUrl, bool isLocalUrl, string actionName, string controllerName) { // Arrange var mockUrlHelper = new Mock <IUrlHelper>(MockBehavior.Strict); mockUrlHelper .Setup(x => x.IsLocalUrl(returnUrl)) .Returns(isLocalUrl) .Verifiable(); _mockController.Object.Url = mockUrlHelper.Object; if (_mockController.Object.Url.IsLocalUrl(returnUrl)) { _mockController .Setup(x => x.Redirect(returnUrl)) .Returns(() => new RedirectResult(returnUrl)) .Verifiable(); } else { _mockController .Setup(x => x.RedirectToAction(actionName, controllerName)) .Returns(() => new RedirectToActionResult(actionName, controllerName, null)) .Verifiable(); } // Act var actionResult = _mockController.Object.RedirectToLocal(returnUrl, actionName, controllerName); // Assert mockUrlHelper.Verify(); _mockController.Verify(); if (_mockController.Object.Url.IsLocalUrl(returnUrl)) { MvcAssert.RedirectResult(actionResult, returnUrl); } else { MvcAssert.RedirectToActionResult(actionResult, actionName, controllerName); } }
public void Index_WhenHostingEnvironmentIsNotDevelopment_RedirectToActionResult(string returnUrl) { // Arrange var controller = new HomeController(new NullLogger <HomeController>(), new HostingEnvironment()); // Act var actionResult = controller.Index(returnUrl); // Assert MvcAssert.RedirectToActionResult( actionResult, "Index", "SignIn", new List <KeyValuePair <string, object> > { new KeyValuePair <string, object>("ReturnUrl", returnUrl) } ); }
public void RedirectToActionResult_ReturnRedirectToActionResult() { // Arrange var redirectToActionResult = new RedirectToActionResult("Index", "Home", new { ReturnUrl = "ReturnUrl" }); // Act & Assert var result = Assert.IsType <RedirectToActionResult>( MvcAssert.RedirectToActionResult( redirectToActionResult, "Index", "Home", new List <KeyValuePair <string, object> > { new KeyValuePair <string, object>("ReturnUrl", "ReturnUrl") } ) ); Assert.Equal(redirectToActionResult, result); }