in ddm-data-factory-feign-client/it/java/com/epam/digital/data/platform/datafactory/factory/client/DataFactoryFeignClientIT.java [211:233]
void shouldPerformUnprocessableEntityException() {
var resource = "testResource";
var id = "testId";
var expectedBody = "{\"code\": \"UNPROCESSABLE_ENTITY\", \"details\": {\"errors\": [{\"message\": \"msg\", \"field\": \"fld\", \"value\": \"val\"}]}}";
var headers = new HttpHeaders();
headers.add("Content-Type", "application/json");
headers.add("X-Access-Token", "token");
mockExceptionDataFactoryFeignClient(StubRequest.builder()
.path(String.format("/%s/%s", resource, id))
.method(HttpMethod.GET)
.requestHeaders(headers)
.status(422)
.responseHeaders(Map.of("Content-Type", List.of("application/json")))
.responseBody(expectedBody)
.build());
ValidationException exception = assertThrows(ValidationException.class, () -> dataFactoryFeignClient.performGet(resource, id, headers));
assertThat(exception).isNotNull();
assertThat(exception.getCode()).isEqualTo("UNPROCESSABLE_ENTITY");
assertThat(exception.getDetails().getErrors().get(0).getMessage()).isEqualTo("Значення змінної не відповідає правилам вказаним в домені");
}