Esempio n. 1
0
        static async System.Threading.Tasks.Task Main(string[] args)
        {
            var client      = ClientExtensions.CreateClient(new RedisStore("localhost:6379"));
            var baseAddress = new Uri("http://localhost:1337");

            client.BaseAddress = baseAddress;


            while (true)
            {
                Console.WriteLine("Hit Enter to Call the API");
                Console.ReadLine();
                var response = await client.GetAsync("/cache/time");

                Console.WriteLine(response.StatusCode);
                Console.WriteLine(response.Headers.CacheControl.ToString());
                var content = await response.Content.ReadAsStringAsync();

                Console.WriteLine(content);
                Console.WriteLine("Type 'done' to quit");
                if (Console.ReadLine() == "done")
                {
                    break;
                }
            }
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            Console.BackgroundColor = ConsoleColor.DarkGreen;
            Console.ForegroundColor = ConsoleColor.Black;
            Console.Clear();

            //var client = new HttpClient();

            var client = ClientExtensions.CreateClient(new RedisStore("localhost:6379"));

            client.BaseAddress = new Uri("http://localhost:1337");

            while (true)
            {
                var response = client.GetAsync("/time").Result;

                var content = response.Content.ReadAsStringAsync().Result;

                Console.WriteLine(content);
                Console.WriteLine(response.Headers.CacheControl.ToString());

                if (Console.ReadLine() == "done")
                {
                    break;
                }
            }
        }
Esempio n. 3
0
        public async Task SecondTimeComesFromCacheBecauseOfQueryProvider()
        {
            var ETagThatHashingGenerates = "U/I5fgFOxAXw7An1tsyvLTZrQhvqCDIAagv7s5NopKA="; // this is based on the collection data

            var handler = _server.CreateHandler();
            var client  = ClientExtensions.CreateClient(handler);

            client.BaseAddress = _server.BaseAddress;
            client.DefaultRequestHeaders.Add(TestViewModelCollectionQueryProvider.HeaderName,
                                             new TimedEntityTagHeaderValue(ETagThatHashingGenerates).ETag.Tag);
            var response = await client.GetAsync("/api/withquery");

            var response2 = await client.GetAsync("/api/withquery");

            var serverCch = response2.GetCacheCowHeader();

            Assert.NotNull(serverCch);
            Assert.True(serverCch.ShortCircuited);

            var cch = response2.Headers.GetCacheCowHeader();

            Assert.NotNull(cch);
            Assert.False(cch.DidNotExist);
            Assert.True(cch.CacheValidationApplied);
            Assert.True(cch.RetrievedFromCache);
        }
Esempio n. 4
0
        static void Main(string[] args)
        {
            Console.WriteLine("Getting the Time");
            //var client = new HttpClient();
            var client = ClientExtensions.CreateClient(new RedisStore("localhost"));

            client.BaseAddress = new Uri("http://localhost:1337");

            while (true)
            {
                var response = client.GetAsync("/time1").Result;

                Console.WriteLine(response.StatusCode);
                Console.WriteLine(response.Headers.CacheControl.ToString());

                var content = response.Content.ReadAsStringAsync().Result;

                Console.WriteLine(content);
                Console.WriteLine("Hit enter To try again, or type 'done' to quit");

                if (Console.ReadLine() == "done")
                {
                    break;
                }
            }
        }
Esempio n. 5
0
        static void Main(string[] args)
        {
            // setup
            _server = new TestServer(new WebHostBuilder()
                                     .UseStartup <Startup>());
            var handler = _server.CreateHandler();

            _client             = ClientExtensions.CreateClient(handler);
            _client.BaseAddress = _server.BaseAddress;

            Task.Run(RunAsync).Wait();
        }
Esempio n. 6
0
        public async Task WithClientCachingReturnsFromCacheSecondRequestIfExpiryNotPassed()
        {
            var handler = _server.CreateHandler();
            var client  = ClientExtensions.CreateClient(handler);

            client.BaseAddress = _server.BaseAddress;
            var response = await client.GetAsync("/api/bettertest/1");

            var response2 = await client.GetAsync("/api/bettertest/1");

            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
            Assert.True(response2.Headers.GetCacheCowHeader().RetrievedFromCache);
        }
Esempio n. 7
0
        static void Main(string[] args)
        {
            var server = new TestServer(new WebHostBuilder()
                                        .UseStartup <Startup>());
            var handler = server.CreateHandler();

            var client = ClientExtensions.CreateClient(handler);

            client.BaseAddress = server.BaseAddress;

            var p = new ConsoleMenu(client);

            Task.Run(async() => await p.Menu()).Wait();
        }
Esempio n. 8
0
        static void Main(string[] args)
        {
            Console.BackgroundColor = ConsoleColor.DarkCyan;
            var client = ClientExtensions.CreateClient(new RedisStore("localhost:6379"));

            while (true)
            {
                var response = client.GetAsync("http://localhost:1337/serverstatus").Result;
                var content  = response.Content.ReadAsStringAsync().Result;
                Console.WriteLine(content);
                if (Console.ReadLine() == "done")
                {
                    break;
                }
            }
        }
Esempio n. 9
0
        public async Task WithClientCachingReturnsFromCacheSecondRequestIfExpiryZero()
        {
            var handler = _server.CreateHandler();
            var client  = ClientExtensions.CreateClient(handler);

            client.BaseAddress = _server.BaseAddress;
            var response = await client.GetAsync("/api/bettertest/");

            Thread.Sleep(1000);
            var response2 = await client.GetAsync("/api/bettertest/");

            var cch = response2.Headers.GetCacheCowHeader();

            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
            Assert.True(cch.CacheValidationApplied);
            Assert.True(cch.RetrievedFromCache);
        }
Esempio n. 10
0
        static async System.Threading.Tasks.Task Main(string[] args)
        {
            Console.Clear();
            var client = ClientExtensions.CreateClient(new RedisStore("localhost:6379"));

            client.BaseAddress = new Uri("http://localhost:1337");

            while (true)
            {
                Console.WriteLine("Hit Enter to get the Info");
                Console.ReadLine();
                var response = await client.GetAsync("/caching/info");

                response.EnsureSuccessStatusCode(); // blow up if it isn't 200-299
                Console.WriteLine(response.Headers.CacheControl.ToString());
                var content = await response.Content.ReadAsStringAsync();

                Console.WriteLine(content);
            }
        }
Esempio n. 11
0
        static async System.Threading.Tasks.Task Main(string[] args)
        {
            Console.Clear();
            var uri    = new Uri("http://localhost:3000");
            var client = ClientExtensions.CreateClient(new RedisStore("localhost:6379"));

            client.BaseAddress = uri;

            while (true)
            {
                Console.WriteLine("Hit Enter to get the data");
                Console.ReadLine();
                var response = await client.GetAsync("/caching/info");

                Console.WriteLine(response.Headers.CacheControl?.ToString());
                var content = await response.Content.ReadAsStringAsync();

                Console.WriteLine(content);
            }
        }
        public async Task SecondTimeComesFromCacheBecauseOfExtractor()
        {
            var handler = _server.CreateHandler();
            var client  = ClientExtensions.CreateClient(handler);

            client.BaseAddress = _server.BaseAddress;
            var response = await client.GetAsync("/api/withquery");

            var response2 = await client.GetAsync("/api/withquery");

            var serverCch = response2.GetCacheCowHeader();

            Assert.NotNull(serverCch);
            Assert.False(serverCch.ShortCircuited);

            var cch = response2.Headers.GetCacheCowHeader();

            Assert.NotNull(cch);
            Assert.False(cch.DidNotExist);
            Assert.True(cch.CacheValidationApplied);
            Assert.True(cch.RetrievedFromCache);
        }
Esempio n. 13
0
        static async Task Main(string[] args)
        {
            //var client = new HttpClient();
            var client = ClientExtensions.CreateClient(new RedisStore("localhost:6379"));

            client.BaseAddress = new Uri("http://localhost:1337");

            while (true)
            {
                Console.WriteLine("Hit Enter to get the time (done to end)");
                var answer = Console.ReadLine();
                if (answer == "done")
                {
                    break;
                }
                var response = await client.GetAsync("/time");

                Console.WriteLine(response.Headers.CacheControl.ToString());
                var content = await response.Content.ReadAsStringAsync();

                Console.WriteLine(content);
            }
        }
        static async Task Main(string[] args)
        {
            var client = ClientExtensions.CreateClient(new RedisStore("localhost:6379"));

            client.BaseAddress = new Uri("http://localhost:1337");

            while (true)
            {
                var response = await client.GetAsync("/time");

                Console.WriteLine(response.Headers.CacheControl.ToString());

                var content = await response.Content.ReadAsStringAsync();

                Console.WriteLine(content);

                Console.WriteLine("Hit enter to call it again or type 'done' to quit");
                var q = Console.ReadLine();
                if (q == "done")
                {
                    break;
                }
            }
        }