--- jsr166/src/test/tck/JSR166TestCase.java 2013/04/01 20:06:26 1.106 +++ jsr166/src/test/tck/JSR166TestCase.java 2013/08/16 07:07:01 1.112 @@ -128,11 +128,19 @@ public class JSR166TestCase extends Test private static final long profileThreshold = Long.getLong("jsr166.profileThreshold", 100); + /** + * The number of repetitions per test (for tickling rare bugs). + */ + private static final int runsPerTest = + Integer.getInteger("jsr166.runsPerTest", 1); + protected void runTest() throws Throwable { - if (profileTests) - runTestProfiled(); - else - super.runTest(); + for (int i = 0; i < runsPerTest; i++) { + if (profileTests) + runTestProfiled(); + else + super.runTest(); + } } protected void runTestProfiled() throws Throwable { @@ -292,9 +300,12 @@ public class JSR166TestCase extends Test "DoubleAccumulatorTest", "DoubleAdderTest", "ForkJoinPool8Test", + "ForkJoinTask8Test", "LongAccumulatorTest", "LongAdderTest", + "SplittableRandomTest", "StampedLockTest", + "ThreadLocalRandom8Test", }; addNamedTestClasses(suite, java8TestClassNames); } @@ -302,13 +313,13 @@ public class JSR166TestCase extends Test return suite; } + // Delays for timing-dependent tests, in milliseconds. public static long SHORT_DELAY_MS; public static long SMALL_DELAY_MS; public static long MEDIUM_DELAY_MS; public static long LONG_DELAY_MS; - /** * Returns the shortest timed delay. This could * be reimplemented to use for example a Property. @@ -701,7 +712,6 @@ public class JSR166TestCase extends Test public static final Integer m6 = new Integer(-6); public static final Integer m10 = new Integer(-10); - /** * Runs Runnable r with a security policy that permits precisely * the specified permissions. If there is no current security @@ -1232,7 +1242,7 @@ public class JSR166TestCase extends Test public abstract class CheckedRecursiveAction extends RecursiveAction { protected abstract void realCompute() throws Throwable; - public final void compute() { + @Override protected final void compute() { try { realCompute(); } catch (Throwable t) { @@ -1247,7 +1257,7 @@ public class JSR166TestCase extends Test public abstract class CheckedRecursiveTask extends RecursiveTask { protected abstract T realCompute() throws Throwable; - public final T compute() { + @Override protected final T compute() { try { return realCompute(); } catch (Throwable t) {