@Override
    public V fetch(final K key,
                   final long time) {
        return getValueOrNull(inner.fetch(key, time));
    }
@Test
    public void shouldReturnPlainKeyValuePairsOnRangeFetchLongParameters() {
        when(mockedKeyValueWindowTimestampIterator.next())
            .thenReturn(KeyValue.pair(
                new Windowed<>("key1", new TimeWindow(21L, 22L)),
                ValueAndTimestamp.make("value1", 22L)))
            .thenReturn(KeyValue.pair(
                new Windowed<>("key2", new TimeWindow(42L, 43L)),
                ValueAndTimestamp.make("value2", 100L)));
        when(mockedWindowTimestampStore.fetch("key1", "key2", Instant.ofEpochMilli(21L), Instant.ofEpochMilli(42L)))
            .thenReturn(mockedKeyValueWindowTimestampIterator);

        final KeyValueIterator<Windowed<String>, String> iterator =
            readOnlyWindowStoreFacade.fetch("key1", "key2", Instant.ofEpochMilli(21L), Instant.ofEpochMilli(42L));

        assertThat(iterator.next(), is(KeyValue.pair(new Windowed<>("key1", new TimeWindow(21L, 22L)), "value1")));
        assertThat(iterator.next(), is(KeyValue.pair(new Windowed<>("key2", new TimeWindow(42L, 43L)), "value2")));
    }