Пример #1
0
        public void Set_Invalid_Proxy_Fails_RAW()
        {
            using var server = HttpServerFixture.StartServer((_, __) => { });

            var requestUri = new Uri(new Uri(server.Url), "");
            var webRequest = (HttpWebRequest)WebRequest.Create(requestUri);

            webRequest.Proxy = new WebProxy("non_existent_proxy", false);

            Assert.Throws <WebException>(() => webRequest.GetResponse());
        }
Пример #2
0
        public void Set_Invalid_Proxy_Fails()
        {
            using var server = HttpServerFixture.StartServer((_, __) => { });

            var client = new RestClient(server.Url)
            {
                Proxy = new WebProxy("non_existent_proxy", false)
            };
            var request = new RestRequest();

            var response = client.Get(request);

            Assert.False(response.IsSuccessful);
            Assert.IsInstanceOf <WebException>(response.ErrorException);
        }
Пример #3
0
    public async Task Copy_RootElement_From_Request_To_IWithRootElement_Deserializer()
    {
        using var server = HttpServerFixture.StartServer("success", Handle);

        var client = new RestClient(server.Url).UseXmlSerializer();

        var request = new RestRequest("success")
        {
            RootElement = "Success"
        };

        var response = await client.ExecuteAsync <TestResponse>(request);

        response.Data.Should().NotBeNull();
        response.Data !.Message.Should().Be("Works!");
Пример #4
0
    public async Task Set_Invalid_Proxy_Fails()
    {
        using var server = HttpServerFixture.StartServer((_, __) => { });

        var client = new RestClient(new RestClientOptions(server.Url)
        {
            Proxy = new WebProxy("non_existent_proxy", false)
        });
        var request = new RestRequest();

        var response = await client.ExecuteAsync(request);

        Assert.False(response.IsSuccessful);
        response.ErrorException.Should().BeOfType <HttpRequestException>();
    }
Пример #5
0
        public void Copy_RootElement_From_Request_To_IWithRootElement_Deserializer()
        {
            using var server = HttpServerFixture.StartServer("success", Handle);

            var client = new RestClient(server.Url);

            var request = new RestRequest("success")
            {
                RootElement = "Success"
            };

            var deserializer = new CustomDeserializer();

            client.AddHandler(ContentType.Xml, () => deserializer);
            client.Execute <Response>(request);

            Assert.AreEqual(request.RootElement, deserializer.RootElement);
Пример #6
0
        public void Use_JsonNet_For_Response()
        {
            var expected = Fixture.Create <TestClass>();

            using var server = HttpServerFixture.StartServer(
                      (request, response) =>
            {
                var serializer = new JsonNetSerializer();

                response.ContentType     = "application/json";
                response.ContentEncoding = Encoding.UTF8;
                response.OutputStream.WriteStringUtf8(serializer.Serialize(expected));
            }
                      );

            var client = new RestClient(server.Url).UseNewtonsoftJson();

            var actual = client.Get <TestClass>(new RestRequest()).Data;

            actual.Should().BeEquivalentTo(expected);
        }
Пример #7
0
        public void Use_JsonNet_For_Requests()
        {
            using var server = HttpServerFixture.StartServer(CaptureBody);
            _body            = null;
            var serializer = new JsonNetSerializer();

            var testData = Fixture.Create <TestClass>();

            var client  = new RestClient(server.Url).UseNewtonsoftJson();
            var request = new RestRequest().AddJsonBody(testData);

            var expected = testData;

            client.Post(request);

            var actual = serializer.Deserialize <TestClass>(new RestResponse {
                Content = _body
            });

            actual.Should().BeEquivalentTo(expected);
        }
Пример #8
0
        public void Use_JsonNet_For_Requests()
        {
            using var server = HttpServerFixture.StartServer(CaptureBody);
            _body            = null;
            var serializer = new SystemTextJsonSerializer();

            var testData = Fixture.Create <TestClass>();

            var client  = new RestClient(server.Url).UseSystemTextJson();
            var request = new RestRequest().AddJsonBody(testData);

            var expected = testData;

            client.Post(request);

            var actual = serializer.Deserialize <TestClass>(new RestResponse {
                Content = _body
            });

            actual.Should().BeEquivalentTo(expected);

            void CaptureBody(HttpListenerRequest req, HttpListenerResponse response) => _body = req.InputStream.StreamToString();
        }
Пример #9
0
 public DownloadFileTests()
 {
     _server = HttpServerFixture.StartServer("Assets/Koala.jpg", FileHandler);
     _client = new RestClient(_server.Url);
 }
Пример #10
0
 public void CreateClient()
 {
     _server = HttpServerFixture.StartServer("Assets/Koala.jpg", FileHandler);
     _client = new RestClient(_server.Url);
 }