### Question:
OutputCache implements Reader<T> { @Override public void setConfiguration(ReaderConfiguration configuration) { reader.setConfiguration(configuration); } OutputCache(Reader<T> reader, Long refreshInterval);  OutputCache(Reader<T> reader, Long refreshInterval, Consumer<IOException> exceptionHandler); @Override List<T> getRecords(); @Override void setConfiguration(ReaderConfiguration configuration); void refresh(); void cancel();  }### Answer:
@Test public void setConfiguration_ShouldProxyToUnderlyingReader() { ReaderConfiguration mockConfiguration = Mockito.mock(ReaderConfiguration.class); OutputCache<String> cache = new OutputCache<>(readerSpy, 100L); cache.setConfiguration(mockConfiguration); Mockito.verify(readerSpy).setConfiguration(mockConfiguration); }