Example #1
0
        public async Task FailBasicAuth()
        {
            var client   = new HttpClient();
            var request  = new HttpRequest(HttpRequest.GET, new Uri(Endpoint + "/test/auth/basic"));
            var response = await request.execute(new HttpClient());

            Assert.AreEqual(HttpStatusCode.Unauthorized, response.code);
        }
Example #2
0
        public async Task NotFoundError()
        {
            var client = new HttpClient();

            var request  = new HttpRequest(HttpRequest.GET, new Uri(Endpoint + "/test/notFound"));
            var response = await request.execute(client);

            Assert.AreEqual(HttpStatusCode.NotFound, response.code);
            return;
        }
Example #3
0
        public async Task ForbiddenError()
        {
            var client = new HttpClient();

            var request  = new HttpRequest(HttpRequest.GET, new Uri(Endpoint + "/test/forbidden"));
            var response = await request.execute(client);

            Assert.AreEqual(HttpStatusCode.Forbidden, response.code);
            return;
        }
Example #4
0
        public async Task PostClientError()
        {
            var client = new HttpClient();

            var request  = new HttpRequest(HttpRequest.POST, new Uri(Endpoint + "/test/clientError"), "{}");
            var response = await request.execute(client);

            Assert.AreEqual(HttpStatusCode.BadRequest, response.code);
            return;
        }
Example #5
0
        public async Task ServerError()
        {
            var client = new HttpClient();

            var request  = new HttpRequest(HttpRequest.GET, new Uri(Endpoint + "/test/serverError"));
            var response = await request.execute(client);

            Assert.AreEqual(HttpStatusCode.InternalServerError, response.code);
            return;
        }
Example #6
0
        public async Task Patch()
        {
            var client = new HttpClient();

            var request  = new HttpRequest(HttpRequest.PATCH, new Uri(Endpoint + "/test/echo"), "{\"hello\":\"there\"}");
            var response = await request.execute(client);

            Assert.AreEqual(HttpStatusCode.OK, response.code);
            Assert.AreEqual("{\"hello\":\"there\"}", response.body);
        }
Example #7
0
        public async Task Delete()
        {
            var client = new HttpClient();

            var request  = new HttpRequest(HttpRequest.DELETE, new Uri(Endpoint + "/test/delete"));
            var response = await request.execute(client);

            Assert.AreEqual(HttpStatusCode.OK, response.code);
            Assert.AreEqual("OK", response.body);
        }
Example #8
0
        public async Task FailCookieAuth()
        {
            var client = new HttpClient();

            var request  = new HttpRequest(HttpRequest.GET, new Uri(Endpoint + "/test/auth/cookie"));
            var response = await request.execute(client);

            Assert.IsNotEmpty(response.body);
            Assert.AreEqual(HttpStatusCode.Unauthorized, response.code);
            return;
        }
Example #9
0
        public async Task TimeoutError()
        {
            var client = new HttpClient();

            client.Timeout = TimeSpan.FromSeconds(1);

            var request  = new HttpRequest(HttpRequest.GET, new Uri(Endpoint + "/test/timeout"));
            var response = await request.execute(client);

            Assert.AreEqual(HttpStatusCode.RequestTimeout, response.code);
            return;
        }
Example #10
0
        public async Task ServerMissingError()
        {
            var client = new HttpClient();

            client.Timeout = TimeSpan.FromSeconds(1);

            var request = new HttpRequest(HttpRequest.GET, new Uri("https://sassages.missing/where"));

            Assert.ThrowsAsync <HttpRequestException>(async() =>
            {
                var response = await request.execute(client);
            });
        }
Example #11
0
        public async Task PassBasicAuth()
        {
            var client   = new HttpClient();
            var username = "******";
            var password = "******";

            Http.Http.AddBasicAuth(client, username, password);
            var request  = new HttpRequest(HttpRequest.GET, new Uri(Endpoint + "/test/auth/basic"));
            var response = await request.execute(client);

            Assert.IsNotEmpty(response.body);
            Assert.AreEqual(HttpStatusCode.OK, response.code);
            Assert.AreEqual("Hello World!", response.body);
        }
Example #12
0
        public async Task HeadersRequired()
        {
            var client = new HttpClient();

            // note that this change is permanently applied to the client
            // (so once we've applied cookies, they STAY applied)
            client.DefaultRequestHeaders.Add("X-BaconPancakes", "BaconPancakes");

            var request  = new HttpRequest(HttpRequest.GET, new Uri(Endpoint + "/test/headers"));
            var response = await request.execute(client);

            Assert.IsNotEmpty(response.body);
            Assert.AreEqual("Makin' Bacon Pancakes", response.body);
            return;
        }
Example #13
0
        public async Task Head()
        {
            var client = new HttpClient();

            client.DefaultRequestHeaders.Add("X-BaconPancakes", "BaconPancakes");

            var request = new HttpRequest(HttpRequest.HEAD, new Uri(Endpoint + "/test/headers"));

            var response = await request.execute(client);

            Assert.AreEqual(HttpStatusCode.OK, response.code);
            Assert.IsTrue(response.response.Headers.Contains("ETag"));
            Assert.IsTrue(response.response.Headers.Contains("X-Powered-By"));
            Assert.IsTrue(response.response.Headers.Contains("X-BaconPancakes"));
            Assert.AreEqual("Makin' Bacon Pancakes", response.headers["X-BaconPancakes"]);
        }
Example #14
0
        public async Task PassCookieAuth()
        {
            var cookieContainer = new CookieContainer();
            var handler         = new HttpClientHandler()
            {
                CookieContainer = cookieContainer
            };
            var client = new HttpClient(handler);

            cookieContainer.Add(new Uri(Endpoint), new Cookie("auth", "secret-auth-token"));

            var request  = new HttpRequest(HttpRequest.GET, new Uri(Endpoint + "/test/auth/cookie"));
            var response = await request.execute(client);

            Assert.IsNotEmpty(response.body);
            Assert.AreEqual(HttpStatusCode.OK, response.code);
            return;
        }