private HttpFetcher mockFetcher(Uri toFetch, String content) throws Exception { HttpFetcher fetcher = createMock(HttpFetcher.class); HttpRequest req = new HttpRequest(toFetch); HttpResponse resp = new HttpResponseBuilder().setHttpStatusCode(HttpResponse.SC_OK) .setResponseString(content).create(); expect(fetcher.fetch(eq(req))).andReturn(resp); replay(fetcher); return fetcher; } }
private void mockFetcher(Uri toFetch, String content) throws Exception { HttpRequest req = new HttpRequest(toFetch); HttpResponse resp = new HttpResponseBuilder().setHttpStatusCode(HttpResponse.SC_OK) .setResponseString(content).create(); expect(fetcher.fetch(eq(req))).andReturn(resp); replay(fetcher); }
private void mockFetcher(Uri toFetch, String content) throws Exception { HttpRequest req = new HttpRequest(toFetch); HttpResponse resp = new HttpResponseBuilder().setHttpStatusCode(HttpResponse.SC_OK) .setResponseString(content).create(); expect(fetcher.fetch(eq(req))).andReturn(resp); replay(fetcher); }
@Test public void testReadConfigEndpointsDown() throws Exception { EasyMock.expect(mockFetcher.fetch(EasyMock.isA(HttpRequest.class))).andReturn( new HttpResponse("")).anyTimes(); replay(); Multimap<String, String> services = fetcher.getServicesForContainer("default", "dontcare"); verify(); assertEquals(configuredServices, services); }
@Test public void testDelete() throws Exception { HttpRequest request = new HttpRequest(BASE_URL).setMethod("DELETE"); HttpResponse response = fetcher.fetch(request); assertEquals("DELETE", response.getHeader("x-method")); }
@Test public void testHttpUnderscore() throws Exception { Uri uri = Uri.parse("http://0.test_host.com/data"); HttpRequest request = new HttpRequest(uri); HttpResponse response = fetcher.fetch(request); assertEquals(504, response.getHttpStatusCode()); //timeout }
@Test public void testDelete() throws Exception { HttpRequest request = new HttpRequest(BASE_URL).setMethod("DELETE"); HttpResponse response = fetcher.fetch(request); assertEquals("DELETE", response.getHeader("x-method")); }
@Test public void testHttpUnderscore() throws Exception { Uri uri = Uri.parse("http://0.test_host.com/data"); HttpRequest request = new HttpRequest(uri); HttpResponse response = fetcher.fetch(request); assertEquals(504, response.getHttpStatusCode()); //timeout }
@Test public void testHttpBadPort() throws Exception { Uri uri = Uri.parse("http://a:b/"); HttpRequest request = new HttpRequest(uri); try { fetcher.fetch(request); fail("Expected GadgetException"); } catch (GadgetException e) { assertEquals(400, e.getHttpStatusCode()); assertTrue(e.getMessage().contains("Bad port number in request")); } }
@Test public void testHttpBadUrl() throws Exception { Uri uri = Uri.parse("host/data"); HttpRequest request = new HttpRequest(uri); try { fetcher.fetch(request); fail("Expected GadgetException"); } catch (GadgetException e) { assertEquals(400, e.getHttpStatusCode()); assertTrue(e.getMessage().contains("Missing domain name for request")); } }
@Test public void testHttpNoSchema() throws Exception { Uri uri = Uri.parse("//host/data"); HttpRequest request = new HttpRequest(uri); try { fetcher.fetch(request); fail("Expected GadgetException"); } catch (GadgetException e) { assertEquals(400, e.getHttpStatusCode()); assertTrue(e.getMessage().contains("Missing schema for request")); } }
@Test public void testPut_noBody() throws Exception { HttpRequest request = new HttpRequest(BASE_URL).setMethod("PUT"); HttpResponse response = fetcher.fetch(request); assertEquals("PUT", response.getHeader("x-method")); assertEquals("", response.getResponseAsString()); }
@Test public void testPost_noBody() throws Exception { HttpRequest request = new HttpRequest(BASE_URL).setMethod("POST"); HttpResponse response = fetcher.fetch(request); assertEquals("POST", response.getHeader("x-method")); assertEquals("", response.getResponseAsString()); }
@Test public void testPost_noBody() throws Exception { HttpRequest request = new HttpRequest(BASE_URL).setMethod("POST"); HttpResponse response = fetcher.fetch(request); assertEquals("POST", response.getHeader("x-method")); assertEquals("", response.getResponseAsString()); }
@Test public void testHttpFetch() throws Exception { String content = "Hello, world!"; Uri uri = new UriBuilder(BASE_URL).addQueryParameter("body", content).toUri(); HttpRequest request = new HttpRequest(uri); HttpResponse response = fetcher.fetch(request); assertEquals(200, response.getHttpStatusCode()); assertEquals(content, response.getResponseAsString()); }
@Test public void testHttpFetch() throws Exception { String content = "Hello, world!"; Uri uri = new UriBuilder(BASE_URL).addQueryParameter("body", content).toUri(); HttpRequest request = new HttpRequest(uri); HttpResponse response = fetcher.fetch(request); assertEquals(200, response.getHttpStatusCode()); assertEquals(content, response.getResponseAsString()); }
@Test public void testHttp404() throws Exception { String content = "Hello, world!"; Uri uri = new UriBuilder(BASE_URL) .addQueryParameter("body", content) .addQueryParameter("status", "404") .toUri(); HttpRequest request = new HttpRequest(uri); HttpResponse response = fetcher.fetch(request); assertEquals(404, response.getHttpStatusCode()); assertEquals(content, response.getResponseAsString()); }
@Test public void testFollowRelativeRedirects() throws Exception { String content = ""; Uri uri = new UriBuilder(BASE_URL) .addQueryParameter("body", content) .addQueryParameter("status", "302") .addQueryParameter("header", "Location=/?body=redirected") .toUri(); HttpRequest request = new HttpRequest(uri); HttpResponse response = fetcher.fetch(request); assertEquals(200, response.getHttpStatusCode()); assertEquals("redirected", response.getResponseAsString()); }
@Test public void testFollowRedirects() throws Exception { String content = ""; Uri uri = new UriBuilder(BASE_URL) .addQueryParameter("body", content) .addQueryParameter("status", "302") .addQueryParameter("header", "Location=" + BASE_URL.toString() + "?body=redirected") .toUri(); HttpRequest request = new HttpRequest(uri); HttpResponse response = fetcher.fetch(request); assertEquals(200, response.getHttpStatusCode()); assertEquals("redirected", response.getResponseAsString()); }
@Test public void testFollowRedirects() throws Exception { String content = ""; Uri uri = new UriBuilder(BASE_URL) .addQueryParameter("body", content) .addQueryParameter("status", "302") .addQueryParameter("header", "Location=" + BASE_URL.toString() + "?body=redirected") .toUri(); HttpRequest request = new HttpRequest(uri); HttpResponse response = fetcher.fetch(request); assertEquals(200, response.getHttpStatusCode()); assertEquals("redirected", response.getResponseAsString()); }