/** * Construct a new request for the given uri. */ public HttpRequest(Uri uri) { this.uri = uri; authType = AuthType.NONE; addHeader(DOS_PREVENTION_HEADER, "on"); }
/** * Construct a new request for the given uri. */ public HttpRequest(Uri uri) { this.uri = uri; authType = AuthType.NONE; addHeader(DOS_PREVENTION_HEADER, "on"); }
/** * Adds an entire map of headers to the request. */ public HttpRequest addHeaders(Map<String, String> headers) { for (Map.Entry<String, String> entry : headers.entrySet()) { addHeader(entry.getKey(), entry.getValue()); } return this; }
/** * Adds an entire map of headers to the request. */ public HttpRequest addHeaders(Map<String, String> headers) { for (Map.Entry<String, String> entry : headers.entrySet()) { addHeader(entry.getKey(), entry.getValue()); } return this; }
@Test public void getHeaders() throws Exception { HttpRequest request = new HttpRequest(DEFAULT_URI) .addHeader(TEST_HEADER_KEY, TEST_HEADER_VALUE) .addHeader(TEST_HEADER_KEY, TEST_HEADER_VALUE2); Collection<String> expected = Arrays.asList(TEST_HEADER_VALUE, TEST_HEADER_VALUE2); assertTrue(request.getHeaders(TEST_HEADER_KEY).containsAll(expected)); }
private void expectPostAndReturnBody(AuthType authType, String postData, String response) throws Exception { HttpRequest req = new HttpRequest(REQUEST_URL).setMethod("POST") .setPostBody(postData.getBytes("UTF-8")) .setAuthType(authType) .addHeader("Content-Type", "application/x-www-form-urlencoded"); expect(pipeline.execute(req)).andReturn(new HttpResponse(response)); expect(request.getParameter(MakeRequestHandler.METHOD_PARAM)).andReturn("POST"); expect(request.getParameter(MakeRequestHandler.POST_DATA_PARAM)) .andReturn(postData); }
private void expectPostAndReturnBody(AuthType authType, String postData, String response) throws Exception { HttpRequest req = new HttpRequest(REQUEST_URL).setMethod("POST") .setPostBody(REQUEST_BODY.getBytes("UTF-8")) .setAuthType(authType) .addHeader("Content-Type", "application/x-www-form-urlencoded"); expect(pipeline.execute(req)).andReturn(new HttpResponse(response)); expect(request.getParameter(MakeRequestHandler.METHOD_PARAM)).andReturn("POST"); expect(request.getParameter(MakeRequestHandler.POST_DATA_PARAM)) .andReturn(REQUEST_BODY); }
private void expectPostAndReturnBody(AuthType authType, String postData, String response) throws Exception { HttpRequest req = new HttpRequest(REQUEST_URL).setMethod("POST") .setPostBody(postData.getBytes("UTF-8")) .setAuthType(authType) .addHeader("Content-Type", "application/x-www-form-urlencoded"); expect(pipeline.execute(req)).andReturn(new HttpResponse(response)); expect(request.getParameter(MakeRequestHandler.METHOD_PARAM)).andReturn("POST"); expect(request.getParameter(MakeRequestHandler.POST_DATA_PARAM)) .andReturn(postData); }
@Test public void getHeader() throws Exception { Map<String, List<String>> headers = Maps.newHashMap(); headers.put(TEST_HEADER_KEY, Arrays.asList(TEST_HEADER_VALUE)); HttpRequest request = new HttpRequest(DEFAULT_URI) .addHeader(TEST_HEADER_KEY, TEST_HEADER_VALUE); assertEquals(TEST_HEADER_VALUE, request.getHeader(TEST_HEADER_KEY)); }
@Test public void getHeader() throws Exception { Map<String, List<String>> headers = Maps.newHashMap(); headers.put(TEST_HEADER_KEY, Arrays.asList(TEST_HEADER_VALUE)); HttpRequest request = new HttpRequest(DEFAULT_URI) .addHeader(TEST_HEADER_KEY, TEST_HEADER_VALUE); assertEquals(TEST_HEADER_VALUE, request.getHeader(TEST_HEADER_KEY)); }
@Test public void getHeader() throws Exception { Map<String, List<String>> headers = Maps.newHashMap(); headers.put(TEST_HEADER_KEY, Arrays.asList(TEST_HEADER_VALUE)); HttpRequest request = new HttpRequest(DEFAULT_URI) .addHeader(TEST_HEADER_KEY, TEST_HEADER_VALUE); assertEquals(TEST_HEADER_VALUE, request.getHeader(TEST_HEADER_KEY)); }
@Test public void contentTypeExtraction() throws Exception { HttpRequest request = new HttpRequest(DEFAULT_URI) .addHeader("Content-Type", CONTENT_TYPE); assertEquals(CONTENT_TYPE, request.getContentType()); }
@Test public void contentTypeExtraction() throws Exception { HttpRequest request = new HttpRequest(DEFAULT_URI) .addHeader("Content-Type", CONTENT_TYPE); assertEquals(CONTENT_TYPE, request.getContentType()); }
@Test public void getResponseUsingMethodOverride() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setMethod("POST") .addHeader("X-Method-Override", "GET"); String key = cache.createKey(request); HttpResponse response = new HttpResponse("result"); cache.map.put(key, response); assertEquals(response, cache.getResponse(request)); extendedStrictNoCacheTtlCache.map.put(key, response); assertEquals(response, extendedStrictNoCacheTtlCache.getResponse(request)); }
@Test public void getResponseUsingMethodOverride() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setMethod("POST") .addHeader("X-Method-Override", "GET"); String key = cache.createKey(request); HttpResponse response = new HttpResponse("result"); cache.map.put(key, response); assertEquals(response, cache.getResponse(request)); extendedStrictNoCacheTtlCache.map.put(key, response); assertEquals(response, extendedStrictNoCacheTtlCache.getResponse(request)); }
@Test public void getResponseUsingMethodOverride() { HttpRequest request = new HttpRequest(DEFAULT_URI) .setMethod("POST") .addHeader("X-Method-Override", "GET"); String key = cache.createKey(request); HttpResponse response = new HttpResponse("result"); cache.map.put(key, response); assertEquals(response, cache.getResponse(request)); }
@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 testHugeBody() throws Exception { byte[] body = new byte[1024*1024]; // 1 MB for (int i=0; i < body.length; ++i) { body[i] = (byte)i; } HttpRequest request = new HttpRequest(BASE_URL) .setMethod("POST") .setPostBody(body) .addHeader("content-type", "application/octet-stream"); HttpResponse response = fetcher.fetch(request); assertEquals("POST", response.getHeader("x-method")); ArrayAssert.assertEquals(body, response.getResponseAsBytes()); }
@Test public void testPost_withBody() throws Exception { byte[] body = new byte[5000]; for (int i=0; i < body.length; ++i) { body[i] = (byte)(i % 255); } HttpRequest request = new HttpRequest(BASE_URL) .setMethod("POST") .setPostBody(body) .addHeader("content-type", "application/octet-stream"); HttpResponse response = fetcher.fetch(request); assertEquals("POST", response.getHeader("x-method")); ArrayAssert.assertEquals(body, response.getResponseAsBytes()); }
@Test public void testPut_withBody() throws Exception { byte[] body = new byte[5000]; for (int i=0; i < body.length; ++i) { body[i] = (byte)i; } HttpRequest request = new HttpRequest(BASE_URL) .setMethod("PUT") .setPostBody(body) .addHeader("content-type", "application/octet-stream"); HttpResponse response = fetcher.fetch(request); assertEquals("PUT", response.getHeader("x-method")); ArrayAssert.assertEquals(body, response.getResponseAsBytes()); }