@Override
    public KeyValueIterator<Windowed<K>, V> fetch(final K key) {
        Objects.requireNonNull(key, "key cannot be null");
        return new MeteredWindowedKeyValueIterator<>(
            wrapped().fetch(keyBytes(key)),
            fetchSensor,
            iteratorDurationSensor,
            streamsMetrics,
            serdes::keyFrom,
            serdes::valueFrom,
            time,
            numOpenIterators,
            openIterators);
    }
@Test
    public void shouldThrowNullPointerOnFetchIfKeyIsNull() {
        setUpWithoutContext();
        assertThrows(NullPointerException.class, () -> store.fetch(null));
    }