public Object evaluatePredictedValue(final ProcessingDTO processingDTO) {
        return commonEvaluate(getValueFromKiePMMLNameValuesByVariableName(targetField, processingDTO.getKiePMMLNameValues())
                                      .orElse(null), dataType);
    }
@Test
    void evaluatePredictedValue() {
        final String variableName = "variableName";
        KiePMMLOutputField kiePMMLOutputField = KiePMMLOutputField.builder("outputfield", Collections.emptyList())
                .withResultFeature(RESULT_FEATURE.PREDICTED_VALUE)
                .withTargetField(variableName)
                .build();
        final List<KiePMMLNameValue> kiePMMLNameValues = IntStream.range(0, 3).mapToObj(i -> new KiePMMLNameValue(
                "val-" + i, i)).collect(Collectors.toList());
        ProcessingDTO processingDTO = getProcessingDTO(Collections.emptyList(),
                                                       kiePMMLNameValues, Collections.emptyList());
        assertThat(kiePMMLOutputField.evaluate(processingDTO)).isNull();
        final Object variableValue = 243.94;
        kiePMMLNameValues.add(new KiePMMLNameValue(variableName, variableValue));
        processingDTO = getProcessingDTO(Collections.emptyList(),
                                         kiePMMLNameValues, Collections.emptyList());
        Object retrieved = kiePMMLOutputField.evaluate(processingDTO);
        assertThat(retrieved).isNotNull();
        assertThat(retrieved).isEqualTo(variableValue);
    }