예제 #1
0
        static IntegrationTestFixture()
        {
            ServicePointManager.ServerCertificateValidationCallback = delegate { return(true); };

            JsonDotNetSerializer.Init();

            HttpClientFactory.Get = (() =>
            {
                var httpClientHandler = new HttpClientHandler();
                if (httpClientHandler.SupportsAutomaticDecompression)
                {
                    httpClientHandler.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
                }
                var httpClient = new HttpClient(httpClientHandler);
                httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/jsonp"));
                httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/html"));

                return(httpClient);
            });

            TestPolicy = Policy
                         .Handle <InvalidOperationException>()
                         .Or <HttpRequestException>()
                         .WaitAndRetryAsync(3, retryAttempt => TimeSpan.FromSeconds(Math.Pow(2, retryAttempt)));

            Log.Logger = new LoggerConfiguration()
                         .MinimumLevel.Debug()
                         .WriteTo.ColoredConsole(restrictedToMinimumLevel: LogEventLevel.Warning)
                         .WriteTo.XunitTestOutput()
                         .CreateLogger();
        }