@Test
  void withoutIdResolver() {
    // custom extractor based on generic function
    KeyExtractor.Factory extractor = KeyExtractor.generic(obj -> {
      Person person = (Person) obj;
      return person.id();
    });

    PersonRepository repository = createRepository(builder -> builder.keyExtractorFactory(extractor));
    repository.find(person.id.is("id1")).fetch();
    check(calls).isEmpty();
    repository.find(person.id.in("id1", "id2")).fetch();
    check(calls).isEmpty();
    // negatives
    repository.find(person.id.isNot("id1")).fetch();
    check(calls.isEmpty());
    repository.find(person.id.notIn("id1", "id2")).fetch();
    check(calls.isEmpty());
  }
{@link Region#getAll(Collection)} should not be called without
known key metadata
criteria/geode/test/org/immutables/criteria/geode/GetAllOptimizationTest.java