public void shouldThrowUserDataValidationException()

in ddm-bpm-extension/src/it/java/com/epam/digital/data/platform/bpms/extension/it/UserDataValidationErrorDelegateIT.java [33:61]


  public void shouldThrowUserDataValidationException() {
    var pdKey = "Process_0plk85h";
    ProcessInstance process = runtimeService
        .startProcessInstanceByKey(pdKey, "1", new HashMap<>());

    var tasks = engine.getTaskService().createTaskQuery().processInstanceId(process.getId()).list();
    var taskId = tasks.get(0).getId();
    var ex = assertThrows(ValidationException.class, () -> taskService.complete(taskId));

    var expectedExceptionMsg = String.format(
        VALIDATION_ERROR_MSG_PATTERN, pdKey, process.getId(),
        "well-readable-activity-id");
    assertThat(ex).isNotNull();
    assertThat(ex.getMessage()).isEqualTo(expectedExceptionMsg);
    assertThat(ex.getDetails()).isNotNull();
    assertThat(ex.getDetails().getErrors()).isNotEmpty();
    var validationErrors = ex.getDetails().getErrors();
    assertThat(validationErrors).hasSize(2);

    var validationErrorDto1 = validationErrors.get(0);
    assertThat(validationErrorDto1.getMessage()).isEqualTo("test message");
    assertThat(validationErrorDto1.getField()).isEqualTo("taxPayerId");
    assertThat(validationErrorDto1.getValue()).isEqualTo("value");

    var validationErrorDto2 = validationErrors.get(1);
    assertThat(validationErrorDto2.getMessage()).isEqualTo("test message2");
    assertThat(validationErrorDto2.getField()).isEqualTo("taxPayerId2");
    assertThat(validationErrorDto2.getValue()).isEqualTo("value2");
  }