public void testGetLeastFrequentlyUsedPage() throws Exception {
final String layerName = testTileSet.getLayerName();
Set<String> layerNames = Collections.singleton(layerName);
TilePage lfuPage;
lfuPage = store.getLeastFrequentlyUsedPage(layerNames);
assertNull(lfuPage);
TilePage page1 = new TilePage(testTileSet.getId(), 0, 1, 2);
TilePage page2 = new TilePage(testTileSet.getId(), 1, 1, 2);
PageStatsPayload payload1 = new PageStatsPayload(page1, testTileSet);
PageStatsPayload payload2 = new PageStatsPayload(page2, testTileSet);
payload1.setNumHits(100);
payload2.setNumHits(10);
Collection<PageStatsPayload> statsUpdates = Arrays.asList(payload1, payload2);
store.addHitsAndSetAccesTime(statsUpdates).get();
TilePage leastFrequentlyUsedPage = store.getLeastFrequentlyUsedPage(layerNames);
assertEquals(page2, leastFrequentlyUsedPage);
payload2.setNumHits(1000);
store.addHitsAndSetAccesTime(statsUpdates).get();