Example #1
0
        public static void OneTimeSetup(TestContext tctx)
        {
            if (!Directory.Exists(DEFAULT_BASE_LOCAL_STORE))
            {
                Directory.CreateDirectory(DEFAULT_BASE_LOCAL_STORE);
            }

            //_baseLocalStore = $"{DEFAULT_BASE_LOCAL_STORE}-{DateTime.Now.ToString("yyMMdd-HHmmss")}";
            //if (!Directory.Exists(_baseLocalStore))
            //    Directory.CreateDirectory(_baseLocalStore);

            if (File.Exists(WEB_PROXY_CONFIG))
            {
                _wpConfig = WebProxyConfig.Load(WEB_PROXY_CONFIG);
                if (_wpConfig != null && _wpConfig.UseProxy)
                {
                    _proxy = new WebProxy(_wpConfig.HostName, _wpConfig.HostPort);
                    if (_wpConfig.AcceptAllServerCerts)
                    {
                        System.Net.ServicePointManager.ServerCertificateValidationCallback =
                            (a, b, c, d) =>
                        {
                            return(true);
                        };
                    }
                }
            }
        }
        public static void OneTimeSetup(TestContext tctx)
        {
            if (!Directory.Exists(DEFAULT_BASE_LOCAL_STORE))
                Directory.CreateDirectory(DEFAULT_BASE_LOCAL_STORE);

            //_baseLocalStore = $"{DEFAULT_BASE_LOCAL_STORE}-{DateTime.Now.ToString("yyMMdd-HHmmss")}";
            //if (!Directory.Exists(_baseLocalStore))
            //    Directory.CreateDirectory(_baseLocalStore);

            if (File.Exists(WEB_PROXY_CONFIG))
            {
                _wpConfig = WebProxyConfig.Load(WEB_PROXY_CONFIG);
                if (_wpConfig != null && _wpConfig.UseProxy)
                {
                    _proxy = new WebProxy(_wpConfig.HostName, _wpConfig.HostPort);
                    if (_wpConfig.AcceptAllServerCerts)
                    {
                        System.Net.ServicePointManager.ServerCertificateValidationCallback =
                                (a, b, c, d) =>
                                {
                                    return true;
                                };
                    }
                }
            }
        }
Example #3
0
        private static Yarp.ReverseProxy.Configuration.HttpClientConfig?CreateHttpClientConfig(Entity.HttpClientConfig proxyHttpClientOptions)
        {
            if (proxyHttpClientOptions is null)
            {
                return(null);
            }

            SslProtocols?sslProtocols = null;

            if (!string.IsNullOrWhiteSpace(proxyHttpClientOptions?.SslProtocols))
            {
                foreach (var protocolConfig in proxyHttpClientOptions?.SslProtocols?.Split(",").Select(s => Enum.Parse <SslProtocols>(s, ignoreCase: true)))
                {
                    sslProtocols = sslProtocols == null ? protocolConfig : sslProtocols | protocolConfig;
                }
            }
            else
            {
                sslProtocols = SslProtocols.None;
            }

            WebProxyConfig?webProxy;
            var            webProxySection = proxyHttpClientOptions.WebProxy;

            if (webProxySection != null)
            {
                webProxy = new WebProxyConfig()
                {
                    Address               = string.IsNullOrWhiteSpace(webProxySection.Address) ? null : new Uri(webProxySection.Address),
                    BypassOnLocal         = webProxySection.BypassOnLocal,
                    UseDefaultCredentials = webProxySection.UseDefaultCredentials
                };
            }
            else
            {
                webProxy = null;
            }
            return(new Yarp.ReverseProxy.Configuration.HttpClientConfig
            {
                SslProtocols = sslProtocols,
                DangerousAcceptAnyServerCertificate = proxyHttpClientOptions.DangerousAcceptAnyServerCertificate,
                MaxConnectionsPerServer = proxyHttpClientOptions.MaxConnectionsPerServer,
#if NET
                EnableMultipleHttp2Connections = proxyHttpClientOptions.EnableMultipleHttp2Connections,
                RequestHeaderEncoding = proxyHttpClientOptions.RequestHeaderEncoding,
#endif
                WebProxy = webProxy
            });
        }
        private static HttpClientConfig?CreateHttpClientConfig(IConfigurationSection section)
        {
            if (!section.Exists())
            {
                return(null);
            }

            SslProtocols?sslProtocols = null;

            if (section.GetSection(nameof(HttpClientConfig.SslProtocols)) is IConfigurationSection sslProtocolsSection)
            {
                foreach (var protocolConfig in sslProtocolsSection.GetChildren().Select(s => Enum.Parse <SslProtocols>(s.Value, ignoreCase: true)))
                {
                    sslProtocols = sslProtocols == null ? protocolConfig : sslProtocols | protocolConfig;
                }
            }

            WebProxyConfig?webProxy;
            var            webProxySection = section.GetSection(nameof(HttpClientConfig.WebProxy));

            if (webProxySection.Exists())
            {
                webProxy = new WebProxyConfig()
                {
                    Address               = webProxySection.ReadUri(nameof(WebProxyConfig.Address)),
                    BypassOnLocal         = webProxySection.ReadBool(nameof(WebProxyConfig.BypassOnLocal)),
                    UseDefaultCredentials = webProxySection.ReadBool(nameof(WebProxyConfig.UseDefaultCredentials))
                };
            }
            else
            {
                webProxy = null;
            }

            return(new HttpClientConfig
            {
                SslProtocols = sslProtocols,
                DangerousAcceptAnyServerCertificate = section.ReadBool(nameof(HttpClientConfig.DangerousAcceptAnyServerCertificate)),
                MaxConnectionsPerServer = section.ReadInt32(nameof(HttpClientConfig.MaxConnectionsPerServer)),
#if NET
                EnableMultipleHttp2Connections = section.ReadBool(nameof(HttpClientConfig.EnableMultipleHttp2Connections)),
                RequestHeaderEncoding = section[nameof(HttpClientConfig.RequestHeaderEncoding)],
#endif
                ActivityContextHeaders = section.ReadEnum <ActivityContextHeaders>(nameof(HttpClientConfig.ActivityContextHeaders)),
                WebProxy = webProxy
            });
        }
 public static void OneTimeSetup(TestContext tctx)
 {
     if (File.Exists(WEB_PROXY_CONFIG))
     {
         var wpc = WebProxyConfig.Load(WEB_PROXY_CONFIG);
         if (wpc != null && wpc.UseProxy)
         {
             _proxy = new WebProxy(wpc.HostName, wpc.HostPort);
             if (wpc.AcceptAllServerCerts)
             {
                 System.Net.ServicePointManager.ServerCertificateValidationCallback =
                     (a, b, c, d) =>
                 {
                     return(true);
                 };
             }
         }
     }
 }