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)); }
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); }
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); }
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)); }
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)); }
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)); }