@Test
  public void findKeyWithFileSpanTest() throws StoreException {
    for (MockId id : state.allKeys.keySet()) {
      doFindKeyWithFileSpanTest(id,
          EnumSet.of(PersistentIndex.IndexEntryType.PUT, PersistentIndex.IndexEntryType.DELETE));
      doFindKeyWithFileSpanTest(id, EnumSet.allOf(PersistentIndex.IndexEntryType.class));
      for (PersistentIndex.IndexEntryType type : PersistentIndex.IndexEntryType.values()) {
        doFindKeyWithFileSpanTest(id, EnumSet.of(type));
      }
    }
  }
Tests for {@link PersistentIndex#findKey(StoreKey, FileSpan, EnumSet)}.
Cases:
1. FileSpan exactly that of the message
2. FileSpan before and after message including it on the boundary
3. FileSpan that includes the message.
4. FileSpan before and after message not including it
@throws StoreException
ambry-store/src/test/java/com/github/ambry/store/IndexTest.java