@Test public void storesItemIfCacheIsNotFull() { when(cache.getMaxCacheSize()).thenReturn(5); final String cacheKey1 = buildKey(DOMAIN, QUERY1); final String cacheKey2 = buildKey(DOMAIN, QUERY2); cache.storeQuery(response1, DOMAIN, QUERY1); cache.storeQuery(response2, DOMAIN, QUERY2); assertSame(response1, cache.fetchQuery(DOMAIN, QUERY1)); assertSame(response1, cacheMap.get(cacheKey1)); assertSame(response2, cache.fetchQuery(DOMAIN, QUERY2)); assertSame(response2, cacheMap.get(cacheKey2)); }
@Test public void storesItemIfCacheIsNotFull() { when(cache.getMaxCacheSize()).thenReturn(5); final String cacheKey1 = buildKey(DOMAIN, QUERY1); final String cacheKey2 = buildKey(DOMAIN, QUERY2); cache.storeQuery(response1, DOMAIN, QUERY1); cache.storeQuery(response2, DOMAIN, QUERY2); assertSame(response1, cache.fetchQuery(DOMAIN, QUERY1)); assertSame(response1, cacheMap.get(cacheKey1)); assertSame(response2, cache.fetchQuery(DOMAIN, QUERY2)); assertSame(response2, cacheMap.get(cacheKey2)); }
@Test public void removesItemIfCacheIsFull() { when(cache.getMaxCacheSize()).thenReturn(1); final String cacheKey1 = buildKey(DOMAIN, QUERY1); final String cacheKey2 = buildKey(DOMAIN, QUERY2); cache.storeQuery(response1, DOMAIN, QUERY1); assertSame(response1, cache.fetchQuery(DOMAIN, QUERY1)); assertSame(response1, cacheMap.get(cacheKey1)); assertEquals(1, cacheMap.size()); cache.storeQuery(response2, DOMAIN, QUERY2); assertSame(response2, cache.fetchQuery(DOMAIN, QUERY2)); assertSame(response2, cacheMap.get(cacheKey2)); assertEquals(1, cacheMap.size()); }
@Test public void removesItemIfCacheIsFull() { when(cache.getMaxCacheSize()).thenReturn(1); final String cacheKey1 = buildKey(DOMAIN, QUERY1); final String cacheKey2 = buildKey(DOMAIN, QUERY2); cache.storeQuery(response1, DOMAIN, QUERY1); assertSame(response1, cache.fetchQuery(DOMAIN, QUERY1)); assertSame(response1, cacheMap.get(cacheKey1)); assertEquals(1, cacheMap.size()); cache.storeQuery(response2, DOMAIN, QUERY2); assertSame(response2, cache.fetchQuery(DOMAIN, QUERY2)); assertSame(response2, cacheMap.get(cacheKey2)); assertEquals(1, cacheMap.size()); }