@Test public void addResponse() { HttpRequest request = new HttpRequest(DEFAULT_URI); HttpResponse response = new HttpResponse("normal"); String key = cache.createKey(request); assertNotNull("response should have been cached", cache.addResponse(request, response)); assertEquals(response, cache.map.get(key)); assertNotNull("response should have been cached", extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals(response, extendedStrictNoCacheTtlCache.map.get(key)); }
@Test public void addResponseUsingPost() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setMethod("POST"); HttpResponse response = new HttpResponse("does not matter"); assertNull(cache.addResponse(request, response)); assertEquals(0, cache.map.size()); assertNull(extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals(0, extendedStrictNoCacheTtlCache.map.size()); }
@Test public void addResponse() { HttpRequest request = new HttpRequest(DEFAULT_URI); HttpResponse response = new HttpResponse("normal"); String key = cache.createKey(request); assertNotNull("response should have been cached", cache.addResponse(request, response)); assertEquals(response, cache.map.get(key)); assertNotNull("response should have been cached", extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals(response, extendedStrictNoCacheTtlCache.map.get(key)); }
@Test public void addResponseWithForcedTtlAndStrictNoCache() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setCacheTtl(10); String key = cache.createKey(request); HttpResponse response = new HttpResponseBuilder() .setResponseString("result") .setStrictNoCache() .create(); assertTrue(cache.addResponse(request, response)); assertEquals("public,max-age=10", cache.map.get(key).getHeader("Cache-Control")); }
@Test public void addResponseWithForcedTtl() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setCacheTtl(10); String key = cache.createKey(request); HttpResponse response = new HttpResponse("result"); assertTrue(cache.addResponse(request, response)); assertEquals("public,max-age=10", cache.map.get(key).getHeader("Cache-Control")); }
@Test public void addResponseIfModifiedSince() { HttpRequest request = new HttpRequest(DEFAULT_URI); HttpResponse response = new HttpResponseBuilder().setHttpStatusCode(HttpResponse.SC_NOT_MODIFIED).create(); assertFalse(cache.addResponse(request, response)); assertEquals(0, cache.map.size()); }
@Test public void addResponseNotCacheable() { HttpRequest request = new HttpRequest(DEFAULT_URI); HttpResponse response = new HttpResponseBuilder().setStrictNoCache().create(); assertFalse(cache.addResponse(request, response)); assertEquals(0, cache.map.size()); }
@Test public void addResponseUsingMethodOverride() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setMethod("POST") .addHeader("X-Method-Override", "GET"); HttpResponse response = new HttpResponse("normal"); String key = cache.createKey(request); assertNotNull(cache.addResponse(request, response)); assertEquals(response, cache.map.get(key)); assertNotNull(extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals(response, extendedStrictNoCacheTtlCache.map.get(key)); }
@Test public void addResponseWithForcedTtl() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setCacheTtl(10); String key = cache.createKey(request); HttpResponse response = new HttpResponse("result"); assertNotNull(cache.addResponse(request, response)); assertEquals("public,max-age=10", cache.map.get(key).getHeader("Cache-Control")); assertNotNull(extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals("public,max-age=10", extendedStrictNoCacheTtlCache.map.get(key).getHeader("Cache-Control")); }
@Test public void addResponseUsingMethodOverride() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setMethod("POST") .addHeader("X-Method-Override", "GET"); HttpResponse response = new HttpResponse("normal"); String key = cache.createKey(request); assertNotNull(cache.addResponse(request, response)); assertEquals(response, cache.map.get(key)); assertNotNull(extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals(response, extendedStrictNoCacheTtlCache.map.get(key)); }
@Test public void addResponseIfModifiedSince() { HttpRequest request = new HttpRequest(DEFAULT_URI); HttpResponse response = new HttpResponseBuilder().setHttpStatusCode(HttpResponse.SC_NOT_MODIFIED).create(); assertNull(cache.addResponse(request, response)); assertEquals(0, cache.map.size()); assertNull(extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals(0, extendedStrictNoCacheTtlCache.map.size()); }
@Test public void addResponseIgnoreCache() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setIgnoreCache(true); HttpResponse response = new HttpResponse("does not matter"); assertNull("response should not have been cached", cache.addResponse(request, response)); assertEquals(0, cache.map.size()); assertNull("response should not have been cached", extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals(0, extendedStrictNoCacheTtlCache.map.size()); }
@Test public void addResponseWithNoCachingHeaders() { HttpRequest request = new HttpRequest(DEFAULT_URI); String key = cache.createKey(request); HttpResponse response = new HttpResponse("no headers"); assertNotNull(cache.addResponse(request, response)); assertEquals("no headers", cache.map.get(key).getResponseAsString()); assertNotNull(extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals("no headers", extendedStrictNoCacheTtlCache.map.get(key).getResponseAsString()); }
@Test public void addResponseUsingPost() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setMethod("POST"); HttpResponse response = new HttpResponse("does not matter"); assertNull(cache.addResponse(request, response)); assertEquals(0, cache.map.size()); assertNull(extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals(0, extendedStrictNoCacheTtlCache.map.size()); }
@Test public void addResponseUsingPost() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setMethod("POST"); HttpResponse response = new HttpResponse("does not matter"); assertFalse(cache.addResponse(request, response)); assertEquals(0, cache.map.size()); }
@Test public void addResponseWithNoCachingHeaders() { HttpRequest request = new HttpRequest(DEFAULT_URI); String key = cache.createKey(request); HttpResponse response = new HttpResponse("no headers"); assertTrue(cache.addResponse(request, response)); assertEquals("no headers", cache.map.get(key).getResponseAsString()); }
@Test public void addResponseIgnoreCache() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setIgnoreCache(true); HttpResponse response = new HttpResponse("does not matter"); assertFalse("response should not have been cached", cache.addResponse(request, response)); assertEquals(0, cache.map.size()); }
@Test public void addResponseWithNoCachingHeaders() { HttpRequest request = new HttpRequest(DEFAULT_URI); String key = cache.createKey(request); HttpResponse response = new HttpResponse("no headers"); assertNotNull(cache.addResponse(request, response)); assertEquals("no headers", cache.map.get(key).getResponseAsString()); assertNotNull(extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals("no headers", extendedStrictNoCacheTtlCache.map.get(key).getResponseAsString()); }
@Test public void addResponseIfModifiedSince() { HttpRequest request = new HttpRequest(DEFAULT_URI); HttpResponse response = new HttpResponseBuilder().setHttpStatusCode(HttpResponse.SC_NOT_MODIFIED).create(); assertNull(cache.addResponse(request, response)); assertEquals(0, cache.map.size()); assertNull(extendedStrictNoCacheTtlCache.addResponse(request, response)); assertEquals(0, extendedStrictNoCacheTtlCache.map.size()); }
@Test public void getResponseNotCacheable() { HttpRequest request = new HttpRequest(DEFAULT_URI); HttpResponse response = new HttpResponseBuilder().setStrictNoCache().create(); cache.addResponse(request, response); assertNull("Did not return null when response was uncacheable", cache.getResponse(request)); }