public CompletableFuture<Response> executeRequest(Request request) {
        return executeRequest(request, () -> new AsyncCompletionHandlerBase());
    }
@Test
    void testRedirectWithBody() throws ExecutionException, InterruptedException {
        server.stubFor(post(urlEqualTo("/path1"))
                .willReturn(aResponse()
                        .withStatus(307)
                        .withHeader("Location", "/path2")));

        server.stubFor(post(urlEqualTo("/path2"))
                .willReturn(aResponse()
                        .withTransformers("copy-body")));

        ClientConfigurationData conf = new ClientConfigurationData();
        conf.setServiceUrl("http://localhost:" + server.port());

        @Cleanup
        AsyncHttpConnector connector = new AsyncHttpConnector(5000, 5000,
                5000, 0, conf, false);

        Request request = new RequestBuilder("POST")
                .setUrl("http://localhost:" + server.port() + "/path1")
                .setBody("Hello world!")
                .build();

        Response response = connector.executeRequest(request).get();
        assertEquals(response.getResponseBody(), "Hello world!");
    }