public async Task <HttpResponseMessage> GetCategories(HttpContext requestContext, CancellationToken cancellationToken) { var request = new HttpRequestMessage(HttpMethod.Post, _categoryApiConfig.GetCategories); _headersConfigurator.Apply(requestContext, request); return(await _httpClient.SendAsync(request, cancellationToken) .ConfigureAwait(false)); }
public void RequestConfigurator_Copies_Authorization_From_Source_To_Target_Test() { var requestMessage = new HttpRequestMessage(); var expectedAuthValue = Guid.NewGuid().ToString(); var expectedValue = new AuthenticationHeaderValue(expectedAuthValue); _controller.HttpContext.Request.Headers["Authorization"] = expectedAuthValue; // Act _sut.Apply(_controller.HttpContext, requestMessage); Assert.That(requestMessage.Headers.Authorization, Is.EqualTo(expectedValue)); }
public async Task <IActionResult> GetCategories(CancellationToken cancellationToken) { var response = await _categoryApiClient.GetCategories(HttpContext, cancellationToken); _responseConfigurator.Apply(response, Response); response.EnsureSuccessStatusCode(); var content = await response.Content.ReadAsStringAsync(); var categories = JsonSerializer.Deserialize <IEnumerable <Category> >(content); return(new JsonResult(categories)); }
public async Task <HttpResponseMessage> ExecuteCustomScriptQuery(HttpContext requestContext, CancellationToken cancellationToken, string customScript) { var request = new HttpRequestMessage(HttpMethod.Post, _dashboardApiConfig.ExecuteCustomScriptQuery) { Content = new StringContent($"script={customScript}", Encoding.UTF8, "application/x-www-form-urlencoded") }; _headersConfigurator.Apply(requestContext, request); return(await _httpClient.SendAsync(request, cancellationToken).ConfigureAwait(false)); }
public void ResponseConfigurator_Copies_Content_Type_From_Source_To_Target_Test() { var httpContent = new Mock <HttpContent>(); var responseMessage = new HttpResponseMessage { Content = httpContent.Object }; var expectedContentType = new MediaTypeHeaderValue("text/plain"); responseMessage.Content.Headers.ContentType = expectedContentType; // Act _sut.Apply(responseMessage, _controller.Response); _controller.Response.Headers.TryGetValue("Content-Type", out var contentTypeValueString); Assert.That(contentTypeValueString.ToString(), Is.EqualTo(expectedContentType.ToString())); }