@Override
  public boolean isAsync() {
    return isAsync;
  }
@Test(dataProvider = "caches")
  @CacheSpec(population = Population.EMPTY)
  public void cacheFactory_loadFactory(
      BoundedLocalCache<Int, Int> cache, CacheContext context) throws Throwable {
    var factory1 = LocalCacheFactory.loadFactory(cache.getClass().getSimpleName());
    var other = factory1.newInstance(context.caffeine(), /* cacheLoader */ null, context.isAsync());
    assertThat(other.getClass()).isEqualTo(cache.getClass());
    assertThat(LocalCacheFactory.FACTORIES).containsEntry(
        cache.getClass().getSimpleName(), factory1);

    var factory2 = LocalCacheFactory.loadFactory(cache.getClass().getSimpleName());
    assertThat(factory2).isSameInstanceAs(factory1);
  }