public void testSimpleEtag() throws Exception { MockHttpRequest request = new MockHttpRequest() { @Override public String getMethod() { return HttpGet.METHOD_NAME; } @Override public URI getURI() { return URI.create("http://test.com"); } @Override public boolean containsHeader(String name) { return false; } }; try { interceptor.onPreCall(request, null); } catch (UnsupportedOperationException e) { fail(); } assertTrue("should not give an exception", true); }
public void testGettingEtag() throws Exception { ETag etag = new ETag(); etag.etag = "test-etag"; etag.lastModified = "modified"; interceptor.helper.insertETagForUri(etag, "http://test.com"); MockHttpRequest request = new MockHttpRequest() { @Override public String getMethod() { return HttpGet.METHOD_NAME; } @Override public URI getURI() { return URI.create("http://test.com"); } @Override public boolean containsHeader(String name) { return false; } @Override public void addHeader(Header header) { if (header.getName().equals(ETag.ETAG)) { assertEquals("test-etag", header.getValue()); } if (header.getName().equals(ETag.LAST_MODIFIED)) { assertEquals("modified", header.getValue()); } } }; try { interceptor.onPreCall(request, null); } catch (UnsupportedOperationException e) { fail("should not give an exception"); } assertTrue(true); }
public void testInsertEtag() throws Exception { MockHttpResponse response = new MockHttpResponse() { @Override public boolean containsHeader(String name) { return true; } public org.apache.http.StatusLine getStatusLine() { return new BasicStatusLine(new ProtocolVersion("http", 1, 1), 200, "OK"); }; @Override public Header getFirstHeader(String name) { if (name.equals(ETag.ETAG)) { return new BasicHeader(ETag.ETAG, "test-etag"); } else if (name.equals(ETag.LAST_MODIFIED)) { return new BasicHeader(ETag.LAST_MODIFIED, "last-modified"); } return super.getFirstHeader(name); } }; HttpContext context = new BasicHttpContext(); context.setAttribute( ExecutionContext.HTTP_REQUEST, new MockHttpRequest() { @Override public RequestLine getRequestLine() { return new BasicRequestLine("GET", "test.com", new ProtocolVersion("http", 1, 1)); } }); final HttpHost targetHost = new HttpHost("test.com"); context.setAttribute(ExecutionContext.HTTP_TARGET_HOST, targetHost); interceptor.onPostCall(response, context); ETag etag = interceptor.helper.getETag("test.com"); assertEquals("test-etag", etag.etag); assertEquals("last-modified", etag.lastModified); }