public void Then_If_It_Is_Not_Successful_An_Exception_Is_Thrown( ApprovalsOuterApiConfiguration config) { //Arrange config.BaseUrl = "https://test.local"; var getTestRequest = new GetTestRequest(); var response = new HttpResponseMessage { Content = new StringContent(""), StatusCode = HttpStatusCode.BadRequest }; var httpMessageHandler = MessageHandler.SetupMessageHandlerMock(response, config.BaseUrl + getTestRequest.GetUrl, config.Key); var client = new HttpClient(httpMessageHandler.Object); var apiClient = new ApiClient(client, config); //Act Assert Assert.ThrowsAsync <HttpRequestException>(() => apiClient.Get <List <string> >(getTestRequest)); }
public async Task Then_If_It_Is_Not_Found_Default_Is_Returned( ApprovalsOuterApiConfiguration config) { //Arrange config.BaseUrl = "https://test.local"; var getTestRequest = new GetTestRequest(); var response = new HttpResponseMessage { Content = new StringContent(""), StatusCode = HttpStatusCode.NotFound }; var httpMessageHandler = MessageHandler.SetupMessageHandlerMock(response, config.BaseUrl + getTestRequest.GetUrl, config.Key); var client = new HttpClient(httpMessageHandler.Object); var apiClient = new ApiClient(client, config); //Act Assert var actual = await apiClient.Get <List <string> >(getTestRequest); actual.Should().BeNull(); }
public async Task Then_The_Endpoint_Is_Called_With_Authentication_Header_And_Data_Returned( List <string> testObject, ApprovalsOuterApiConfiguration config) { //Arrange config.BaseUrl = "https://test.local"; var getTestRequest = new GetTestRequest(); var response = new HttpResponseMessage { Content = new StringContent(JsonConvert.SerializeObject(testObject)), StatusCode = HttpStatusCode.Accepted }; var httpMessageHandler = MessageHandler.SetupMessageHandlerMock(response, config.BaseUrl + getTestRequest.GetUrl, config.Key); var client = new HttpClient(httpMessageHandler.Object); var apiClient = new ApiClient(client, config); //Act var actual = await apiClient.Get <List <string> >(getTestRequest); //Assert actual.Should().BeEquivalentTo(testObject); }
public ApiClient(HttpClient httpClient, ApprovalsOuterApiConfiguration config) { _config = config; _httpClient = httpClient; _httpClient.BaseAddress = new Uri(_config.BaseUrl); }