nashorn/test/src/jdk/nashorn/internal/test/framework/TestFinder.java
changeset 19103 3905e242e69c
parent 17526 3194676cb555
child 24778 2ff5d7041566
--- a/nashorn/test/src/jdk/nashorn/internal/test/framework/TestFinder.java	Thu Jul 25 20:10:48 2013 +0530
+++ b/nashorn/test/src/jdk/nashorn/internal/test/framework/TestFinder.java	Fri Jul 26 13:50:52 2013 +0200
@@ -29,6 +29,7 @@
 import static jdk.nashorn.internal.test.framework.TestConfig.OPTIONS_COMPARE;
 import static jdk.nashorn.internal.test.framework.TestConfig.OPTIONS_EXPECT_COMPILE_FAIL;
 import static jdk.nashorn.internal.test.framework.TestConfig.OPTIONS_EXPECT_RUN_FAIL;
+import static jdk.nashorn.internal.test.framework.TestConfig.OPTIONS_FORK;
 import static jdk.nashorn.internal.test.framework.TestConfig.OPTIONS_IGNORE_STD_ERROR;
 import static jdk.nashorn.internal.test.framework.TestConfig.OPTIONS_RUN;
 import static jdk.nashorn.internal.test.framework.TestConfig.TEST_FAILED_LIST_FILE;
@@ -208,6 +209,7 @@
         boolean checkCompilerMsg = false;
         boolean noCompare = false;
         boolean ignoreStdError = false;
+        boolean fork = false;
 
         final List<String> engineOptions = new ArrayList<>();
         final List<String> scriptArguments = new ArrayList<>();
@@ -284,6 +286,9 @@
                 case "@option":
                     engineOptions.add(scanner.next());
                     break;
+                case "@fork":
+                    fork = true;
+                    break;
                 }
 
                 // negative tests are expected to fail at runtime only
@@ -324,6 +329,9 @@
             if (ignoreStdError) {
                 testOptions.put(OPTIONS_IGNORE_STD_ERROR, "true");
             }
+            if (fork) {
+                testOptions.put(OPTIONS_FORK, "true");
+            }
 
             tests.add(factory.createTest(framework, testFile.toFile(), engineOptions, testOptions, scriptArguments));
         } else if (!isNotTest) {