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

sdedic pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/netbeans.git


The following commit(s) were added to refs/heads/master by this push:
     new 3ab92d0  Improve wait condition for the test: both Lookup and 
configurations must change
     new c67ae02  Merge pull request #3140 from 
sdedic/sdedic/failing-mavenactions
3ab92d0 is described below

commit 3ab92d08e4baacf5dbd47340789257f19be907a0
Author: Svata Dedic <svatopluk.de...@oracle.com>
AuthorDate: Fri Sep 10 14:31:57 2021 +0200

    Improve wait condition for the test: both Lookup and configurations must 
change
---
 .../org/netbeans/api/maven/MavenActionsTest.java   | 24 ++++++++++++++++++----
 1 file changed, 20 insertions(+), 4 deletions(-)

diff --git 
a/java/api.maven/test/unit/src/org/netbeans/api/maven/MavenActionsTest.java 
b/java/api.maven/test/unit/src/org/netbeans/api/maven/MavenActionsTest.java
index 0b98e37..6c6c636 100644
--- a/java/api.maven/test/unit/src/org/netbeans/api/maven/MavenActionsTest.java
+++ b/java/api.maven/test/unit/src/org/netbeans/api/maven/MavenActionsTest.java
@@ -18,15 +18,21 @@
  */
 package org.netbeans.api.maven;
 
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
 import java.io.OutputStream;
 import java.io.OutputStreamWriter;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.TimeUnit;
 import org.netbeans.api.project.FileOwnerQuery;
 import org.netbeans.api.project.Project;
 import org.netbeans.api.project.ui.OpenProjects;
 import org.netbeans.junit.NbTestCase;
 import org.netbeans.modules.maven.api.MavenConfiguration;
+import org.netbeans.modules.maven.api.NbMavenProject;
+import org.netbeans.modules.maven.configurations.M2ConfigProvider;
 import org.netbeans.modules.maven.spi.actions.MavenActionsProvider;
 import org.netbeans.spi.project.ActionProvider;
 import org.netbeans.spi.project.ProjectConfigurationProvider;
@@ -78,7 +84,18 @@ public class MavenActionsTest extends NbTestCase {
         ActionProvider ap = p.getLookup().lookup(ActionProvider.class);
         assertTrue(Arrays.asList(ap.getSupportedActions()).contains("extra"));
         
-        CountDownLatch change = new CountDownLatch(1);
+        CountDownLatch change = new CountDownLatch(2); // Lookup and set of 
project configurations
+
+        // Lookup or project change will imply a configuration change. We need 
both
+        ProjectConfigurationProvider pcp = 
p.getLookup().lookup(ProjectConfigurationProvider.class);
+        pcp.addPropertyChangeListener(new PropertyChangeListener() {
+            @Override
+            public void propertyChange(PropertyChangeEvent evt) {
+                if 
(ProjectConfigurationProvider.PROP_CONFIGURATIONS.equals(evt.getNewValue())) {
+                    change.countDown();
+                }
+            }
+        });
         
         
p.getLookup().lookupResult(MavenActionsProvider.class).addLookupListener(new 
LookupListener() {
             @Override
@@ -98,9 +115,8 @@ public class MavenActionsTest extends NbTestCase {
         }
         
         // wait for the set of providers to refresh. PROP_PROJECT comes first, 
but Lookup takes some
-        // additional time.
-        change.await();
-   
+        // additional time. The change should be almost immediate.
+        change.await(1000, TimeUnit.MILLISECONDS);
         assertFalse(Arrays.asList(ap.getSupportedActions()).contains("extra"));
     }
     

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org
For additional commands, e-mail: commits-h...@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists

Reply via email to