### Question:
Sources { public static <T> Source<T> empty() { return new Source<T>() { @Override public boolean next() throws IOException, InterruptedException { return false; } @Override public T get() throws IOException, InterruptedException { throw new NoSuchElementException(); } @Override public void close() { return; } }; } private  Sources(); static Source<T> empty(); @SafeVarargs static Source<T> wrap(T... values); static Source<T> wrap(Iterator<? extends T> iterator); static Source<T> concat(List<? extends Source<? extends T>> sources); static Source<T> merge(
            List<? extends Source<? extends T>> sortedSources,
            Comparator<? super T> comparator);  }### Answer:
@Test public void empty() throws Exception { List<String> objects = dump(Sources.empty()); assertThat(objects, hasSize(0)); }