public async Task Azure_blob_has_MSFT_cert_in_path()
        {
            var h = new WebRequestHandler();

            h.SetValidator(info =>
                           !info.HasErrors &&
                           new AtLeastOneThumbprintInCertChain(msftThumbs).Eval(info));
            using (var client = new HttpClient(h))
            {
                await client.GetAsync("https://webapibook.blob.core.windows.net/");
            }
        }
        public void GitHub_doest_not_have_MSFT_cert_in_path()
        {
            var h = new WebRequestHandler();

            h.SetValidator(info =>
                           !info.HasErrors &&
                           new AtLeastOneThumbprintInCertChain(msftThumbs).Eval(info));
            using (var client = new HttpClient(h))
            {
                var exc = Assert.Throws <AggregateException>(() => client.GetAsync("https://api.github.com/").Result);
                Assert.IsType <HttpRequestException>(exc.InnerExceptions[0]);
            }
        }
        public async Task It_is_possible_to_control_revocation_checking()
        {
            var h = new WebRequestHandler();

            ServicePointManager.CheckCertificateRevocationList = true;
            h.SetValidator(info =>
                           !info.HasErrors &&
                           info.ChainPolicyUsed(X509RevocationFlag.ExcludeRoot) &&
                           info.ChainPolicyUsed(X509RevocationMode.Online) &&
                           new AtLeastOneThumbprintInCertChain(msftThumbs).Eval(info));
            using (var client = new HttpClient(h))
            {
                await client.GetAsync("https://webapibook.blob.core.windows.net/");
            }
        }