public static HttpRequest eq(final HttpRequest request) { return argThat(new HttpRequestMatcher(request)); }
@Override public boolean matches(final Object actual) { if (actual instanceof HttpUriRequest) { final HttpUriRequest converted = (HttpUriRequest) actual; return checkMethod(converted) && checkUri(converted) && checkPayload(converted); } else { return wanted == actual; } }
@Override public void describeTo(final Description description) { description.appendText(describe(wanted)); }
private boolean checkPayload(final HttpUriRequest actual) { final String wantedPayload = getPayload(wanted); final String actualPayload = getPayload(actual); return equalsString(wantedPayload, actualPayload); }
@Test public void testExecuteRequest() throws Exception { when(mockResponse.getStatusLine()).thenReturn(HTTP_200_REPSONSE); doReturn(mockResponse).when(httpClient).execute(any(HttpHost.class), HttpRequestMatcher.eq(request), any(HttpClientContext.class)); final BasicRestClient restClient = BasicRestClient.create() .host(LOCALHOST) .client(httpClient) .build(); final CloseableHttpResponse response = restClient.execute(request); assertThat(response, notNullValue()); assertThat(response, sameInstance(mockResponse)); assertThat(response.getStatusLine(), sameInstance(HTTP_200_REPSONSE)); }
private boolean checkUri(final HttpUriRequest actual) { if (wanted instanceof HttpUriRequest) { final String wantedQuery = ((HttpUriRequest) wanted).getURI().getQuery(); final String actualQuery = actual.getURI().getQuery(); return equalsString(wantedQuery, actualQuery); } else { return wanted == actual; } }
public String describe(final HttpRequest object) { final StringBuilder sb = new StringBuilder(); if (object instanceof HttpUriRequest) { final HttpUriRequest converted = (HttpUriRequest) object; sb.append("method = ").append(converted.getMethod()); sb.append(", query = ").append(converted.getURI().getQuery()); sb.append(", payload = ").append(getPayload(object)); } return sb.toString(); }
private boolean checkPayload(final HttpUriRequest actual) { final String wantedPayload = getPayload(wanted); final String actualPayload = getPayload(actual); return equalsString(wantedPayload, actualPayload); }
@Test public void testExecuteRequestStatusCodeIsNotOk() throws Exception { when(mockResponse.getStatusLine()).thenReturn(HTTP_503_STATUSLINE); doReturn(mockResponse).when(httpClient).execute(any(HttpHost.class), HttpRequestMatcher.eq(request), any(HttpClientContext.class)); final BasicRestClient restClient = BasicRestClient.create() .host(LOCALHOST) .client(httpClient) .build(); final CloseableHttpResponse response = restClient.execute(request); assertThat(response, notNullValue()); assertThat(response, sameInstance(mockResponse)); assertThat(response.getStatusLine(), sameInstance(HTTP_503_STATUSLINE)); }
private boolean checkMethod(final HttpUriRequest actual) { if (wanted instanceof HttpUriRequest) { final String wantedMethod = ((HttpUriRequest) wanted).getMethod(); final String actualMethod = actual.getMethod(); return equalsString(wantedMethod, actualMethod); } else { return wanted == actual; } }
public String describe(final HttpRequest object) { final StringBuilder sb = new StringBuilder(); if (object instanceof HttpUriRequest) { final HttpUriRequest converted = (HttpUriRequest) object; sb.append("method = ").append(converted.getMethod()); sb.append(", query = ").append(converted.getURI().getQuery()); sb.append(", payload = ").append(getPayload(object)); } return sb.toString(); }
@Override public boolean matches(final Object actual) { if (actual instanceof HttpUriRequest) { final HttpUriRequest converted = (HttpUriRequest) actual; return checkMethod(converted) && checkUri(converted) && checkPayload(converted); } else { return wanted == actual; } }
@Test public void testExecuteRequestStatusCodeIsNotOk() throws Exception { when(mockResponse.getStatusLine()).thenReturn(HTTP_503_STATUSLINE); doReturn(mockResponse).when(httpClient).execute(any(HttpHost.class), HttpRequestMatcher.eq(request), any(HttpClientContext.class)); final BasicRestClient restClient = BasicRestClient.create() .host(LOCALHOST) .client(httpClient) .build(); final CloseableHttpResponse response = restClient.execute(request); assertThat(response, notNullValue()); assertThat(response, sameInstance(mockResponse)); assertThat(response.getStatusLine(), sameInstance(HTTP_503_STATUSLINE)); }
@Override public void describeTo(final Description description) { description.appendText("(" + wanted.getClass().getSimpleName() + ") ").appendText(describe(wanted)); } };
private boolean checkUri(final HttpUriRequest actual) { if (wanted instanceof HttpUriRequest) { final String wantedQuery = ((HttpUriRequest) wanted).getURI().getQuery(); final String actualQuery = actual.getURI().getQuery(); return equalsString(wantedQuery, actualQuery); } else { return wanted == actual; } }
public static HttpRequest eq(final HttpRequest request) { return argThat(new HttpRequestMatcher(request)); }
@Test public void testExecuteRequest() throws Exception { when(mockResponse.getStatusLine()).thenReturn(HTTP_200_REPSONSE); doReturn(mockResponse).when(httpClient).execute(any(HttpHost.class), HttpRequestMatcher.eq(request), any(HttpClientContext.class)); final BasicRestClient restClient = BasicRestClient.create() .host(LOCALHOST) .client(httpClient) .build(); final CloseableHttpResponse response = restClient.execute(request); assertThat(response, notNullValue()); assertThat(response, sameInstance(mockResponse)); assertThat(response.getStatusLine(), sameInstance(HTTP_200_REPSONSE)); }
@Override public void describeTo(final Description description) { description.appendText(describe(wanted)); }
private boolean checkMethod(final HttpUriRequest actual) { if (wanted instanceof HttpUriRequest) { final String wantedMethod = ((HttpUriRequest) wanted).getMethod(); final String actualMethod = actual.getMethod(); return equalsString(wantedMethod, actualMethod); } else { return wanted == actual; } }
@Override public void describeTo(final Description description) { description.appendText("(" + wanted.getClass().getSimpleName() + ") ").appendText(describe(wanted)); } };