@SuppressWarnings("NullAway")
  static @Nullable <V> V getIfReady(@Nullable CompletableFuture<V> future) {
    return isReady(future) ? future.join() : null;
  }
@Test(dataProvider = "unsuccessful")
  public void getIfReady_fails(CompletableFuture<Integer> future) {
    assertThat(Async.getIfReady(future)).isNull();
  }