Title: [232603] trunk
Revision
232603
Author
[email protected]
Date
2018-06-07 15:07:37 -0700 (Thu, 07 Jun 2018)

Log Message

Enhance run-jsc-stress-tests to allow a test to specify test specific options required for it to run.
https://bugs.webkit.org/show_bug.cgi?id=186409
<rdar://problem/40909007>

Reviewed by Saam Barati.

Tools:

This is needed because some tests are written with specific features in mind, and
we may not necessarily want to enable that option for all tests.

We can now specify something like this at the top of a test file:
    //@ requireOptions("--useIntlPluralRules=true")

... and ensure that that test will be run with the --useIntlPluralRules=true
option for all test configurations that run the test.

* Scripts/run-jsc-stress-tests:

LayoutTests:

* js/script-tests/intl-pluralrules.js:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (232602 => 232603)


--- trunk/LayoutTests/ChangeLog	2018-06-07 22:06:43 UTC (rev 232602)
+++ trunk/LayoutTests/ChangeLog	2018-06-07 22:07:37 UTC (rev 232603)
@@ -1,3 +1,13 @@
+2018-06-07  Mark Lam  <[email protected]>
+
+        Enhance run-jsc-stress-tests to allow a test to specify test specific options required for it to run.
+        https://bugs.webkit.org/show_bug.cgi?id=186409
+        <rdar://problem/40909007>
+
+        Reviewed by Saam Barati.
+
+        * js/script-tests/intl-pluralrules.js:
+
 2018-06-07  Ryosuke Niwa  <[email protected]>
 
         Release assert in Document::updateLayout() in WebPage::determinePrimarySnapshottedPlugIn()

Modified: trunk/LayoutTests/js/script-tests/intl-pluralrules.js (232602 => 232603)


--- trunk/LayoutTests/js/script-tests/intl-pluralrules.js	2018-06-07 22:06:43 UTC (rev 232602)
+++ trunk/LayoutTests/js/script-tests/intl-pluralrules.js	2018-06-07 22:07:37 UTC (rev 232603)
@@ -1,4 +1,6 @@
 //@ skip if $hostOS == "windows" or $hostOS == "linux"
+//@ requireOptions("--useIntlPluralRules=true")
+
 description("This test checks the behavior of Intl.PluralRules as described in the ECMAScript Internationalization API Specification.");
 
 // https://tc39.github.io/ecma402/#pluralrules-objects

Modified: trunk/Tools/ChangeLog (232602 => 232603)


--- trunk/Tools/ChangeLog	2018-06-07 22:06:43 UTC (rev 232602)
+++ trunk/Tools/ChangeLog	2018-06-07 22:07:37 UTC (rev 232603)
@@ -1,3 +1,22 @@
+2018-06-07  Mark Lam  <[email protected]>
+
+        Enhance run-jsc-stress-tests to allow a test to specify test specific options required for it to run.
+        https://bugs.webkit.org/show_bug.cgi?id=186409
+        <rdar://problem/40909007>
+
+        Reviewed by Saam Barati.
+
+        This is needed because some tests are written with specific features in mind, and
+        we may not necessarily want to enable that option for all tests.
+
+        We can now specify something like this at the top of a test file:
+            //@ requireOptions("--useIntlPluralRules=true")
+
+        ... and ensure that that test will be run with the --useIntlPluralRules=true
+        option for all test configurations that run the test.
+
+        * Scripts/run-jsc-stress-tests:
+
 2018-06-07  Tim Horton  <[email protected]>
 
         REGRESSION (r232544): [iOS] TestWebKitAPI.WebKit.OverrideLayoutSizeChangesDuringAnimatedResizeSucceed is failing

Modified: trunk/Tools/Scripts/run-jsc-stress-tests (232602 => 232603)


--- trunk/Tools/Scripts/run-jsc-stress-tests	2018-06-07 22:06:43 UTC (rev 232602)
+++ trunk/Tools/Scripts/run-jsc-stress-tests	2018-06-07 22:07:37 UTC (rev 232603)
@@ -503,6 +503,7 @@
 end
 
 $runCommandOptions = {}
+$testSpecificRequiredOptions = []
 
 $uniqueFilenameCounter = 0
 def uniqueFilename(extension)
@@ -572,8 +573,12 @@
     $runCommandOptions[:isSlow] = true
 end
 
+def requireOptions(*options)
+    $testSpecificRequiredOptions += options
+end
+
 def runWithOutputHandler(kind, outputHandler, *options)
-    addRunCommand(kind, [pathToVM.to_s] + BASE_OPTIONS + options + [$benchmark.to_s], outputHandler, simpleErrorHandler)
+    addRunCommand(kind, [pathToVM.to_s] + BASE_OPTIONS + $testSpecificRequiredOptions + options + [$benchmark.to_s], outputHandler, simpleErrorHandler)
 end
 
 def run(kind, *options)
@@ -914,7 +919,7 @@
 
     prepareExtraRelativeFiles(includeFiles.map { |f| "../" + f }, $collection)
 
-    args = [pathToVM.to_s] + BASE_OPTIONS
+    args = [pathToVM.to_s] + BASE_OPTIONS + $testSpecificRequiredOptions
     args << "--exception=" + exception if failsWithException
     args << "--test262-async" if isAsync
     args += includeFiles
@@ -956,7 +961,7 @@
 end
 
 def runES6(mode)
-    args = [pathToVM.to_s] + BASE_OPTIONS + [$benchmark.to_s]
+    args = [pathToVM.to_s] + BASE_OPTIONS + $testSpecificRequiredOptions + [$benchmark.to_s]
     case mode
     when :normal
         errorHandler = simpleErrorHandler
@@ -1087,7 +1092,7 @@
     prepareExtraAbsoluteFiles(CHAKRATESTS_PATH, ["jsc-lib.js"])
     prepareExtraRelativeFiles(extraFiles.map { |f| "../" + f }, $collection)
 
-    args = [pathToVM.to_s] + BASE_OPTIONS
+    args = [pathToVM.to_s] + BASE_OPTIONS + $testSpecificRequiredOptions
     args += FTL_OPTIONS if $isFTLPlatform
     args += EAGER_OPTIONS
     args << "--exception=" + exception if failsWithException
@@ -1128,7 +1133,7 @@
     prepareExtraRelativeFiles(["../#{testName}-expected.txt"], $benchmarkDirectory)
     prepareExtraAbsoluteFiles(LAYOUTTESTS_PATH, ["resources/standalone-pre.js", "resources/standalone-post.js"])
 
-    args = [pathToVM.to_s] + BASE_OPTIONS + options +
+    args = [pathToVM.to_s] + BASE_OPTIONS + $testSpecificRequiredOptions + options +
         [(Pathname.new("resources") + "standalone-pre.js").to_s,
          $benchmark.to_s,
          (Pathname.new("resources") + "standalone-post.js").to_s]
@@ -1268,7 +1273,7 @@
         kind = "mozilla"
     end
     prepareExtraRelativeFiles(extraFiles.map{|v| (Pathname("..") + v).to_s}, $collection)
-    args = [pathToVM.to_s] + BASE_OPTIONS + options + extraFiles.map{|v| v.to_s} + [$benchmark.to_s]
+    args = [pathToVM.to_s] + BASE_OPTIONS + $testSpecificRequiredOptions + options + extraFiles.map{|v| v.to_s} + [$benchmark.to_s]
     case mode
     when :normal
         errorHandler = mozillaErrorHandler
@@ -1338,7 +1343,7 @@
 end
 
 def runNoisyTestImpl(kind, options, additionalEnv)
-    addRunCommand(kind, [pathToVM.to_s] + BASE_OPTIONS + options + [$benchmark.to_s], noisyOutputHandler, noisyErrorHandler, *additionalEnv)
+    addRunCommand(kind, [pathToVM.to_s] + BASE_OPTIONS + $testSpecificRequiredOptions + options + [$benchmark.to_s], noisyOutputHandler, noisyErrorHandler, *additionalEnv)
 end
 
 def runNoisyTest(kind, *options)
@@ -1536,6 +1541,7 @@
             $benchmark = path.basename
             
             $runCommandOptions = {}
+            $testSpecificRequiredOptions = []
             defaultRun unless parseRunCommands
         }
     }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to