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);
        }
Esempio n. 2
0
        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);
        }