public static KiePMMLDroolsAST getKiePMMLDroolsAST(final List<Field<?>> fields,
                                                       final TreeModel model,
                                                       final Map<String, KiePMMLOriginalTypeGeneratedType> fieldTypeMap,
                                                       final List<KiePMMLDroolsType> types) {
        logger.trace("getKiePMMLDroolsAST {}", model);
        return KiePMMLTreeModelASTFactory.getKiePMMLDroolsAST(fields, model, fieldTypeMap, types);
    }
@Test
    void getKiePMMLDroolsAST() {
        final DataDictionary dataDictionary = pmml.getDataDictionary();
        final Map<String, KiePMMLOriginalTypeGeneratedType> fieldTypeMap = getFieldTypeMap(pmml.getDataDictionary(),
                pmml.getTransformationDictionary(),
                treeModel.getLocalTransformations());
        KiePMMLDroolsAST retrieved =
                KiePMMLTreeModelFactory.getKiePMMLDroolsAST(getFieldsFromDataDictionary(dataDictionary), treeModel,
                        fieldTypeMap, Collections.emptyList());
        assertThat(retrieved).isNotNull();
        List<DataField> dataFields = dataDictionary.getDataFields();
        assertThat(fieldTypeMap).hasSameSizeAs(dataFields);
        dataFields.forEach(dataField -> assertThat(fieldTypeMap).containsKey(dataField.getName()));
    }