gitgabrio commented on code in PR #2206:
URL:
https://github.com/apache/incubator-kie-kogito-apps/pull/2206#discussion_r2015816958
##########
jitexecutor/jitexecutor-dmn/src/test/java/org/kie/kogito/jitexecutor/dmn/DMNEvaluatorTest.java:
##########
@@ -88,4 +97,88 @@ void testValidateForErrors() {
assertNotNull(evaluator);
}
+ @Test
+ void testRetrieveInvalidElementPaths() throws IOException {
+ Resource resource =
ResourceFactory.newClassPathResource("invalid_models/DMNv1_5/DMN-MultipleInvalidElements.dmn");
+ DMNRuntime dmnRuntime =
DMNRuntimeBuilder.fromDefaults().buildConfiguration()
+
.fromResources(Collections.singletonList(resource)).getOrElseThrow(RuntimeException::new);
+ assertThat(dmnRuntime).isNotNull();
+ String nameSpace =
"https://kie.org/dmn/_79591DB5-1EE1-4CBD-AA5D-2E3EDF31150E";
+
+ final DMNModel dmnModel = dmnRuntime.getModel(nameSpace,
"DMN_8F7C4323-412A-4E0B-9AEF-0F24C8F55282");
+ assertThat(dmnModel).isNotNull();
+ DMNContext dmnContext = DMNFactory.newContext();
+ dmnContext.set("id", "_7273EA2E-2CC3-4012-8F87-39E310C8DF3C");
+ dmnContext.set("Conditional Input", 107);
+ dmnContext.set("New Input Data", 8888);
+ dmnContext.set("Score", 8);
+ DMNResult dmnResult = dmnRuntime.evaluateAll(dmnModel, dmnContext);
+ List<List<String>> invalidElementPaths =
List.of(List.of("_3DC41DB9-BE1D-4289-A639-24AB57ED082D",
"_2B147ECC-2457-4623-B841-3360D75F9F76",
"_6F318F57-DA06-4F71-80AD-288E0BBB3A52",
"_43236F2B-9857-454F-8EA0-39B37C7519CF"),
+ List.of("_09186183-0646-4CD0-AD67-A159E9F87F5E",
"_D386D137-582B-49F9-B6F9-F341C3AC4B3E",
"_2E43C09D-011A-436C-B40B-9154405EAF3A"),
List.of("_E9468D45-51EB-48DA-8B30-7D65696FDFB8"));
+
+ List<List<String>> invalidPaths =
DMNEvaluator.retrieveInvalidElementPaths(dmnResult.getMessages(), dmnModel);
+ System.out.println(invalidPaths);
Review Comment:
HI @AthiraHari77
Could you please remove this System.out.println ? Thanks
##########
jitexecutor/jitexecutor-dmn/src/test/java/org/kie/kogito/jitexecutor/dmn/DMNEvaluatorTest.java:
##########
@@ -88,4 +97,88 @@ void testValidateForErrors() {
assertNotNull(evaluator);
}
+ @Test
+ void testRetrieveInvalidElementPaths() throws IOException {
+ Resource resource =
ResourceFactory.newClassPathResource("invalid_models/DMNv1_5/DMN-MultipleInvalidElements.dmn");
+ DMNRuntime dmnRuntime =
DMNRuntimeBuilder.fromDefaults().buildConfiguration()
+
.fromResources(Collections.singletonList(resource)).getOrElseThrow(RuntimeException::new);
+ assertThat(dmnRuntime).isNotNull();
+ String nameSpace =
"https://kie.org/dmn/_79591DB5-1EE1-4CBD-AA5D-2E3EDF31150E";
+
+ final DMNModel dmnModel = dmnRuntime.getModel(nameSpace,
"DMN_8F7C4323-412A-4E0B-9AEF-0F24C8F55282");
+ assertThat(dmnModel).isNotNull();
+ DMNContext dmnContext = DMNFactory.newContext();
+ dmnContext.set("id", "_7273EA2E-2CC3-4012-8F87-39E310C8DF3C");
+ dmnContext.set("Conditional Input", 107);
+ dmnContext.set("New Input Data", 8888);
+ dmnContext.set("Score", 8);
+ DMNResult dmnResult = dmnRuntime.evaluateAll(dmnModel, dmnContext);
+ List<List<String>> invalidElementPaths =
List.of(List.of("_3DC41DB9-BE1D-4289-A639-24AB57ED082D",
"_2B147ECC-2457-4623-B841-3360D75F9F76",
"_6F318F57-DA06-4F71-80AD-288E0BBB3A52",
"_43236F2B-9857-454F-8EA0-39B37C7519CF"),
+ List.of("_09186183-0646-4CD0-AD67-A159E9F87F5E",
"_D386D137-582B-49F9-B6F9-F341C3AC4B3E",
"_2E43C09D-011A-436C-B40B-9154405EAF3A"),
List.of("_E9468D45-51EB-48DA-8B30-7D65696FDFB8"));
+
+ List<List<String>> invalidPaths =
DMNEvaluator.retrieveInvalidElementPaths(dmnResult.getMessages(), dmnModel);
+ System.out.println(invalidPaths);
+ assertNotNull(invalidPaths);
+ assertThat(invalidElementPaths.size()).isEqualTo(invalidPaths.size());
+ assertThat(invalidElementPaths).isEqualTo(invalidPaths);
+ }
+
+ @Test
+ void testGetPathToRoot() {
+ Resource resource =
ResourceFactory.newClassPathResource("invalid_models/DMNv1_5/InvalidElementPath.dmn");
+ DMNRuntime dmnRuntime =
DMNRuntimeBuilder.fromDefaults().buildConfiguration()
+
.fromResources(Collections.singletonList(resource)).getOrElseThrow(RuntimeException::new);
+ assertThat(dmnRuntime).isNotNull();
+ String nameSpace =
"https://kie.org/dmn/_608570C5-8344-42B6-9538-6E0EA9892C38";
+
+ final DMNModel dmnModel = dmnRuntime.getModel(nameSpace,
"DMN_039CBA90-29EC-4A15-B376-FC0FBC5F6807");
+ assertThat(dmnModel).isNotNull();
+ String id = "_8577FE15-1512-4BBE-885F-C30FD73ADC6B";
+ List<String> invalidPath =
List.of("_172F9901-0884-47C1-A5B4-3C09CC83D5B6",
"_8577FE15-1512-4BBE-885F-C30FD73ADC6B");
+
+ List<String> path = DMNEvaluator.getPathToRoot(dmnModel, id);
Review Comment:
As previous, please rename
`List<String> path` with `List<String> retrieved`: it would make the test
much easier to read
##########
jitexecutor/jitexecutor-dmn/src/test/java/org/kie/kogito/jitexecutor/dmn/DMNEvaluatorTest.java:
##########
@@ -88,4 +97,88 @@ void testValidateForErrors() {
assertNotNull(evaluator);
}
+ @Test
+ void testRetrieveInvalidElementPaths() throws IOException {
+ Resource resource =
ResourceFactory.newClassPathResource("invalid_models/DMNv1_5/DMN-MultipleInvalidElements.dmn");
+ DMNRuntime dmnRuntime =
DMNRuntimeBuilder.fromDefaults().buildConfiguration()
+
.fromResources(Collections.singletonList(resource)).getOrElseThrow(RuntimeException::new);
+ assertThat(dmnRuntime).isNotNull();
+ String nameSpace =
"https://kie.org/dmn/_79591DB5-1EE1-4CBD-AA5D-2E3EDF31150E";
+
+ final DMNModel dmnModel = dmnRuntime.getModel(nameSpace,
"DMN_8F7C4323-412A-4E0B-9AEF-0F24C8F55282");
+ assertThat(dmnModel).isNotNull();
+ DMNContext dmnContext = DMNFactory.newContext();
+ dmnContext.set("id", "_7273EA2E-2CC3-4012-8F87-39E310C8DF3C");
+ dmnContext.set("Conditional Input", 107);
+ dmnContext.set("New Input Data", 8888);
+ dmnContext.set("Score", 8);
+ DMNResult dmnResult = dmnRuntime.evaluateAll(dmnModel, dmnContext);
+ List<List<String>> invalidElementPaths =
List.of(List.of("_3DC41DB9-BE1D-4289-A639-24AB57ED082D",
"_2B147ECC-2457-4623-B841-3360D75F9F76",
"_6F318F57-DA06-4F71-80AD-288E0BBB3A52",
"_43236F2B-9857-454F-8EA0-39B37C7519CF"),
+ List.of("_09186183-0646-4CD0-AD67-A159E9F87F5E",
"_D386D137-582B-49F9-B6F9-F341C3AC4B3E",
"_2E43C09D-011A-436C-B40B-9154405EAF3A"),
List.of("_E9468D45-51EB-48DA-8B30-7D65696FDFB8"));
+
+ List<List<String>> invalidPaths =
DMNEvaluator.retrieveInvalidElementPaths(dmnResult.getMessages(), dmnModel);
Review Comment:
Hi @AthiraHari77
Please rename `List<List<String>> invalidPaths` with `List<List<String>>
retrieved`:
the following two lines:
```java
assertThat(invalidElementPaths.size()).isEqualTo(invalidPaths.size());
assertThat(invalidElementPaths).isEqualTo(invalidPaths);
```
are pretty meaningless, otherwise
--
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]