@Test
public void wrappingEmptyList() {

    AsyncPeekIterator<Integer> iterator = AsyncPeekIterator.wrap(new NonAsyncIterator<>(Collections.emptyIterator()));
    assertFalse(iterator.hasNext());
    assertThrows(NoSuchElementException.class, iterator::peek);
    assertThrows(NoSuchElementException.class, iterator::next);
    assertThrows(NoSuchElementException.class, iterator::peek);
    assertFalse(iterator.hasNext());
}