public async Task OnRequestAsyncTest() { var apiAction = new DefaultApiActionDescriptor(typeof(ITestApi).GetMethod("PostAsync")); var context = new TestRequestContext(apiAction, string.Empty); var attr = new BasicAuthAttribute("laojiu", "123456"); await attr.OnRequestAsync(context); var auth = Convert.ToBase64String(Encoding.ASCII.GetBytes("laojiu:123456")); Assert.True(context.HttpContext.RequestMessage.Headers.Authorization.Scheme == "Basic"); Assert.True(context.HttpContext.RequestMessage.Headers.Authorization.Parameter == auth); }
public async Task BeforeRequestAsyncTest() { var context = new TestActionContext( httpApi: null, httpApiConfig: new HttpApiConfig(), apiActionDescriptor: new ApiActionDescriptor(typeof(IMyApi).GetMethod("PostAsync"))); var attr = new BasicAuthAttribute("laojiu", "123456"); await attr.BeforeRequestAsync(context); var auth = Convert.ToBase64String(Encoding.ASCII.GetBytes("laojiu:123456")); Assert.True(context.RequestMessage.Headers.Authorization.Parameter == auth); }
public void AHeaderCanBeValidated() { // Arrange var authHeader = "Basic dXNlcjp0aGlzaXNpbmRlZWRhcGFzc3dvcmQ="; var validUserAndPassword = "******"; var basicAuthAttribute = new BasicAuthAttribute(); // Act var isAuthorized = basicAuthAttribute.IsAuthorized( validUserAndPassword, authHeader ); // Assert Assert.True(isAuthorized); }
public void GivenNullHeaderExpectFalse() { // Arrange string authHeader = null; var validUserAndPassword = "******"; var basicAuthAttribute = new BasicAuthAttribute(); // Act var isAuthorized = basicAuthAttribute.IsAuthorized( validUserAndPassword, authHeader ); // Assert Assert.False(isAuthorized); }