예제 #1
0
        public async Task TestPreloadedRequest(string preloadHostComponent)
        {
            var store = new InMemoryHstsStore();

            store.Update(preloadHostComponent, true, true, int.MaxValue);

            using (var client = new HttpClient(new HstsHandler(store, innerHandler: TestResponseHandlerBuilder.Build())))
            {
                var httpUri  = new Uri("http://" + preloadHostComponent);
                var httpsUri = new Uri("https://" + preloadHostComponent);

                // Request will always be made to HTTPS, even when attempting HTTP
                var response = await client.GetAsync(httpUri);

                Assert.Equal(httpsUri, response.RequestMessage.RequestUri);
            }
        }
예제 #2
0
        public async Task TestNonHstsRequest(string hostComponent)
        {
            using (var client = new HttpClient(new HstsHandler(new InMemoryHstsStore(), innerHandler: TestResponseHandlerBuilder.Build())))
            {
                var httpUri = new Uri("http://" + hostComponent);

                // Response will be made to HTTP
                var response = await client.GetAsync(httpUri);

                Assert.Equal(httpUri, response.RequestMessage.RequestUri);
            }
        }