ChinchuAjith commented on code in PR #6267:
URL:
https://github.com/apache/incubator-kie-drools/pull/6267#discussion_r1987585302
##########
kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/compiler/DMNCompilerImplTest.java:
##########
@@ -70,10 +83,192 @@ void getRootElement() {
InformationRequirement informationRequirement = new
TInformationRequirement();
elementReference.setParent(informationRequirement);
- assertThatExceptionOfType(RuntimeException.class).isThrownBy(() ->
DMNCompilerImpl.getRootElement(elementReference));
-
+ assertThatExceptionOfType(RuntimeException.class).isThrownBy(
+ () ->
DMNCompilerImpl.getRootElement(elementReference)).withMessageContaining
+ ("Failed to get Definitions parent for
org.kie.dmn.model.v1_5");
informationRequirement.setParent(parent);
retrieved = DMNCompilerImpl.getRootElement(elementReference);
assertThat(retrieved).isNotNull().isEqualTo(parent);
}
-}
\ No newline at end of file
+
+ @Test
+ void compile() {
+ List<DMNModel> dmnModels = new ArrayList<>();
+ String nameSpace =
"http://www.trisotech.com/dmn/definitions/_f27bb64b-6fc7-4e1f-9848-11ba35e0df44";
+ Resource resource = new ClassPathResource(
"valid_models/DMNv1_5/Imported_Model_Unamed.dmn",
+ this.getClass());
+ DMNModel importedModel = dMNCompiler.compile( resource, dmnModels);
+ assertThat(importedModel).isNotNull();
+
assertThat(importedModel.getNamespace()).isNotNull().isEqualTo(nameSpace);
+ assertThat(importedModel.getMessages()).isEmpty();
+ }
+
+ @Test
+ void compileWithUnknownTypeModelImports() {
+ List<DMNModel> dmnModels = new ArrayList<>();
+ String nameSpace =
"http://www.trisotech.com/dmn/definitions/_f27bb64b-6fc7-4e1f-9848-11ba35e0df44";
+ String modelName = "Imported Model";
+ String importType =
String.valueOf(ImportDMNResolverUtil.ImportType.UNKNOWN);
+ Resource resource = new ClassPathResource(
"valid_models/DMNv1_5/Imported_Model_Unamed.dmn",
+ this.getClass());
+ DMNModel model = dMNCompiler.compile( resource, dmnModels);
+ assertThat(model).isNotNull();
+ Definitions dmnDefn = model.getDefinitions();
+ addImport(dmnDefn, importType, nameSpace, modelName);
+ dmnModels.add(model);
+ model = dMNCompiler.compile(dmnDefn, resource, dmnModels);
+ assertThat(model).isNotNull();
+ assertThat(model.getName()).isNotNull().isEqualTo(modelName);
+ assertThat(model.getMessages()).isNotEmpty();
+ assertThat(model.getMessages().size()).isEqualTo(1);
+ assertThat(model.getMessages().get(0).getText()).isEqualTo("DMN:
Import type unknown: 'UNKNOWN'. (Invalid FEEL syntax on the referenced
expression) ");
+
+ }
+
+ @Test
+ void compileWithImportingDmnModel() {
+ List<DMNModel> dmnModels = new ArrayList<>();
+ Resource resource = new ClassPathResource(
"valid_models/DMNv1_5/Imported_Model_Unamed.dmn",
+ this.getClass());
+ DMNModel importedModel = dMNCompiler.compile( resource, dmnModels);
+ assertThat(importedModel).isNotNull();
+ dmnModels.add(importedModel);
+
+ //imported model - Importing_Named_Model.dmn
+ String nameSpace =
"http://www.trisotech.com/dmn/definitions/_f79aa7a4-f9a3-410a-ac95-bea496edabgc";
+ resource = new ClassPathResource(
"valid_models/DMNv1_5/Importing_Named_Model.dmn",
+ this.getClass());
+
+ DMNModel importingModel = dMNCompiler.compile(resource, dmnModels);
+ assertThat(importingModel).isNotNull();
+
assertThat(importingModel.getNamespace()).isNotNull().isEqualTo(nameSpace);
+ assertThat(importingModel.getMessages()).isEmpty();
+ }
+
+ @Test
+ void compileImportingModelWithoutImportedModel() {
+ List<DMNModel> dmnModels = new ArrayList<>();
+ String modelName = "Importing named Model";
+ Resource resource = new ClassPathResource(
"valid_models/DMNv1_5/Importing_Named_Model.dmn",
+ this.getClass());
+ DMNModel model = dMNCompiler.compile( resource, dmnModels);
+ assertThat(model).isNotNull();
+ assertThat(model.getName()).isNotNull().isEqualTo(modelName);
+
+ Definitions dmnDefn = model.getDefinitions();
+ dmnModels.add(model);
+ model = dMNCompiler.compile(dmnDefn, resource, dmnModels);
+ assertThat(model).isNotNull();
+ assertThat(model.getName()).isNotNull().isEqualTo(modelName);
+ assertThat(model.getMessages()).isNotEmpty();
Review Comment:
removed and committed the changes
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]