Exemplo n.º 1
0
        public async Task GetRequestWithParameterNullThrowsArguementNullException()
        {
            // arrange
            var paramKey = "Key";
            var url      = "http://www.google.com";

            Mock <IRestClient> restClient = new Mock <IRestClient>();

            restClient
            .Setup(x => x.ExecuteAsync(
                       It.IsAny <IRestRequest>(),
                       It.IsAny <Action <IRestResponse, RestRequestAsyncHandle> >()))
            .Callback <IRestRequest, Action <IRestResponse, RestRequestAsyncHandle> >((request, callback) =>
            {
                callback(new RestResponse {
                    StatusCode = HttpStatusCode.OK
                }, null);
            });

            // act
            var clientService = new ClientServiceUsingRestSharp(restClient.Object);

            clientService.AddParameter(paramKey, null);

            // assert
            await Assert.ThrowsExceptionAsync <ArgumentNullException>(async() => await clientService.Get(null));
        }
Exemplo n.º 2
0
        public async Task GetRequestWithoutParametersReturnWithSpecifiedText()
        {
            // arrange
            var expected                  = "response content";
            var expectedBytes             = Encoding.UTF8.GetBytes(expected);
            Mock <IRestClient> restClient = new Mock <IRestClient>();

            restClient
            .Setup(x => x.ExecuteAsync(
                       It.IsAny <IRestRequest>(),
                       It.IsAny <Action <IRestResponse, RestRequestAsyncHandle> >()))
            .Callback <IRestRequest, Action <IRestResponse, RestRequestAsyncHandle> >((request, callback) =>
            {
                callback(new RestResponse {
                    Content = expected
                }, null);
            });


            // act
            var clientService  = new ClientServiceUsingRestSharp(restClient.Object);
            var actualResponse = await clientService.Get($"http://www.google.com");

            //assert
            Assert.AreEqual(expected, actualResponse.ResponseString);
        }
Exemplo n.º 3
0
        public async Task GetRequestWithSingleParametersReturnUrlAndParamString()
        {
            // arrange
            var paramKey   = "Key";
            var paramValue = "Value";
            var url        = "http://www.google.com";

            Mock <IRestClient> restClient = new Mock <IRestClient>();

            restClient.Setup(x => x.ExecuteAsync(It.IsAny <IRestRequest>(), It.IsAny <Action <IRestResponse, RestRequestAsyncHandle> >()))
            .Callback <IRestRequest, Action <IRestResponse, RestRequestAsyncHandle> >((request, callback) =>
            {
                var responseMock = new Mock <IRestResponse <string> >();
                responseMock.Setup(r => r.Content).Returns($"{url}?{paramKey}={paramValue}");
                callback(responseMock.Object, null);
            });

            // act
            var clientService = new ClientServiceUsingRestSharp(restClient.Object);

            clientService.AddParameter(paramKey, paramValue);
            var actualResponse = await clientService.Get(url);

            // assert
            Assert.IsTrue(actualResponse.ResponseString.Contains(url));
            Assert.AreEqual($"{url}?{paramKey}={paramValue}", actualResponse.ResponseString);
        }
Exemplo n.º 4
0
        public async Task <ResponseObject> SendGetRequest(string url, IDictionary <string, string> parameters)
        {
            var client = new ClientServiceUsingRestSharp();

            foreach (var item in parameters.Keys)
            {
                client.AddParameter(item, parameters[item]);
            }

            return(await client.Get(url));
        }
Exemplo n.º 5
0
        public async Task <ResponseObject> SendPostRequest(string url, IDictionary <string, string> parameters = null, string jsonBody = null)
        {
            var client = new ClientServiceUsingRestSharp();

            foreach (var item in parameters.Keys)
            {
                client.AddParameter(item, parameters[item]);
            }

            client.AddJsonBody(jsonBody);
            return(await client.Post(url));
        }
Exemplo n.º 6
0
        public async Task GetRequestWithEmptyUrlThrowsArguementNullException()
        {
            // arrange
            var expected                  = "response content";
            var expectedBytes             = Encoding.UTF8.GetBytes(expected);
            Mock <IRestClient> restClient = new Mock <IRestClient>();

            restClient
            .Setup(x => x.ExecuteAsync(
                       It.IsAny <IRestRequest>(),
                       It.IsAny <Action <IRestResponse, RestRequestAsyncHandle> >()))
            .Callback <IRestRequest, Action <IRestResponse, RestRequestAsyncHandle> >((request, callback) =>
            {
                callback(new RestResponse {
                    StatusCode = HttpStatusCode.OK
                }, null);
            });

            // act
            var clientService = new ClientServiceUsingRestSharp(restClient.Object);
            await Assert.ThrowsExceptionAsync <ArgumentNullException>(async() => await clientService.Get(string.Empty));
        }