void shouldReturnProcessInstanceWithVariablesOnStartProcessDefinitionByKey()

in ddm-bpm-client/src/it/java/com/epam/digital/data/platform/bpms/client/ProcessDefinitionRestClientIT.java [160:187]


   void shouldReturnProcessInstanceWithVariablesOnStartProcessDefinitionByKey()
      throws JsonProcessingException {
    var executionEntity = new ExecutionEntity();
    executionEntity.setId("testInstanceId");
    executionEntity.setProcessDefinitionId("testId");

    var variableMap = new VariableMapImpl();
    variableMap.put("var1", "value1");

    var processInstanceWithVariables = new ProcessInstanceWithVariablesImpl(executionEntity,
        variableMap);
    var processInstanceWithVariablesDto = ProcessInstanceWithVariablesDto
        .fromProcessInstance(processInstanceWithVariables);
    restClientWireMock.addStubMapping(
        stubFor(post(urlEqualTo("/api/process-definition/key/testId/start"))
            .willReturn(aResponse()
                .withStatus(200)
                .withHeader("Content-Type", "application/json")
                .withBody(objectMapper.writeValueAsString(processInstanceWithVariablesDto))))
    );

    var resultDto = processDefinitionRestClient
        .startProcessInstanceByKey("testId", new StartProcessInstanceDto());

    assertThat(resultDto.getId()).isEqualTo("testInstanceId");
    assertThat(resultDto.getDefinitionId()).isEqualTo("testId");
    assertThat(resultDto.getVariables().get("var1").getValue()).isEqualTo("value1");
  }