protected static void assertQueryPromiseFailedWithCodes( Promise<QueryResponse, ResourceException> promise, int resourceErrorCode, int entitlementErrorCode) { try { promise.getOrThrowUninterruptibly(); fail("Should throw ResourceException"); } catch (ResourceException e) { Assertions.assertThat(e.getCode()).isEqualTo(resourceErrorCode); Assertions.assertThat(e.getCause()).isInstanceOf(EntitlementException.class); Assertions.assertThat(((EntitlementException) e.getCause()).getErrorCode()) .isEqualTo(entitlementErrorCode); } }
@Test public void getShouldFailWhenResourceExceptionThrown() throws ResourceException { // Given final String uri = "URI"; final Map<String, String> queryParameters = new HashMap<String, String>(); final Map<String, String> headers = new HashMap<String, String>(); final org.restlet.resource.ResourceException exception = new org.restlet.resource.ResourceException(500, "EXCEPTION_MESSAGE", "DESCRIPTION", "URI"); doThrow(exception).when(resource).get(JSONObject.class); // When try { restClient.get(uri, queryParameters, headers); } catch (ResourceException e) { // Then assertEquals(e.getCode(), 500); assertEquals(e.getMessage(), "EXCEPTION_MESSAGE"); verify(resource, never()).addQueryParameter(anyString(), anyString()); verify(requestHeaders, never()).set(anyString(), anyString()); verify(resource, never()).getContext(); } }