in ddm-bpm-client/src/it/java/com/epam/digital/data/platform/bpms/client/TaskRestClientIT.java [293:317]
void shouldReturn422DuringTaskCompletion() throws JsonProcessingException {
var details = new ErrorsListDto();
details.setErrors(Lists.newArrayList(new ErrorDetailDto("test msg",
"key1", "val1")));
var errorDto422 = ValidationErrorDto.builder().details(details).build();
restClientWireMock.addStubMapping(
stubFor(post(urlPathEqualTo("/api/extended/task/taskId/complete"))
.willReturn(aResponse()
.withHeader("Content-Type", "application/json")
.withStatus(422)
.withBody(objectMapper.writeValueAsString(errorDto422)))
)
);
var completeTaskDto = DdmCompleteTaskDto.builder().build();
var exception = assertThrows(ValidationException.class,
() -> taskRestClient.completeTaskById("taskId", completeTaskDto));
assertThat(exception.getDetails().getErrors().get(0).getMessage())
.isEqualTo("test msg");
assertThat(exception.getDetails().getErrors().get(0).getField())
.isEqualTo("key1");
assertThat(exception.getDetails().getErrors().get(0).getValue())
.isEqualTo("val1");
}