protected boolean fastpath() {
    return false;
  }
@Test(dataProvider = "caches")
  @CacheSpec(compute = Compute.SYNC, population = Population.EMPTY,
      maximumSize = Maximum.FULL, weigher = CacheWeigher.DISABLED,
      expireAfterAccess = Expire.DISABLED, expireAfterWrite = Expire.DISABLED,
      expiry = CacheExpiry.DISABLED, keys = ReferenceType.STRONG, values = ReferenceType.STRONG)
  public void fastpath(BoundedLocalCache<Int, Int> cache, CacheContext context) {
    assertThat(cache.skipReadBuffer()).isTrue();

    for (int i = 0; i < (context.maximumSize() / 2) - 1; i++) {
      var oldValue = cache.put(Int.valueOf(i), Int.valueOf(-i));
      assertThat(oldValue).isNull();
    }
    assertThat(cache.skipReadBuffer()).isTrue();

    var oldValue = cache.put(Int.valueOf(-1), Int.valueOf(-1));
    assertThat(oldValue).isNull();

    assertThat(cache.skipReadBuffer()).isFalse();
    assertThat(cache.get(Int.valueOf(0))).isNotNull();
    assertThat(cache.readBuffer.writes()).isEqualTo(1);

    cache.cleanUp();
    assertThat(cache.readBuffer.reads()).isEqualTo(1);
  }