### Question:
FusionIndexAccessor extends FusionIndexBase<IndexAccessor> implements IndexAccessor { @Override public IndexReader newReader() { LazyInstanceSelector<IndexReader> readerSelector = new LazyInstanceSelector<>( slot -> instanceSelector.select( slot ).newReader() ); return new FusionIndexReader( slotSelector, readerSelector, descriptor ); } FusionIndexAccessor( SlotSelector slotSelector,
            InstanceSelector<IndexAccessor> instanceSelector,
            StoreIndexDescriptor descriptor,
            IndexDropAction dropAction ); @Override void drop(); @Override IndexUpdater newUpdater( IndexUpdateMode mode ); @Override void force( IOLimiter ioLimiter ); @Override void refresh(); @Override void close(); @Override IndexReader newReader(); @Override BoundedIterable<Long> newAllEntriesReader(); @Override ResourceIterator<File> snapshotFiles(); @Override Map<String,Value> indexConfig(); @Override void verifyDeferredConstraints( NodePropertyAccessor nodePropertyAccessor ); @Override boolean isDirty(); @Override void validateBeforeCommit( Value[] tuple ); @Override boolean consistencyCheck( ReporterFactory reporterFactory );  }### Answer:
@Test public void shouldInstantiateReadersLazily() { IndexReader fusionReader = fusionIndexAccessor.newReader(); for ( int j = 0; j < aliveAccessors.length; j++ ) { verifyNoMoreInteractions( aliveAccessors[j] ); } }