### Question:
DocumentClientException extends Exception { public int getStatusCode() { return this.statusCode; } DocumentClientException(int statusCode);  DocumentClientException(int statusCode, String errorMessage);  DocumentClientException(int statusCode, Exception innerException);  DocumentClientException(int statusCode, Error errorResource, Map<String, String> responseHeaders);  DocumentClientException(
        String resourceAddress, int statusCode, Error errorResource, Map<String, String> responseHeaders);  DocumentClientException(
        String message,
        Exception exception,
        Map<String, String> responseHeaders,
        int statusCode,
        String resourceAddress); private  DocumentClientException(
        int statusCode, String message, Map<String, String> responseHeaders, Throwable cause); String getActivityId(); ClientSideRequestStatistics getClientSideRequestStatistics(); void setClientSideRequestStatistics(ClientSideRequestStatistics clientSideRequestStatistics); Error getError(); long getLsn(); @Override String getMessage(); String getPartitionKeyRangeId(); Map<String, String> getRequestHeaders(); Uri getRequestUri(); void setRequestUri(Uri requestUri); Map<String, String> getResponseHeaders(); long getRetryAfterInMilliseconds(); int getStatusCode(); int getSubStatusCode(); @Override String toString();  }### Answer:
@Test(groups = { "unit" }, dataProvider = "subTypes") public void statusCodeIsCorrect(Class<DocumentClientException> type, int expectedStatusCode) { try { final DocumentClientException instance = type .getConstructor(String.class, HttpResponseHeaders.class, String.class) .newInstance("some-message", null, "some-uri"); assertEquals(instance.getStatusCode(), expectedStatusCode); } catch (IllegalAccessException | InstantiationException | NoSuchMethodException | InvocationTargetException error) { String message = lenientFormat("could not create instance of %s due to %s", type, error); throw new AssertionError(message, error); } }