Пример #1
0
        public async Task UnauthorizedBasicTestWithOptions()
        {
            using var server        = new TestServer(WebHostBuilderHelper.CreateBuilder(o => { }));
            using HttpClient client = server.CreateClient();

            // Act
            HttpResponseMessage response = await client.GetAsync("api/test");

            // Assert
            Assert.AreEqual(HttpStatusCode.Unauthorized, response.StatusCode, "StatusCode != Unauthorized");
        }
Пример #2
0
        public async Task AuthorizedCredentialsTestWithDi()
        {
            using var server        = new TestServer(WebHostBuilderHelper.CreateBuilder());
            using HttpClient client = server.CreateClient();

            // Arrange
            client.DefaultRequestHeaders.Add(HeaderNames.Authorization, AuthorizationHeaderHelper.GetBasic());

            // Act
            HttpResponseMessage response = await client.GetAsync("api/test");

            // Assert
            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "StatusCode != OK");
        }
Пример #3
0
        public async Task UnauthorizedBasicRealmTestWithOptions()
        {
            using var server        = new TestServer(WebHostBuilderHelper.CreateBuilder(o => { }));
            using HttpClient client = server.CreateClient();

            // Act
            HttpResponseMessage response = await client.GetAsync("api/test");

            // Assert
            AuthenticationHeaderValue wwwAuth = response.Headers.WwwAuthenticate.Single();
            NameValueHeaderValue      nvh     = NameValueHeaderValue.Parse(wwwAuth.Parameter);

            Assert.AreEqual(HttpStatusCode.Unauthorized, response.StatusCode, "StatusCode != Unauthorized");
            Assert.AreEqual("Basic", wwwAuth.Scheme, "Scheme != Basic");
            Assert.AreEqual("realm", nvh.Name, "!realm");
            Assert.AreEqual("\"Basic Realm\"", nvh.Value, "!basic realm");
        }
Пример #4
0
        public async Task UnauthorizedMyRealmTestAjaxRequestSuppressed()
        {
            using var server = new TestServer(WebHostBuilderHelper.CreateBuilder(o =>
            {
                o.Realm = "My realm";
                o.AjaxRequestOptions.SuppressWwwAuthenticateHeader = true;
            }));
            using HttpClient client = server.CreateClient();
            client.DefaultRequestHeaders.Add(Basic.BasicAuthenticationDefaults.AjaxRequestHeaderName, Basic.BasicAuthenticationDefaults.AjaxRequestHeaderValue);

            // Act
            HttpResponseMessage response = await client.GetAsync("api/test");

            // Assert
            AuthenticationHeaderValue wwwAuth = response.Headers.WwwAuthenticate.SingleOrDefault();

            Assert.AreEqual(HttpStatusCode.Unauthorized, response.StatusCode, "StatusCode != Unauthorized");
            Assert.IsNull(wwwAuth, "No header should be sent back on ajax request");
        }
Пример #5
0
        public async Task UnauthorizedValidCredentialsTest()
        {
            using (var server = new TestServer(WebHostBuilderHelper.CreateBuilder(o => { })))
            {
                using (HttpClient client = server.CreateClient())
                {
                    // Arrange
                    client.DefaultRequestHeaders.Add(HeaderNames.Authorization, AuthorizationHeaderHelper.GetBasic());

                    // Act
                    HttpResponseMessage response = await client.GetAsync("api/test");

                    // Assert
                    AuthenticationHeaderValue wwwAuth = response.Headers.WwwAuthenticate.Single();
                    NameValueHeaderValue      nvh     = NameValueHeaderValue.Parse(wwwAuth.Parameter);

                    Assert.AreEqual(HttpStatusCode.Unauthorized, response.StatusCode, "StatusCode != Unauthorized");
                    Assert.AreEqual("Basic", wwwAuth.Scheme, "Scheme != Basic");
                    Assert.AreEqual("realm", nvh.Name, "!realm");
                    Assert.AreEqual("\"Basic Realm\"", nvh.Value, "!basic realm");
                }
            }
        }