Add --skipped-only option to run-webkit-tests
authoraroben <aroben@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 5 Jul 2007 06:56:50 +0000 (06:56 +0000)
committeraroben <aroben@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 5 Jul 2007 06:56:50 +0000 (06:56 +0000)
When this option is specified, only those tests listed in the Skipped
file are run.

Reviewed by Mark.

* Scripts/run-webkit-tests:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24008 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKitTools/ChangeLog
WebKitTools/Scripts/run-webkit-tests

index efdded984360d17aab1b0145060b29aa8ceca700..26dd86152618870fe66a0797d3bd81ce9da3cfa3 100644 (file)
@@ -1,3 +1,14 @@
+2007-07-04  Adam Roben  <aroben@apple.com>
+
+        Add --skipped-only option to run-webkit-tests
+
+        When this option is specified, only those tests listed in the Skipped
+        file are run.
+
+        Reviewed by Mark.
+
+        * Scripts/run-webkit-tests:
+
 2007-07-04  Adam Roben  <aroben@apple.com>
 
         Clean up/alphabetize the run-webkit-tests help message
index fdf89ec2eb12d51fb14a75dfdaa9972eeba9d89d..eb7adfb1d5d41b2c3ca3c32be3f660bd7711d683 100755 (executable)
@@ -92,6 +92,7 @@ my $repaintTests = '';
 my $report10Slowest = 0;
 my $resetResults = 0;
 my $showHelp = 0;
+my $skippedOnly = 0;
 my $testsPerDumpTool = 1000;
 my $testHTTP = 1;
 my $testOnlySVGs = '';
@@ -131,6 +132,7 @@ Usage: $programName [options] [testdir|testpath ...]
   -o|--results-directory          Output results directory (default: $testResultsDirectory)
   --root                          Path to root tools build
   -1|--singly                     Isolate each test case run (implies --verbose)
+  --skipped-only                  Run only those tests listed in the Skipped file
   --slowest                       Report the 10 slowest tests
   --strict                        Do a comparison with the output on Mac (Qt only)
   --[no-]strip-editing-callbacks  Remove editing callbacks from expected results
@@ -160,6 +162,7 @@ my $getOptionsResult = GetOptions(
     'results-directory|o=s' => \$testResultsDirectory,
     'singly|1' => sub { $testsPerDumpTool = 1; },
     'nthly=i' => \$testsPerDumpTool,
+    'skipped-only' => \$skippedOnly,
     'slowest' => \$report10Slowest,
     'svg' => \$testOnlySVGs, 
     'threaded|t' => \$threaded,
@@ -175,6 +178,8 @@ if (!$getOptionsResult || $showHelp) {
     exit 1;
 }
 
+!$skippedOnly || @ARGV == 0 or die "--skipped-only cannot be used when tests are specified on the command line.";
+
 setConfiguration($configuration);
 
 my $configurationOption = "--" . lc($configuration);
@@ -277,7 +282,7 @@ if ($ignoreTests) {
 }
 
 if (open SKIPPED, "<", "$platformTestDirectory/Skipped") {
-    if ($verbose) {
+    if ($verbose && !$skippedOnly) {
         print "Skipped tests:\n";
     }
     while (<SKIPPED>) {
@@ -286,10 +291,14 @@ if (open SKIPPED, "<", "$platformTestDirectory/Skipped") {
         $skipped =~ s/^ +//;
         $skipped =~ s/ +$//;
         if ($skipped && $skipped !~ /^#/) {
-            if($verbose) {
-                print "    $skipped\n";
+            if ($skippedOnly) {
+                push(@ARGV, $skipped);
+            } else {
+                if ($verbose) {
+                    print "    $skipped\n";
+                }
+                processIgnoreTests($skipped);
             }
-            processIgnoreTests($skipped);
         }
     }
     close SKIPPED;