public void SuppressFormsAuthenticationRedirect_RequireSuppressRedirect() { // Arrange Mock <HttpContextBase> contextMock = new Mock <HttpContextBase>() { DefaultValue = DefaultValue.Mock }; IDictionary contextItems = new Hashtable(); contextMock.SetupGet(hcb => hcb.Response.StatusCode).Returns(401); contextMock.SetupGet(hcb => hcb.Items).Returns(contextItems); PropertyInfo suppressRedirect = typeof(HttpResponseBase).GetProperty(SuppressFormsAuthRedirectModule.SuppressFormsAuthenticationRedirectPropertyName, BindingFlags.Instance | BindingFlags.Public); // Act HttpControllerHandler.EnsureSuppressFormsAuthenticationRedirect(contextMock.Object); // Assert if (suppressRedirect == null) { // .NET 4.0 Assert.True(contextItems.Contains(SuppressFormsAuthRedirectModule.DisableAuthenticationRedirectKey)); Assert.True((bool)contextItems[SuppressFormsAuthRedirectModule.DisableAuthenticationRedirectKey]); } else { // .NET 4.5 Assert.True((bool)suppressRedirect.GetValue(contextMock.Object, null)); } }
public void SuppressFormsAuthenticationRedirect_RequireSuppressRedirect() { // Arrange Mock <HttpContextBase> contextMock = new Mock <HttpContextBase>() { DefaultValue = DefaultValue.Mock }; IDictionary contextItems = new Hashtable(); contextMock.SetupGet(hcb => hcb.Response.StatusCode).Returns(401); contextMock.SetupGet(hcb => hcb.Items).Returns(contextItems); // Act HttpControllerHandler.EnsureSuppressFormsAuthenticationRedirect(contextMock.Object); // Assert Assert.True(contextMock.Object.Response.SuppressFormsAuthenticationRedirect); }
public void OnEndRequest_IfWebApiControllerReturnsARedirect_DoNothing() { // Arrange HttpResponse response = new HttpResponse(null); IDictionary contextItems = new Hashtable(); Mock <HttpContextBase> contextMock = new Mock <HttpContextBase>() { DefaultValue = DefaultValue.Mock }; DisableRedirectStub disableRedirectStub = new DisableRedirectStub(contextItems, response); contextMock.SetupGet(hcb => hcb.Items).Returns(contextItems); response.StatusCode = 302; // Act HttpControllerHandler.EnsureSuppressFormsAuthenticationRedirect(contextMock.Object); SuppressFormsAuthRedirectModule.AllowAuthenticationRedirect(contextMock.Object); SuppressFormsAuthRedirectModule.EnsureRestoreUnauthorized(disableRedirectStub); // Assert Assert.Equal(302, response.StatusCode); }