@Override
  public boolean isAsync() {
    return isAsync;
  }
@Test(dataProvider = "caches")
  @CacheSpec(population = Population.EMPTY)
  public void cacheFactory_byMethodHandle(
      BoundedLocalCache<Int, Int> cache, CacheContext context) throws Throwable {
    var methodHandleFactory = new MethodHandleBasedFactory(cache.getClass());
    var staticFactory = LocalCacheFactory.loadFactory(cache.getClass().getSimpleName());
    assertThat(methodHandleFactory).isNotSameInstanceAs(staticFactory);

    var c1 = methodHandleFactory.newInstance(
        context.caffeine(), /* cacheLoader */ null, context.isAsync());
    var c2 = staticFactory.newInstance(
        context.caffeine(), /* cacheLoader */ null, context.isAsync());
    assertThat(c1.getClass()).isEqualTo(c2.getClass());
  }