sling-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bdelacre...@apache.org
Subject svn commit: r1067148 - /sling/whiteboard/bdelacretaz/junit/scriptable/src/main/java/org/apache/sling/junit/scriptable/TestAllPaths.java
Date Fri, 04 Feb 2011 11:07:38 GMT
Author: bdelacretaz
Date: Fri Feb  4 11:07:37 2011
New Revision: 1067148

URL: http://svn.apache.org/viewvc?rev=1067148&view=rev
Log:
SLING-1963 - prevent concurrent execution

Modified:
    sling/whiteboard/bdelacretaz/junit/scriptable/src/main/java/org/apache/sling/junit/scriptable/TestAllPaths.java

Modified: sling/whiteboard/bdelacretaz/junit/scriptable/src/main/java/org/apache/sling/junit/scriptable/TestAllPaths.java
URL: http://svn.apache.org/viewvc/sling/whiteboard/bdelacretaz/junit/scriptable/src/main/java/org/apache/sling/junit/scriptable/TestAllPaths.java?rev=1067148&r1=1067147&r2=1067148&view=diff
==============================================================================
--- sling/whiteboard/bdelacretaz/junit/scriptable/src/main/java/org/apache/sling/junit/scriptable/TestAllPaths.java
(original)
+++ sling/whiteboard/bdelacretaz/junit/scriptable/src/main/java/org/apache/sling/junit/scriptable/TestAllPaths.java
Fri Feb  4 11:07:37 2011
@@ -27,6 +27,8 @@ import java.util.List;
 
 import org.apache.sling.api.resource.ResourceResolver;
 import org.apache.sling.engine.SlingRequestProcessor;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
@@ -37,6 +39,7 @@ import org.junit.runners.Parameterized.P
 public class TestAllPaths {
 
     private String path;
+    private static boolean executing = false;
     public static final String TEST_URL_SUFFIX = ".test.txt";
     public static final String PASSED = "TEST_PASSED";
     
@@ -48,6 +51,21 @@ public class TestAllPaths {
     public TestAllPaths(String path) {
         this.path = path;
     }
+    
+    // Due to our use of static context, only one instance of this test can
+    // execute at any given time.
+    @BeforeClass
+    public static void checkConcurrency() {
+        if(executing) {
+            fail("Concurrent execution detected, not supported by this class");
+        }
+        executing = true;
+    }
+
+    @AfterClass
+    public static void cleanup() {
+        executing = false;
+    }
 
     /** Let JUnit run this all on our paths */
     @Parameters



Mime
View raw message