You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2015/05/20 19:39:59 UTC

[3/4] cxf git commit: Surefire 2.18 allocates and initializes the statics for ALL the test classes up front. Thus, the "Server" and similar ports get overwridden and tests fail. Update TestUtil to record the port on the various package names walkingup

Surefire 2.18 allocates and initializes the statics for ALL the test classes up front.  Thus, the "Server" and similar ports get overwridden and tests fail.  Update TestUtil to record the port on the various package names walkingup the class so we can start fixing tests.


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/f57d8ae4
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/f57d8ae4
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/f57d8ae4

Branch: refs/heads/master
Commit: f57d8ae4cf0c664eae9d93b54236870139e6b090
Parents: 05b96b6
Author: Daniel Kulp <dk...@apache.org>
Authored: Wed May 20 13:37:06 2015 -0400
Committer: Daniel Kulp <dk...@apache.org>
Committed: Wed May 20 13:38:53 2015 -0400

----------------------------------------------------------------------
 .../apache/cxf/testutil/common/TestUtil.java    | 38 ++++++++++++++++----
 1 file changed, 32 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf/blob/f57d8ae4/testutils/src/main/java/org/apache/cxf/testutil/common/TestUtil.java
----------------------------------------------------------------------
diff --git a/testutils/src/main/java/org/apache/cxf/testutil/common/TestUtil.java b/testutils/src/main/java/org/apache/cxf/testutil/common/TestUtil.java
index f21675e..04baa99 100644
--- a/testutils/src/main/java/org/apache/cxf/testutil/common/TestUtil.java
+++ b/testutils/src/main/java/org/apache/cxf/testutil/common/TestUtil.java
@@ -142,13 +142,42 @@ public final class TestUtil {
     public static String getNewPortNumber(String name) {
         return getNewPortNumber(name, name);
     }
-    public static String getNewPortNumber(String fullName, String simpleName) {
+    
+    private static void applyNames(String fullName, String simpleName, String p) {
+        ports.setProperty("testutil.ports." + fullName, p);
+        ports.setProperty("testutil.ports." + simpleName, p);
+        System.setProperty("testutil.ports." + fullName, p);
+        System.setProperty("testutil.ports." + simpleName, p);
+        if (fullName.endsWith("." + simpleName)) {
+            int idx = fullName.lastIndexOf('.', fullName.lastIndexOf('.'));
+            while (idx != -1) {
+                String name = fullName.substring(idx + 1);
+                ports.setProperty("testutil.ports." + name, p);
+                System.setProperty("testutil.ports." + name, p);
+                idx = fullName.lastIndexOf('.', idx - 1);
+            }
+        }
+    }
+    private static void removeNames(String fullName, String simpleName) {
         ports.remove("testutil.ports." + fullName);
         ports.remove("testutil.ports." + simpleName);
         System.clearProperty("testutil.ports." + fullName);
         System.clearProperty("testutil.ports." + simpleName);        
+        if (fullName.endsWith("." + simpleName)) {
+            int idx = fullName.lastIndexOf('.', fullName.lastIndexOf('.'));
+            while (idx != -1) {
+                String name = fullName.substring(idx + 1);
+                ports.remove("testutil.ports." + name);
+                System.clearProperty("testutil.ports." + name);
+                idx = fullName.lastIndexOf('.', idx - 1);
+            }
+        }
+    }
+    
+    public static String getNewPortNumber(String fullName, String simpleName) {
+        removeNames(fullName, simpleName);
         return getPortNumber(fullName, simpleName);
-    }    
+    } 
     public static String getPortNumber(String fullName, String simpleName) {
         String p = ports.getProperty("testutil.ports." + fullName);
         if (p == null) {
@@ -170,10 +199,7 @@ public final class TestUtil {
                 //
             }
         }
-        ports.put("testutil.ports." + fullName, p);
-        ports.put("testutil.ports." + simpleName, p);
-        System.setProperty("testutil.ports." + fullName, p);
-        System.setProperty("testutil.ports." + simpleName, p);
+        applyNames(fullName, simpleName, p);
         return p;
     }