This is an automated email from the ASF dual-hosted git repository.

pibizza pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-drools.git


The following commit(s) were added to refs/heads/main by this push:
     new e8737680e5 NO ISSUE: Improving stream assertions in tests (#6068)
e8737680e5 is described below

commit e8737680e57d1b06b403b8752318fe0d05e31f59
Author: Paolo Bizzarri <[email protected]>
AuthorDate: Thu Sep 5 16:20:49 2024 +0200

    NO ISSUE: Improving stream assertions in tests (#6068)
    
    * First cleanup for assertj assertions on streams
    
    * More stream assertions cleanup
    
    * Making the test behaves correctly
---
 .../java/org/kie/dmn/core/DMNCompilerTest.java     | 12 ++--
 .../dmn/core/compiler/UnnamedImportUtilsTest.java  | 41 +++++++------
 .../org/kie/dmn/core/impl/DMNModelImplTest.java    | 12 ++--
 .../core/stronglytyped/DMNRuntimeTypesTest.java    |  4 +-
 .../BigDecimalRangeIteratorTest.java               | 10 +---
 .../forexpressioniterators/ForIterationTest.java   | 17 +++---
 .../LocalDateRangeIteratorTest.java                |  9 +--
 .../ZonedDateTimeRangeIteratorTest.java            | 13 ++--
 .../kie/dmn/feel/runtime/custom/ZoneTimeTest.java  | 25 ++++----
 .../runtime/functions/BaseFEELFunctionTest.java    | 69 +++++++++++-----------
 .../org/kie/dmn/openapi/EnumGenerationTest.java    | 18 +++---
 11 files changed, 102 insertions(+), 128 deletions(-)

diff --git 
a/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/DMNCompilerTest.java 
b/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/DMNCompilerTest.java
index daf7518dbb..7e9874ef7d 100644
--- a/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/DMNCompilerTest.java
+++ b/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/DMNCompilerTest.java
@@ -339,8 +339,8 @@ public class DMNCompilerTest extends BaseVariantTest {
             LOG.debug("{}", message);
         }
         LOG.debug("{}", evaluateModelCDecision);
-        
assertThat(evaluateModelCDecision.getDecisionResults()).size().isEqualTo(3);
-        evaluateModelCDecision.getDecisionResults().forEach(dmnDecisionResult 
-> assertThat(dmnDecisionResult.getEvaluationStatus()).isEqualTo(SUCCEEDED));
+        assertThat(evaluateModelCDecision.getDecisionResults()).hasSize(3);
+        
assertThat(evaluateModelCDecision.getDecisionResults()).allMatch(dmnDecisionResult
 -> dmnDecisionResult.getEvaluationStatus().equals(SUCCEEDED));
     }
 
     @ParameterizedTest
@@ -415,13 +415,11 @@ public class DMNCompilerTest extends BaseVariantTest {
         
assertThat(dmnModel.hasErrors()).as(DMNRuntimeUtil.formatMessages(dmnModel.getMessages())).isFalse();
         
assertThat(dmnModel.getMessages()).as(DMNRuntimeUtil.formatMessages(dmnModel.getMessages())).hasSize(4);
         
assertThat(dmnModel.getMessages(DMNMessage.Severity.WARN)).as(DMNRuntimeUtil.formatMessages(dmnModel.getMessages())).hasSize(4);
-        assertThat(dmnModel.getMessages(DMNMessage.Severity.WARN)
-                           .stream()
-                           .filter(m -> 
m.getSourceId().equals("_d72d6fab-1e67-4fe7-9c12-54800d6fe294") ||
+        
assertThat(dmnModel.getMessages(DMNMessage.Severity.WARN)).as(DMNRuntimeUtil.formatMessages(dmnModel.getMessages()))
+                           .filteredOn(m -> 
m.getSourceId().equals("_d72d6fab-1e67-4fe7-9c12-54800d6fe294") ||
                                         
m.getSourceId().equals("_2390dd99-094d-4f97-aecc-9cccb697ce05") ||
                                         
m.getSourceId().equals("_0c292d34-498e-4b08-ae99-3c694197b69f") ||
-                                        
m.getSourceId().equals("_21c7d800-b806-4b2e-9a10-00828de7f2d2"))
-                           
.count()).as(DMNRuntimeUtil.formatMessages(dmnModel.getMessages())).isEqualTo(4L);
+                                        
m.getSourceId().equals("_21c7d800-b806-4b2e-9a10-00828de7f2d2")).hasSize(4);
     }
 
     @ParameterizedTest
diff --git 
a/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/compiler/UnnamedImportUtilsTest.java
 
b/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/compiler/UnnamedImportUtilsTest.java
index f0a8e94a5a..29d1ac343c 100644
--- 
a/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/compiler/UnnamedImportUtilsTest.java
+++ 
b/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/compiler/UnnamedImportUtilsTest.java
@@ -65,11 +65,11 @@ class UnnamedImportUtilsTest {
         final DMNModelImpl importingModel = 
(DMNModelImpl)runtime.getModel("http://www.trisotech.com/dmn/definitions/_f79aa7a4-f9a3-410a-ac95-bea496edabgc";,
                                                                            
"Importing named Model");
         assertThat(importingModel).isNotNull();
-        importedModel.getDecisions().forEach(node -> 
assertThat(isInUnnamedImport(node, importingModel)).isFalse());
-        importedModel.getBusinessKnowledgeModels().forEach(node -> 
assertThat(isInUnnamedImport(node, importingModel)).isFalse());
-        importedModel.getDecisionServices().forEach(node -> 
assertThat(isInUnnamedImport(node, importingModel)).isFalse());
-        importedModel.getInputs().forEach(node -> 
assertThat(isInUnnamedImport(node, importingModel)).isFalse());
-        importedModel.getItemDefinitions().forEach(node -> 
assertThat(isInUnnamedImport(node, importingModel)).isFalse());
+        assertThat(importedModel.getDecisions()).noneMatch(node -> 
isInUnnamedImport(node, importingModel));
+        assertThat(importedModel.getBusinessKnowledgeModels()).noneMatch(node 
-> isInUnnamedImport(node, importingModel));
+        assertThat(importedModel.getDecisionServices()).noneMatch(node -> 
isInUnnamedImport(node, importingModel));
+        assertThat(importedModel.getInputs()).noneMatch(node -> 
isInUnnamedImport(node, importingModel));
+        assertThat(importedModel.getItemDefinitions()).noneMatch(node -> 
isInUnnamedImport(node, importingModel));
     }
 
     @Test
@@ -80,11 +80,11 @@ class UnnamedImportUtilsTest {
         try (InputStream is = importedModelFileResource.openStream()) {
             String xml = new String(is.readAllBytes(), StandardCharsets.UTF_8);
             Definitions definitions = 
DMNMarshallerFactory.newDefaultMarshaller().unmarshal(xml);
-            definitions.getDecisionService().forEach(definition ->  
assertThat(added(definition)).isTrue());
-            definitions.getBusinessContextElement().forEach(definition ->  
assertThat(added(definition)).isTrue());
-            definitions.getDrgElement().forEach(definition ->  
assertThat(added(definition)).isTrue());
-            definitions.getImport().forEach(definition ->  
assertThat(added(definition)).isTrue());
-            definitions.getItemDefinition().forEach(definition ->  
assertThat(added(definition)).isTrue());
+            assertThat(definitions.getDecisionService()).allMatch(definition 
-> added(definition));
+            
assertThat(definitions.getBusinessContextElement()).allMatch(definition -> 
added(definition));
+            assertThat(definitions.getDrgElement()).allMatch(definition -> 
added(definition));
+            assertThat(definitions.getImport()).allMatch(definition -> 
added(definition));
+            assertThat(definitions.getItemDefinition()).allMatch(definition -> 
added(definition));
         }
     }
 
@@ -114,11 +114,11 @@ class UnnamedImportUtilsTest {
                                                                                
     "-f9a3-410a-ac95-bea496edabgc",
                                                                             
"Importing empty-named Model");
         assertThat(importingModel).isNotNull();
-        importedModel.getDecisions().forEach(node -> 
assertThat(isInUnnamedImport(node, importingModel)).isTrue());
-        importedModel.getBusinessKnowledgeModels().forEach(node -> 
assertThat(isInUnnamedImport(node, importingModel)).isTrue());
-        importedModel.getDecisionServices().forEach(node -> 
assertThat(isInUnnamedImport(node, importingModel)).isTrue());
-        importedModel.getInputs().forEach(node -> 
assertThat(isInUnnamedImport(node, importingModel)).isTrue());
-        importedModel.getItemDefinitions().forEach(node -> 
assertThat(isInUnnamedImport(node, importingModel)).isTrue());
+        assertThat(importedModel.getDecisions()).allMatch(node -> 
isInUnnamedImport(node, importingModel));
+        assertThat(importedModel.getBusinessKnowledgeModels()).allMatch(node 
-> isInUnnamedImport(node, importingModel));
+        assertThat(importedModel.getDecisionServices()).allMatch(node -> 
isInUnnamedImport(node, importingModel));
+        assertThat(importedModel.getInputs()).allMatch(node -> 
isInUnnamedImport(node, importingModel));
+        assertThat(importedModel.getItemDefinitions()).allMatch(node -> 
isInUnnamedImport(node, importingModel));
     }
 
     private void commonAddIfNotPresentFalse(String importingModelRef, String 
importedModelRef) throws IOException {
@@ -136,12 +136,11 @@ class UnnamedImportUtilsTest {
         try (InputStream is = importedModelFileResource.openStream()) {
             String importedXml = new String(is.readAllBytes(), 
StandardCharsets.UTF_8);
             Definitions importedDefinitions = 
DMNMarshallerFactory.newDefaultMarshaller().unmarshal(importedXml);
-            importedDefinitions.getDecisionService().forEach(definition -> 
assertThat(added(importingDefinitions.getDecisionService(), 
definition)).isFalse());
-            importedDefinitions.getBusinessContextElement().forEach(definition 
-> assertThat(added(importingDefinitions.getBusinessContextElement(), 
definition)).isFalse());
-            importedDefinitions.getDrgElement().forEach(definition -> 
assertThat(added(importingDefinitions.getDrgElement(), definition)).isFalse());
-            importedDefinitions.getImport().forEach(definition -> 
assertThat(added(importingDefinitions.getImport(),
-                                                                               
     definition)).isFalse());
-            importedDefinitions.getItemDefinition().forEach(definition -> 
assertThat(added(importingDefinitions.getItemDefinition(), 
definition)).isFalse());
+            
assertThat(importedDefinitions.getDecisionService()).noneMatch(definition -> 
added(importingDefinitions.getDecisionService(), definition));
+            
assertThat(importedDefinitions.getBusinessContextElement()).noneMatch(definition
 -> added(importingDefinitions.getBusinessContextElement(), definition));
+            
assertThat(importedDefinitions.getDrgElement()).noneMatch(definition -> 
added(importingDefinitions.getDrgElement(), definition));
+            assertThat(importedDefinitions.getImport()).noneMatch(definition 
-> added(importingDefinitions.getImport(), definition));
+            
assertThat(importedDefinitions.getItemDefinition()).noneMatch(definition -> 
added(importingDefinitions.getItemDefinition(), definition));
         }
     }
 
diff --git 
a/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/impl/DMNModelImplTest.java
 
b/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/impl/DMNModelImplTest.java
index 7663612df4..8ec9697fa0 100644
--- 
a/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/impl/DMNModelImplTest.java
+++ 
b/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/impl/DMNModelImplTest.java
@@ -53,7 +53,7 @@ class DMNModelImplTest {
             decisionNodeList.add(toAdd);
         });
 
-        decisionNodeList.forEach(decisionNode -> {
+        assertThat(decisionNodeList).allSatisfy(decisionNode -> {
             assertThat(model.getDecisionByName(decisionNode.getName()))
                     .isNotNull()
                     .isEqualTo(decisionNode);
@@ -72,7 +72,7 @@ class DMNModelImplTest {
             decisionNodeList.add(toAdd);
         });
 
-        decisionNodeList.forEach(decisionNode ->
+        assertThat(decisionNodeList).allSatisfy(decisionNode ->
                                          
assertThat(model.getDecisionByName(decisionNode.getName()))
                                                  .isNotNull()
                                                  .isEqualTo(decisionNode));
@@ -86,7 +86,7 @@ class DMNModelImplTest {
             model.addDecision(toAdd);
             decisionNodeList.add(toAdd);
         });
-        decisionNodeList.forEach(decisionNode ->
+        assertThat(decisionNodeList).allSatisfy(decisionNode ->
                                          
assertThat(model.getDecisionById(decisionNode.getId()))
                                                  .isNotNull()
                                                  .isEqualTo(decisionNode));
@@ -104,7 +104,7 @@ class DMNModelImplTest {
             decisionNodeList.add(toAdd);
         });
 
-        decisionNodeList.forEach(decisionNode -> {
+        assertThat(decisionNodeList).allSatisfy(decisionNode -> {
             assertThat(model.getDecisionByName(String.format("%s.%s", 
importedNameSpace, decisionNode.getName())))
                     .isNotNull()
                     .isEqualTo(decisionNode);
@@ -126,7 +126,7 @@ class DMNModelImplTest {
             decisionNodeList.add(toAdd);
         });
 
-        decisionNodeList.forEach(decisionNode ->
+        assertThat(decisionNodeList).allSatisfy(decisionNode ->
                                          
assertThat(model.getDecisionByName(String.format("%s.%s", importedNameSpace, 
decisionNode.getName())))
                                                  .isNotNull()
                                                  .isEqualTo(decisionNode));
@@ -143,7 +143,7 @@ class DMNModelImplTest {
             model.addDecision(toAdd);
             decisionNodeList.add(toAdd);
         });
-        decisionNodeList.forEach(decisionNode ->
+        assertThat(decisionNodeList).allSatisfy(decisionNode ->
                                          
assertThat(model.getDecisionById(String.format("%s#%s", importedNameSpace, 
decisionNode.getId())))
                                                  .isNotNull()
                                                  .isEqualTo(decisionNode));
diff --git 
a/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/stronglytyped/DMNRuntimeTypesTest.java
 
b/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/stronglytyped/DMNRuntimeTypesTest.java
index 2e14a803bc..f090219c18 100644
--- 
a/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/stronglytyped/DMNRuntimeTypesTest.java
+++ 
b/kie-dmn/kie-dmn-core/src/test/java/org/kie/dmn/core/stronglytyped/DMNRuntimeTypesTest.java
@@ -1035,11 +1035,11 @@ public class DMNRuntimeTypesTest extends 
BaseVariantTest {
             Map<String, Object> allProperties = outputSet.allFEELProperties();
             List<List<List<FEELPropertyAccessible>>> colCOut = 
(List<List<List<FEELPropertyAccessible>>>) allProperties.get("Decision-1");
             List<FEELPropertyAccessible>  personOutList = 
colCOut.stream().flatMap(colB -> colB.stream()).flatMap(colA -> 
colA.stream()).collect(Collectors.toList());
-            personOutList.stream().forEach(person -> 
assertPersonInDeepCol(person));
+            assertThat(personOutList).allSatisfy(person -> 
assertPersonInDeepCol(person));
         } else {
             List<List<List<Map<String, Object>>>> colCOut = 
(List<List<List<Map<String, Object>>>>)dmnResult.getContext().get("Decision-1");
             List<Map<String, Object>>  personOutList = 
colCOut.stream().flatMap(colB -> colB.stream()).flatMap(colA -> 
colA.stream()).collect(Collectors.toList());
-            personOutList.stream().forEach(person -> 
assertPersonMapInDeepCol(person));
+            assertThat(personOutList).allSatisfy(person -> 
assertPersonMapInDeepCol(person));
         }
     }
 
diff --git 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/BigDecimalRangeIteratorTest.java
 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/BigDecimalRangeIteratorTest.java
index aec84884a5..261e10bd5f 100644
--- 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/BigDecimalRangeIteratorTest.java
+++ 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/BigDecimalRangeIteratorTest.java
@@ -19,9 +19,6 @@
 package org.kie.dmn.feel.lang.ast.forexpressioniterators;
 
 import java.math.BigDecimal;
-import java.util.Arrays;
-import java.util.List;
-import java.util.stream.IntStream;
 
 import org.junit.jupiter.api.Test;
 
@@ -61,18 +58,17 @@ class BigDecimalRangeIteratorTest {
     void nextAscendantTest() {
         BigDecimal start = BigDecimal.valueOf(1);
         BigDecimal end = BigDecimal.valueOf(3);
-        List<BigDecimal> expected = Arrays.asList(BigDecimal.valueOf(1), 
BigDecimal.valueOf(2), BigDecimal.valueOf(3));
         BigDecimalRangeIterator iterator = new BigDecimalRangeIterator(start, 
end);
-        IntStream.range(0, 3).forEach(i -> 
assertThat(expected.get(i)).isEqualTo(iterator.next()));
+        
+        
assertThat(iterator).toIterable().containsExactly(BigDecimal.valueOf(1), 
BigDecimal.valueOf(2), BigDecimal.valueOf(3));
     }
 
     @Test
     void nextDescendantTest() {
         BigDecimal start = BigDecimal.valueOf(3);
         BigDecimal end = BigDecimal.valueOf(1);
-        List<BigDecimal> expected = Arrays.asList(BigDecimal.valueOf(3), 
BigDecimal.valueOf(2), BigDecimal.valueOf(1));
         BigDecimalRangeIterator iterator = new BigDecimalRangeIterator(start, 
end);
-        IntStream.range(0, 3).forEach(i -> 
assertThat(expected.get(i)).isEqualTo(iterator.next()));
+        
assertThat(iterator).toIterable().containsExactly(BigDecimal.valueOf(3), 
BigDecimal.valueOf(2), BigDecimal.valueOf(1));
     }
 
 
diff --git 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/ForIterationTest.java
 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/ForIterationTest.java
index b9980f6f11..89ecdf5630 100644
--- 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/ForIterationTest.java
+++ 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/ForIterationTest.java
@@ -20,9 +20,6 @@ package org.kie.dmn.feel.lang.ast.forexpressioniterators;
 
 import java.math.BigDecimal;
 import java.time.LocalDate;
-import java.util.Arrays;
-import java.util.List;
-import java.util.stream.IntStream;
 
 import org.junit.jupiter.api.Test;
 
@@ -62,19 +59,21 @@ class ForIterationTest {
     void getNextValueBigDecimalTest() {
         BigDecimal start = BigDecimal.valueOf(1);
         BigDecimal end = BigDecimal.valueOf(3);
-        List<BigDecimal> expected = Arrays.asList(BigDecimal.valueOf(1), 
BigDecimal.valueOf(2), BigDecimal.valueOf(3));
         ForIteration iteration = new ForIteration("iteration", start, end);
-        iteration.hasNextValue();
-        IntStream.range(0, 3).forEach(i -> 
assertThat(expected.get(i)).isEqualTo(iteration.getNextValue()));
+        assertThat(iteration.hasNextValue()).isTrue();
+        assertThat(iteration.getNextValue()).isEqualTo(BigDecimal.valueOf(1));
+        assertThat(iteration.getNextValue()).isEqualTo(BigDecimal.valueOf(2));
+        assertThat(iteration.getNextValue()).isEqualTo(BigDecimal.valueOf(3));
     }
 
     @Test
     void getNextValueLocalDateTest() {
         LocalDate start = LocalDate.of(2021, 1, 3);
         LocalDate end = LocalDate.of(2021, 1, 1);
-        List<LocalDate> expected = Arrays.asList(LocalDate.of(2021, 1, 3), 
LocalDate.of(2021, 1, 2), LocalDate.of(2021, 1, 1));
         ForIteration iteration = new ForIteration("iteration", start, end);
-        iteration.hasNextValue();
-        IntStream.range(0, 3).forEach(i -> 
assertThat(expected.get(i)).isEqualTo(iteration.getNextValue()));
+        assertThat(iteration.hasNextValue()).isTrue();
+        assertThat(iteration.getNextValue()).isEqualTo(LocalDate.of(2021, 1, 
3));
+        assertThat(iteration.getNextValue()).isEqualTo(LocalDate.of(2021, 1, 
2));
+        assertThat(iteration.getNextValue()).isEqualTo(LocalDate.of(2021, 1, 
1));
     }
 }
\ No newline at end of file
diff --git 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/LocalDateRangeIteratorTest.java
 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/LocalDateRangeIteratorTest.java
index 4add411f7f..6f932c15d2 100644
--- 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/LocalDateRangeIteratorTest.java
+++ 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/LocalDateRangeIteratorTest.java
@@ -19,9 +19,6 @@
 package org.kie.dmn.feel.lang.ast.forexpressioniterators;
 
 import java.time.LocalDate;
-import java.util.Arrays;
-import java.util.List;
-import java.util.stream.IntStream;
 
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
@@ -65,16 +62,14 @@ class LocalDateRangeIteratorTest {
 
     @Test
     void nextAscendantTest() {
-        List<LocalDate> expected = Arrays.asList(LocalDate.of(2021, 1, 1), 
LocalDate.of(2021, 1, 2), LocalDate.of(2021, 1, 3));
         LocalDateRangeIterator iterator = new LocalDateRangeIterator(before, 
after);
-        IntStream.range(0, 3).forEach(i -> 
assertThat(expected.get(i)).isEqualTo(iterator.next()));
+        assertThat(iterator).toIterable().containsExactly(LocalDate.of(2021, 
1, 1), LocalDate.of(2021, 1, 2), LocalDate.of(2021, 1, 3));
     }
 
     @Test
     void nextDescendantTest() {
-        List<LocalDate> expected = Arrays.asList(LocalDate.of(2021, 1, 3), 
LocalDate.of(2021, 1, 2), LocalDate.of(2021, 1, 1));
         LocalDateRangeIterator iterator = new LocalDateRangeIterator(after, 
before);
-        IntStream.range(0, 3).forEach(i -> 
assertThat(expected.get(i)).isEqualTo(iterator.next()));
+        assertThat(iterator).toIterable().containsExactly(LocalDate.of(2021, 
1, 3), LocalDate.of(2021, 1, 2), LocalDate.of(2021, 1, 1));
     }
 
 
diff --git 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/ZonedDateTimeRangeIteratorTest.java
 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/ZonedDateTimeRangeIteratorTest.java
index d8a1e8769e..c11f203619 100644
--- 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/ZonedDateTimeRangeIteratorTest.java
+++ 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/lang/ast/forexpressioniterators/ZonedDateTimeRangeIteratorTest.java
@@ -21,9 +21,6 @@ package org.kie.dmn.feel.lang.ast.forexpressioniterators;
 import java.time.LocalDateTime;
 import java.time.ZoneId;
 import java.time.ZonedDateTime;
-import java.util.Arrays;
-import java.util.List;
-import java.util.stream.IntStream;
 
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
@@ -68,20 +65,18 @@ class ZonedDateTimeRangeIteratorTest {
 
     @Test
     void nextAscendantTest() {
-        List<ZonedDateTime> expected = Arrays.asList(getZonedDateTime(2021, 1, 
1, 10, 15),
+        ZonedDateTimeRangeIterator iterator = new 
ZonedDateTimeRangeIterator(before, after);
+        
assertThat(iterator).toIterable().containsExactly(getZonedDateTime(2021, 1, 1, 
10, 15),
                 getZonedDateTime(2021, 1, 2, 10, 15),
                 getZonedDateTime(2021, 1, 3, 10, 15));
-        ZonedDateTimeRangeIterator iterator = new 
ZonedDateTimeRangeIterator(before, after);
-        IntStream.range(0, 3).forEach(i -> 
assertThat(expected.get(i)).isEqualTo(iterator.next()));
     }
 
     @Test
     void nextDescendantTest() {
-        List<ZonedDateTime> expected = Arrays.asList(getZonedDateTime(2021, 1, 
3, 10, 15),
+        ZonedDateTimeRangeIterator iterator = new 
ZonedDateTimeRangeIterator(after, before);
+        
assertThat(iterator).toIterable().containsExactly(getZonedDateTime(2021, 1, 3, 
10, 15),
                 getZonedDateTime(2021, 1, 2, 10, 15),
                 getZonedDateTime(2021, 1, 1, 10, 15));
-        ZonedDateTimeRangeIterator iterator = new 
ZonedDateTimeRangeIterator(after, before);
-        IntStream.range(0, 3).forEach(i -> 
assertThat(expected.get(i)).isEqualTo(iterator.next()));
     }
 
 
diff --git 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/runtime/custom/ZoneTimeTest.java
 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/runtime/custom/ZoneTimeTest.java
index f602e09105..26c49b8317 100644
--- 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/runtime/custom/ZoneTimeTest.java
+++ 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/runtime/custom/ZoneTimeTest.java
@@ -30,7 +30,6 @@ import java.time.temporal.ChronoUnit;
 import java.time.temporal.TemporalAdjuster;
 import java.time.temporal.TemporalAmount;
 import java.time.temporal.TemporalQueries;
-import java.util.Arrays;
 
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
@@ -133,22 +132,18 @@ class ZoneTimeTest {
 
     @Test
     void isSupportedTemporalUnit() {
-        for (ChronoUnit unit : ChronoUnit.values()) {
-            
assertThat(zoneTime.isSupported(unit)).isEqualTo(offsetTime.isSupported(unit));
-        }
+       assertThat(ChronoUnit.values()).allMatch(unit -> 
zoneTime.isSupported(unit) == offsetTime.isSupported(unit));
     }
 
     @Test
     void isSupportedTemporalField() {
-        for (ChronoField field : ChronoField.values()) {
-            
assertThat(zoneTime.isSupported(field)).isEqualTo(offsetTime.isSupported(field));
-        }
+       assertThat(ChronoField.values()).allMatch(field -> 
zoneTime.isSupported(field) == offsetTime.isSupported(field));
     }
 
     @Test
     void getLong() {
-        Arrays.stream(ChronoField.values()).filter(offsetTime::isSupported)
-                .forEach(field -> 
assertThat(offsetTime.getLong(field)).isEqualTo(zoneTime.getLong(field)));
+        assertThat(ChronoField.values()).filteredOn(offsetTime::isSupported)
+                .allMatch(field -> offsetTime.getLong(field) == 
(zoneTime.getLong(field)));
     }
 
     @Test
@@ -167,16 +162,16 @@ class ZoneTimeTest {
 
     @Test
     void range() {
-        Arrays.stream(ChronoField.values()).filter(offsetTime::isSupported)
-                .forEach(field -> 
assertThat(offsetTime.range(field)).isEqualTo(zoneTime.range(field)));
+        assertThat(ChronoField.values()).filteredOn(offsetTime::isSupported)
+                .allMatch(field -> 
offsetTime.range(field).equals(zoneTime.range(field)));
     }
 
     @Test
     void get() {
-        Arrays.stream(ChronoField.values())
-                .filter(offsetTime::isSupported)
-                .filter(field -> field != ChronoField.NANO_OF_DAY && field != 
ChronoField.MICRO_OF_DAY) // Unsupported by offsettime.get()
-                .forEach(field -> 
assertThat(offsetTime.get(field)).isEqualTo(zoneTime.get(field)));
+       assertThat(ChronoField.values())
+                .filteredOn(offsetTime::isSupported)
+                .filteredOn(field -> field != ChronoField.NANO_OF_DAY && field 
!= ChronoField.MICRO_OF_DAY) // Unsupported by offsettime.get()
+                .allMatch(field -> offsetTime.get(field) == 
zoneTime.get(field));
     }
 
     @Test
diff --git 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/runtime/functions/BaseFEELFunctionTest.java
 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/runtime/functions/BaseFEELFunctionTest.java
index 6b221f7a30..f5deff2214 100644
--- 
a/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/runtime/functions/BaseFEELFunctionTest.java
+++ 
b/kie-dmn/kie-dmn-feel/src/test/java/org/kie/dmn/feel/runtime/functions/BaseFEELFunctionTest.java
@@ -101,8 +101,8 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         Parameter[] parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(1);
-        assertThat(parametersRetrieved[0].getType()).isEqualTo(List.class);
+        assertThat(parametersRetrieved).hasSize(1);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(List.class);
 
         // invoke(@ParameterName( "b" ) Object[] list)
         parameters = new Object[]{true, false};
@@ -114,8 +114,8 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(1);
-        
assertThat(parametersRetrieved[0].getType()).isEqualTo(Object.class.arrayType());
+        assertThat(parametersRetrieved).hasSize(1);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(Object.class.arrayType());
     }
 
     @Test
@@ -132,8 +132,8 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         Parameter[] parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(1);
-        assertThat(parametersRetrieved[0].getType()).isEqualTo(String.class);
+        assertThat(parametersRetrieved).hasSize(1);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(String.class);
 
         // invoke(@ParameterName( "date" ) TemporalAccessor date, 
@ParameterName( "time" ) TemporalAccessor time)
         parameters = new Object[]{LocalDate.of(2017, 6, 12), LocalTime.of(10, 
6, 20)};
@@ -145,8 +145,8 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(2);
-        Arrays.stream(parametersRetrieved).forEach(parameter -> 
assertThat(TemporalAccessor.class).isEqualTo(parameter.getType()));
+        assertThat(parametersRetrieved).hasSize(2);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(TemporalAccessor.class,
 TemporalAccessor.class);
 
 
 //        invoke(@ParameterName( "year" ) Number year, @ParameterName( "month" 
) Number month, @ParameterName( "day"
@@ -162,8 +162,9 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(6);
-        Arrays.stream(parametersRetrieved).forEach(parameter -> 
assertThat(Number.class).isEqualTo(parameter.getType()));
+        assertThat(parametersRetrieved).hasSize(6);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(Number.class,
 Number.class, Number.class, 
+                       Number.class, Number.class, Number.class);
 
 //        invoke(@ParameterName( "year" ) Number year, @ParameterName( "month" 
) Number month, @ParameterName( "day"
 //        ) Number day,
@@ -179,8 +180,9 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(7);
-        Arrays.stream(parametersRetrieved).forEach(parameter -> 
assertThat(Number.class).isEqualTo(parameter.getType()));
+        assertThat(parametersRetrieved).hasSize(7);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(Number.class,
 Number.class, Number.class, 
+                       Number.class, Number.class, Number.class, Number.class);
 
 //        invoke(@ParameterName( "year" ) Number year, @ParameterName( "month" 
) Number month, @ParameterName( "day"
 //        ) Number day,
@@ -196,11 +198,9 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(7);
-        for (int i = 0; i < 6; i++) {
-            
assertThat(parametersRetrieved[i].getType()).isEqualTo(Number.class);
-        }
-        assertThat(parametersRetrieved[6].getType()).isEqualTo(String.class);
+        assertThat(parametersRetrieved).hasSize(7);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(Number.class,
 Number.class, Number.class, 
+                       Number.class, Number.class, Number.class, String.class);
     }
 
     @Test
@@ -217,8 +217,8 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         Parameter[] parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(1);
-        assertThat(parametersRetrieved[0].getType()).isEqualTo(String.class);
+        assertThat(parametersRetrieved).hasSize(1);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(String.class);
 
 //      invoke(
 //            @ParameterName("hour") Number hour, @ParameterName("minute") 
Number minute,
@@ -232,8 +232,8 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(3);
-        Arrays.stream(parametersRetrieved).forEach(parameter -> 
assertThat(Number.class).isEqualTo(parameter.getType()));
+        assertThat(parametersRetrieved).hasSize(3);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(Number.class,
 Number.class, Number.class);
 
 //     invoke(
 //            @ParameterName("hour") Number hour, @ParameterName("minute") 
Number minute,
@@ -247,11 +247,10 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(4);
-        for (int i = 0; i < 3; i++) {
-            
assertThat(parametersRetrieved[i].getType()).isEqualTo(Number.class);
-        }
-        assertThat(parametersRetrieved[3].getType()).isEqualTo(Duration.class);
+        assertThat(parametersRetrieved).hasSize(4);
+        
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(Number.class,
 Number.class, Number.class, Duration.class);
+
 
 //      invoke(@ParameterName("from") TemporalAccessor date
         parameters = new Object[]{LocalTime.of(10, 6, 20)};
@@ -263,8 +262,8 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(1);
-        
assertThat(parametersRetrieved[0].getType()).isEqualTo(TemporalAccessor.class);
+        assertThat(parametersRetrieved).hasSize(1);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(TemporalAccessor.class);
     }
 
     @Test
@@ -283,10 +282,8 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         Parameter[] parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(3);
-        
assertThat(parametersRetrieved[0].getType()).isEqualTo(EvaluationContext.class);
-        assertThat(parametersRetrieved[1].getType()).isEqualTo(List.class);
-        
assertThat(parametersRetrieved[2].getType()).isEqualTo(FEELFunction.class);
+        assertThat(parametersRetrieved).hasSize(3);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(EvaluationContext.class,
 List.class, FEELFunction.class);
 
         // invoke(@ParameterName("list") List list)
         parameters = new Object[]{List.of(1, 3, 5)};
@@ -298,8 +295,8 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(1);
-        assertThat(parametersRetrieved[0].getType()).isEqualTo(List.class);
+        assertThat(parametersRetrieved).hasSize(1);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(List.class);
     }
 
     @Test
@@ -317,8 +314,8 @@ class BaseFEELFunctionTest {
         assertThat(retrieved.getName()).isEqualTo("invoke");
         Parameter[] parametersRetrieved = retrieved.getParameters();
         assertThat(parametersRetrieved).isNotNull();
-        assertThat(parametersRetrieved.length).isEqualTo(1);
-        assertThat(parametersRetrieved[0].getType()).isEqualTo(List.class);
+        assertThat(parametersRetrieved).hasSize(1);
+        
assertThat(parametersRetrieved).extracting("type").containsExactly(List.class);
     }
 
 }
\ No newline at end of file
diff --git 
a/kie-dmn/kie-dmn-openapi/src/test/java/org/kie/dmn/openapi/EnumGenerationTest.java
 
b/kie-dmn/kie-dmn-openapi/src/test/java/org/kie/dmn/openapi/EnumGenerationTest.java
index f0604cd500..9c2c11accb 100644
--- 
a/kie-dmn/kie-dmn-openapi/src/test/java/org/kie/dmn/openapi/EnumGenerationTest.java
+++ 
b/kie-dmn/kie-dmn-openapi/src/test/java/org/kie/dmn/openapi/EnumGenerationTest.java
@@ -60,7 +60,8 @@ class EnumGenerationTest extends BaseDMNOASTest {
         ArrayNode arrayNode = (ArrayNode) node.get("enum");
         assertThat(arrayNode).isNotNull();
         List<BigDecimal> expected = Arrays.asList(BigDecimal.ZERO, 
BigDecimal.ONE, BigDecimal.valueOf(2));
-        arrayNode.iterator().forEachRemaining(e -> {
+        
+        assertThat(arrayNode).allSatisfy(e -> {
             assertThat(e).isInstanceOf(DecimalNode.class);
             assertThat(expected).contains(e.decimalValue());
         });
@@ -75,7 +76,7 @@ class EnumGenerationTest extends BaseDMNOASTest {
         ArrayNode arrayNode = (ArrayNode) node.get("enum");
         assertThat(arrayNode).isNotNull();
         List<String> expected = Arrays.asList("a", "b", "c");
-        arrayNode.iterator().forEachRemaining(e -> {
+        assertThat(arrayNode).allSatisfy(e -> {
             assertThat(e).isInstanceOf(TextNode.class);
             assertThat(expected).contains(e.textValue());
         });
@@ -90,7 +91,7 @@ class EnumGenerationTest extends BaseDMNOASTest {
         ArrayNode arrayNode = (ArrayNode) node.get("enum");
         assertThat(arrayNode).isNotNull();
         List<String> expected = Arrays.asList("a", "b", "c", null);
-        arrayNode.iterator().forEachRemaining(e -> {
+        assertThat(arrayNode).allSatisfy(e -> {
             assertThat(expected).contains(e.textValue());
         });
         
assertThat(node.get("nullable")).isNotNull().isInstanceOf(BooleanNode.class);
@@ -104,7 +105,7 @@ class EnumGenerationTest extends BaseDMNOASTest {
         ArrayNode arrayNode = (ArrayNode) node.get("enum");
         assertThat(arrayNode).isNotNull();
         List<BigDecimal> expected = Arrays.asList(BigDecimal.ZERO, 
BigDecimal.ONE, BigDecimal.valueOf(2));
-        arrayNode.iterator().forEachRemaining(e -> {
+        assertThat(arrayNode).allSatisfy(e -> {
             assertThat(e).isInstanceOf(DecimalNode.class);
             assertThat(expected).contains(e.decimalValue());
         });
@@ -119,7 +120,7 @@ class EnumGenerationTest extends BaseDMNOASTest {
         ArrayNode arrayNode = (ArrayNode) node.get("enum");
         assertThat(arrayNode).isNotNull();
         List<String> expected = Arrays.asList("a", "b", "c");
-        arrayNode.iterator().forEachRemaining(e -> {
+        assertThat(arrayNode).allSatisfy(e -> {
             assertThat(e).isInstanceOf(TextNode.class);
             assertThat(expected).contains(e.textValue());
         });
@@ -133,10 +134,9 @@ class EnumGenerationTest extends BaseDMNOASTest {
         assertThat(node).isNotNull();
         ArrayNode arrayNode = (ArrayNode) node.get("enum");
         assertThat(arrayNode).isNotNull();
-        List<String> expected = Arrays.asList("a", "b", "c", null);
-        arrayNode.iterator().forEachRemaining(e -> {
-            assertThat(expected).contains(e.textValue());
-        });
+        
+        assertThat(arrayNode).extracting(node1 -> 
node1.textValue()).containsExactlyInAnyOrder("a", "b", "c", null);
+
         
assertThat(node.get("nullable")).isNotNull().isInstanceOf(BooleanNode.class);
         assertThat(node.get("nullable").asBoolean()).isTrue();
     }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


Reply via email to