public static <T> CloseableIterator<T> wrap(CloseableIterator<T> iterator, AutoCloseable... otherCloseables) {
    return new CloseablesIteratorWrapper<>(iterator, otherCloseables);
  }
@Test(expected = IllegalArgumentException.class)
  public void wrap_fails_if_iterator_declared_in_other_closeables() {
    CloseableIterator iterator = new SimpleCloseableIterator();
    CloseableIterator.wrap(iterator, iterator);
  }