ridljar/test/com/sun/star/lib/uno/environments/remote/JobQueue_Test.java   |   
 4 ++--
 ridljar/test/com/sun/star/lib/uno/environments/remote/TestWorkAt.java      |   
 6 +++++-
 ridljar/test/com/sun/star/lib/uno/environments/remote/ThreadPool_Test.java |   
 8 ++++----
 3 files changed, 11 insertions(+), 7 deletions(-)

New commits:
commit ee118a5e6977343a03064a0a1a54aee919296a36
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Thu Feb 22 12:28:44 2024 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Thu Feb 22 17:48:23 2024 +0100

    fix dodgy unit test
    
    Testing a field which is being modified inside a synchronized block,
    outside of such a block, is going to lead to weird ordering issues when
    running a highly parallel test like this, so test the flag inside a
    synchronized block.
    
    Failure manifested as:
    
    JUnit version 4.13.2
    ........E...........
    Time: 17,27
    There was 1 failure:
    1)
    
testStaticThreadExecutesAsyncs(com.sun.star.lib.uno.environments.remote.JobQueue_Test)
    java.lang.AssertionError: expected:<35> but was:<34>
            at org.junit.Assert.fail(Assert.java:89)
            at org.junit.Assert.failNotEquals(Assert.java:835)
            at org.junit.Assert.assertEquals(Assert.java:647)
            at org.junit.Assert.assertEquals(Assert.java:633)
            at
    
com.sun.star.lib.uno.environments.remote.TestWorkAt.passedAsyncTest(TestWorkAt.java:75)
            at
    
com.sun.star.lib.uno.environments.remote.JobQueue_Test.testAsyncJobQueue(JobQueue_Test.java:180)
            at
    
com.sun.star.lib.uno.environments.remote.JobQueue_Test.testStaticThreadExecutesAsyncs(JobQueue_Test.java:121)
    
    FAILURES!!!
    Tests run: 19,  Failures: 1
    
    Change-Id: Iad980aea1245bfd8ee89887b175eb9dc17643778
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163727
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git 
a/ridljar/test/com/sun/star/lib/uno/environments/remote/JobQueue_Test.java 
b/ridljar/test/com/sun/star/lib/uno/environments/remote/JobQueue_Test.java
index a63c9c7ed6ba..aae787fed040 100644
--- a/ridljar/test/com/sun/star/lib/uno/environments/remote/JobQueue_Test.java
+++ b/ridljar/test/com/sun/star/lib/uno/environments/remote/JobQueue_Test.java
@@ -150,7 +150,7 @@ public final class JobQueue_Test {
                                              "notifyme"),
                                         true, null, false, null, null)),
                             null);
-            while (!workAt._notified) {
+            while (!workAt.isNotified()) {
                 workAt.wait();
             }
         }
@@ -173,7 +173,7 @@ public final class JobQueue_Test {
                             __workAt_td.getMethodDescription("notifyme"),
                             true, null, false, null, null)),
                 null);
-            while (!workAt._notified) {
+            while (!workAt.isNotified()) {
                 workAt.wait();
             }
         }
diff --git 
a/ridljar/test/com/sun/star/lib/uno/environments/remote/TestWorkAt.java 
b/ridljar/test/com/sun/star/lib/uno/environments/remote/TestWorkAt.java
index 93297815cb9e..8f91e4ba3c54 100644
--- a/ridljar/test/com/sun/star/lib/uno/environments/remote/TestWorkAt.java
+++ b/ridljar/test/com/sun/star/lib/uno/environments/remote/TestWorkAt.java
@@ -36,7 +36,7 @@ class TestWorkAt implements TestIWorkAt {
     int _async_counter;
 
     private boolean _passedAsync = true;
-    boolean _notified = false;
+    private boolean _notified = false;
 
     public synchronized void syncCall() throws Throwable {
         ++ _sync_counter;
@@ -71,6 +71,10 @@ class TestWorkAt implements TestIWorkAt {
         _notified = true;
     }
 
+    public synchronized boolean isNotified() {
+        return _notified;
+    }
+
     public synchronized boolean passedAsyncTest() {
         assertEquals(MESSAGES, _sync_counter);
         assertTrue(_passedAsync);
diff --git 
a/ridljar/test/com/sun/star/lib/uno/environments/remote/ThreadPool_Test.java 
b/ridljar/test/com/sun/star/lib/uno/environments/remote/ThreadPool_Test.java
index 7da68db23f0e..c97ebd0c209c 100644
--- a/ridljar/test/com/sun/star/lib/uno/environments/remote/ThreadPool_Test.java
+++ b/ridljar/test/com/sun/star/lib/uno/environments/remote/ThreadPool_Test.java
@@ -74,7 +74,7 @@ public class ThreadPool_Test {
         synchronized(workAt) {
             putJob(workAt, false, threadId, "notifyme");
 
-            while(!workAt._notified) {
+            while(!workAt.isNotified()) {
                 workAt.wait();
             }
         }
@@ -96,7 +96,7 @@ public class ThreadPool_Test {
         synchronized(workAt) {
             putJob(workAt, true, threadId, "notifyme");
 
-            while(!workAt._notified) {
+            while(!workAt.isNotified()) {
                 workAt.wait();
             }
         }
@@ -164,7 +164,7 @@ public class ThreadPool_Test {
         synchronized(workAt) {
             putJob(workAt, true, threadId, "notifyme");
 
-            while(!workAt._notified) {
+            while(!workAt.isNotified()) {
                 workAt.wait();
             }
         }
@@ -326,7 +326,7 @@ public class ThreadPool_Test {
         synchronized(workAt) {
             putJob(workAt, false, threadId, "notifyme");
 
-            while(!workAt._notified) {
+            while(!workAt.isNotified()) {
                 workAt.wait();
             }
         }

Reply via email to