public static <T> void forward(CompletableFuture<T> source, CompletableFuture<T> target) {
        source.whenComplete(forwardTo(target));
    }
@Test
    void testForwardNormal() throws Exception {
        final CompletableFuture<String> source = new CompletableFuture<>();
        final CompletableFuture<String> target = new CompletableFuture<>();

        FutureUtils.forward(source, target);

        assertThat(source).isNotDone();
        assertThat(target).isNotDone();

        source.complete("foobar");

        assertThat(source).isDone();
        assertThat(target).isDone();

        assertThat(source.get()).isEqualTo(target.get());
    }