From c866771cd25400c8a5a39d4ba252b01cd8bcad1c Mon Sep 17 00:00:00 2001
From: Daniel Stenberg <daniel@haxx.se>
Date: Wed, 13 Sep 2006 10:16:36 +0000
Subject: [PATCH] Added a generic way to disable test cases when "all" is run,
 and added the FTP 3rd party transfers to that file for now until I have them
 sorted out.

---
 tests/data/DISABLED    |  7 +++++++
 tests/data/Makefile.am |  2 +-
 tests/runtests.pl      | 17 +++++++++++++++++
 3 files changed, 25 insertions(+), 1 deletion(-)
 create mode 100644 tests/data/DISABLED

diff --git a/tests/data/DISABLED b/tests/data/DISABLED
new file mode 100644
index 0000000000..6259e0b7ba
--- /dev/null
+++ b/tests/data/DISABLED
@@ -0,0 +1,7 @@
+# This file can be used to specify test cases that should not run when all
+# test cases are run by runtests.pl. Just add the plain test case numbers, one
+# per line.
+# Comments starting with '#' letters are fine.
+230
+231
+232
diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am
index 4c1bdb120b..64218bac1c 100644
--- a/tests/data/Makefile.am
+++ b/tests/data/Makefile.am
@@ -35,5 +35,5 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46	   \
  test256 test257 test258 test259 test260 test261 test262 test263 test264   \
  test265 test266 test267 test268 test269 test270 test271 test272 test273   \
  test274 test275 test524 test525 test276 test277 test526 test527 test528   \
- test530
+ test530 DISABLED
 
diff --git a/tests/runtests.pl b/tests/runtests.pl
index 55438e9b8d..121a4d8444 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -2123,6 +2123,18 @@ if ( $TESTCASES eq "all") {
     my @cmds = grep { /^test([0-9]+)$/ && -f "$TESTDIR/$_" } readdir(DIR);
     closedir DIR;
 
+    my %dis;
+    open(D, "$TESTDIR/DISABLED");
+    while(<D>) {
+        if(/^ *\#/) {
+            # allow comments
+            next;
+        }
+        if($_ =~ /(\d+)/) {
+            $dis{$1}=$1; # disable this test number
+        }
+    }
+
     $TESTCASES=""; # start with no test cases
 
     # cut off everything but the digits
@@ -2131,6 +2143,11 @@ if ( $TESTCASES eq "all") {
     }
     # the the numbers from low to high
     for(sort { $a <=> $b } @cmds) {
+        if($dis{$_}) {
+            # skip disabled test cases
+            print STDERR "runtests.pl: disabling test $_\n";
+            next;
+        }
         $TESTCASES .= " $_";
     }
 }
-- 
GitLab