@Test
void validateResponseWithEmptyBody() {

    assertThatThrownBy(() -> webServiceClient.validateResponse(new HTTPResponse(HTTPStatus.SERVICE_UNAVAILABLE.code, Map.of(), new byte[0])))
            .isInstanceOf(RemoteServiceException.class)
            .satisfies(throwable -> {
                RemoteServiceException exception = (RemoteServiceException) throwable;
                assertThat(exception.severity()).isEqualTo(Severity.ERROR);
                assertThat(exception.errorCode()).isEqualTo("REMOTE_SERVICE_ERROR");
                assertThat(exception.getMessage()).isEqualTo("failed to call remote service, statusCode=503");
                assertThat(exception.status).isEqualTo(HTTPStatus.SERVICE_UNAVAILABLE);
            });
}