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

tkobayas 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 c599c11998 [incubator-kie-drools-5847] Flaky 
KieContainerTest.testIncrementalCompilationSynchronization timeout (#6002)
c599c11998 is described below

commit c599c119983b280fa2356a24adf032832c06f9fe
Author: Toshiya Kobayashi <[email protected]>
AuthorDate: Mon Jul 1 17:24:28 2024 +0900

    [incubator-kie-drools-5847] Flaky 
KieContainerTest.testIncrementalCompilationSynchronization timeout (#6002)
---
 .../drools/mvel/integrationtests/KieContainerTest.java  | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git 
a/drools-test-coverage/test-compiler-integration/src/test/java/org/drools/mvel/integrationtests/KieContainerTest.java
 
b/drools-test-coverage/test-compiler-integration/src/test/java/org/drools/mvel/integrationtests/KieContainerTest.java
index 0bebcd07b8..7c85701728 100644
--- 
a/drools-test-coverage/test-compiler-integration/src/test/java/org/drools/mvel/integrationtests/KieContainerTest.java
+++ 
b/drools-test-coverage/test-compiler-integration/src/test/java/org/drools/mvel/integrationtests/KieContainerTest.java
@@ -27,6 +27,8 @@ import java.util.Collection;
 import java.util.List;
 
 import org.apache.commons.io.IOUtils;
+import org.drools.base.definitions.InternalKnowledgePackage;
+import org.drools.base.definitions.rule.impl.RuleImpl;
 import org.drools.compiler.compiler.io.Folder;
 import org.drools.compiler.compiler.io.memory.MemoryFileSystem;
 import org.drools.compiler.kie.builder.impl.MemoryKieModule;
@@ -38,6 +40,7 @@ import org.drools.testcoverage.common.util.TestParametersUtil;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
+import org.kie.api.KieBase;
 import org.kie.api.KieServices;
 import org.kie.api.builder.KieModule;
 import org.kie.api.builder.Message.Level;
@@ -267,6 +270,13 @@ public class KieContainerTest {
 
         Thread t = new Thread(() -> {
             for (int i = 1; i < 10; i++) {
+                while (!previousRuleExists(kieContainer, i)) { // if rule1 
exists, we can change it to rule2
+                    try {
+                        Thread.sleep(1);
+                    } catch (InterruptedException e) {
+                        throw new RuntimeException(e);
+                    }
+                }
                 ReleaseId releaseId1 = 
kieServices.newReleaseId("org.kie.test", "sync-scanner-test", "1.0." + i);
                 KieUtil.getKieModuleFromDrls(releaseId1, 
kieBaseTestConfiguration, createDRL("rule" + i));
                 kieContainer.updateToVersion(releaseId1);
@@ -292,6 +302,13 @@ public class KieContainerTest {
         }
     }
 
+    private static boolean previousRuleExists(KieContainer kieContainer, int 
i) {
+        KieBase kieBase = kieContainer.getKieBase();
+        InternalKnowledgePackage internalKnowledgePackage = 
(InternalKnowledgePackage)kieBase.getKiePackage("org.kie.test");
+        RuleImpl rule = internalKnowledgePackage.getRule("rule" + (i - 1));
+        return rule != null;
+    }
+
     @Test
     public void testMemoryFileSystemFolderUniqueness() {
         KieServices kieServices = KieServices.Factory.get();


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

Reply via email to