React to authentication API changes.

This commit is contained in:
Chris Ross 2015-04-24 10:53:50 -07:00
parent 0bfebf7fac
commit 98614736a7
4 changed files with 14 additions and 12 deletions

View File

@ -46,17 +46,17 @@ namespace Microsoft.AspNet.Mvc
public override void ExecuteResult([NotNull] ActionContext context)
{
var response = context.HttpContext.Response;
var auth = context.HttpContext.Authentication;
if (AuthenticationSchemes.Count > 0)
{
foreach (var scheme in AuthenticationSchemes)
{
response.Challenge(Properties, scheme);
auth.Challenge(scheme, Properties);
}
}
else
{
response.Challenge(Properties);
auth.Challenge(Properties);
}
}
}

View File

@ -38,7 +38,7 @@ namespace Microsoft.AspNet.Mvc
var newPrincipal = new ClaimsPrincipal();
foreach (var scheme in Policy.ActiveAuthenticationSchemes)
{
var result = (await context.HttpContext.AuthenticateAsync(scheme))?.Principal;
var result = (await context.HttpContext.Authentication.AuthenticateAsync(scheme))?.Principal;
if (result != null)
{
newPrincipal.AddIdentities(result.Identities);

View File

@ -18,8 +18,8 @@ namespace Microsoft.AspNet.Mvc.Core.Test.ActionResults
// Arrange
var result = new ChallengeResult("", null);
var httpContext = new Mock<HttpContext>();
var httpResponse = new Mock<HttpResponse>();
httpContext.Setup(o => o.Response).Returns(httpResponse.Object);
var auth = new Mock<AuthenticationManager>();
httpContext.Setup(o => o.Authentication).Returns(auth.Object);
var routeData = new RouteData();
routeData.Routers.Add(Mock.Of<IRouter>());
@ -32,7 +32,7 @@ namespace Microsoft.AspNet.Mvc.Core.Test.ActionResults
result.ExecuteResult(actionContext);
// Assert
httpResponse.Verify(c => c.Challenge(null, ""), Times.Exactly(1));
auth.Verify(c => c.Challenge("", null), Times.Exactly(1));
}
[Fact]
@ -41,8 +41,8 @@ namespace Microsoft.AspNet.Mvc.Core.Test.ActionResults
// Arrange
var result = new ChallengeResult(new string[] { }, null);
var httpContext = new Mock<HttpContext>();
var httpResponse = new Mock<HttpResponse>();
httpContext.Setup(o => o.Response).Returns(httpResponse.Object);
var auth = new Mock<AuthenticationManager>();
httpContext.Setup(o => o.Authentication).Returns(auth.Object);
var routeData = new RouteData();
routeData.Routers.Add(Mock.Of<IRouter>());
@ -55,7 +55,7 @@ namespace Microsoft.AspNet.Mvc.Core.Test.ActionResults
result.ExecuteResult(actionContext);
// Assert
httpResponse.Verify(c => c.Challenge((AuthenticationProperties)null), Times.Exactly(1));
auth.Verify(c => c.Challenge((AuthenticationProperties)null), Times.Exactly(1));
}
}
}

View File

@ -352,14 +352,16 @@ namespace Microsoft.AspNet.Mvc.Test
// HttpContext
var httpContext = new Mock<HttpContext>();
var auth = new Mock<AuthenticationManager>();
httpContext.Setup(o => o.Authentication).Returns(auth.Object);
httpContext.SetupProperty(c => c.User);
if (!anonymous)
{
httpContext.Object.User = validUser;
}
httpContext.SetupGet(c => c.RequestServices).Returns(serviceProvider);
httpContext.Setup(c => c.AuthenticateAsync("Bearer")).ReturnsAsync(new AuthenticationResult(bearerPrincipal, new AuthenticationProperties(), new AuthenticationDescription()));
httpContext.Setup(c => c.AuthenticateAsync("Basic")).ReturnsAsync(new AuthenticationResult(basicPrincipal, new AuthenticationProperties(), new AuthenticationDescription()));
auth.Setup(c => c.AuthenticateAsync("Bearer")).ReturnsAsync(new AuthenticationResult(bearerPrincipal, new AuthenticationProperties(), new AuthenticationDescription()));
auth.Setup(c => c.AuthenticateAsync("Basic")).ReturnsAsync(new AuthenticationResult(basicPrincipal, new AuthenticationProperties(), new AuthenticationDescription()));
// AuthorizationContext
var actionContext = new ActionContext(