@Test public void shrinkMaxSizeEvicts() throws Exception { cache.close(); cache = DiskLruCache.open(cacheDir, appVersion, 2, 20); set("a", "a", "aaa"); // size 4 set("b", "bb", "bbbb"); // size 6 set("c", "c", "c"); // size 12 cache.setMaxSize(10); cache.executorService.shutdown(); cache.executorService.awaitTermination(500, TimeUnit.MILLISECONDS); assertThat(cache.size()).isEqualTo(8 /* 12 - 4 */); }
@Test public void growMaxSize() throws Exception { cache.close(); cache = DiskLruCache.open(cacheDir, appVersion, 2, 10); set("a", "a", "aaa"); // size 4 set("b", "bb", "bbbb"); // size 6 cache.setMaxSize(20); set("c", "c", "c"); // size 12 assertThat(cache.size()).isEqualTo(12); }