public void RunHttpRequestFactoryServiceWithBuilder()
        {
            HttpRequest.Models.HttpClientOptions httpClientOptions = new HttpRequest.Models.HttpClientOptions
            {
                BaseAddress           = "https://www.google.com/blah",
                RequestContentType    = "Json/application",
                DefaultRequestHeaders = new Dictionary <string, string>()
                {
                    { "cache-control", "max-age=0" }
                }
            };

            IOptions <HttpRequest.Models.HttpClientOptions> options = Microsoft.Extensions.Options.Options.Create(httpClientOptions);
            var service = new HttpRequestFactoryService(options);

            service.logger = new Logger <HttpRequestFactoryService>(factory);

            var builder = new HttpRequestBuilder()
                          .AddMethod(HttpMethod.Get)
                          .AddRequestUri("https://www.google.com/blah")
                          .AddRequestContentType(httpClientOptions.RequestContentType)
                          .AddClientCertificate(httpClientOptions.ClientCertificateBase64)
                          .AddHeaders(httpClientOptions.DefaultRequestHeaders)
                          .AddAcceptHeader("Json/application")
                          .AddTimeout(TimeSpan.FromMinutes(3))
                          .AddClientCertificate(base64)
                          .AddSubscriptionKey("123456789")
                          .AddLogger(service.logger);


            var result = service.Get("/");
        }
        public void CreateaInstance()
        {
            HttpRequest.Models.HttpClientOptions httpClientOptions = new HttpRequest.Models.HttpClientOptions
            {
                BaseAddress           = "https://google.com",
                RequestContentType    = "Json/application",
                DefaultRequestHeaders = new Dictionary <string, string>()
            };

            IOptions <HttpRequest.Models.HttpClientOptions> options = Microsoft.Extensions.Options.Options.Create(httpClientOptions);
            var service = new HttpRequestFactoryService(options);
        }
        public void RunHealthCheckfor404Urls()
        {
            HttpRequest.Models.HttpClientOptions httpClientOptions = new HttpRequest.Models.HttpClientOptions
            {
                BaseAddress           = "https://www.google.com/blah",
                RequestContentType    = "Json/application",
                DefaultRequestHeaders = new Dictionary <string, string>()
            };

            IOptions <HttpRequest.Models.HttpClientOptions> options = Microsoft.Extensions.Options.Options.Create(httpClientOptions);
            var service = new HttpRequestFactoryService(options);

            service.logger = new Logger <HttpRequestFactoryService>(factory);
            var result = service.Get("/");
        }
        public void RunHealthCheck()
        {
            HttpRequest.Models.HttpClientOptions httpClientOptions = new HttpRequest.Models.HttpClientOptions
            {
                BaseAddress           = "https://google.com",
                RequestContentType    = "Json/application",
                DefaultRequestHeaders = new Dictionary <string, string>()
            };

            IOptions <HttpRequest.Models.HttpClientOptions> options = Microsoft.Extensions.Options.Options.Create(httpClientOptions);
            var service = new HttpRequestFactoryService(options);

            service.logger = new Logger <HttpRequestFactoryService>(factory);
            service.Get("/");
            // service.Get("https://google.com", "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6InU0T2ZORl");
        }
        public void RunHealthCheckwithContentConverter()
        {
            HttpRequest.Models.HttpClientOptions httpClientOptions = new HttpRequest.Models.HttpClientOptions
            {
                BaseAddress           = "https://jsonplaceholder.typicode.com/todos/1",
                RequestContentType    = "Json/application",
                DefaultRequestHeaders = new Dictionary <string, string>()
            };

            IOptions <HttpRequest.Models.HttpClientOptions> options = Microsoft.Extensions.Options.Options.Create(httpClientOptions);
            var service = new HttpRequestFactoryService(options);

            service.logger = new Logger <HttpRequestFactoryService>(factory);
            var result = service.Get("/");

            result.Item1.ContentAsType <MockData>();
            result.Item1.ContentAsJson();
            result.Item1.ContentAsString();

            Mercan.HealthChecks.Network.HttpResponseExtensions.ContentAsType <MockData>(result.Item1);
            Mercan.HealthChecks.Network.HttpResponseExtensions.ContentAsJson(result.Item1);
            Mercan.HealthChecks.Network.HttpResponseExtensions.ContentAsString(result.Item1);
        }