Fix problem with maildir delivery into a folder that is excluded from
[exim.git] / test / runtest
index 2e0c724175ce277d53de8e20e620ba75f88d18d7..91b64e8e970910d00ffe5331cc26e98f7c06c833 100755 (executable)
@@ -1,6 +1,6 @@
 #! /usr/bin/perl -w
 
-# $Cambridge: exim/test/runtest,v 1.7 2006/04/20 14:11:29 ph10 Exp $
+# $Cambridge: exim/test/runtest,v 1.9 2006/04/25 14:02:30 ph10 Exp $
 
 ###############################################################################
 # This is the controlling script for the "new" test suite for Exim. It should #
@@ -613,7 +613,7 @@ while(<IN>)
   s/\b\d+\.H\d+P\d+\b/dddddddddd.HddddddPddddd/;
 
   # Maildirsize data
-  if (/^\d+S,\d+C\s*$/)
+  while (/^\d+S,\d+C\s*$/)
     {
     print MUNGED;
     while (<IN>)
@@ -623,6 +623,7 @@ while(<IN>)
       }
     last if !defined $_;
     }
+  last if !defined $_;
 
 
   # ======== Output from the "fd" program about open descriptors ========
@@ -2558,12 +2559,25 @@ opendir(DIR, "scripts") || tests_exit(-1, "Failed to opendir(\"scripts\"): $!");
 @test_dirs = sort readdir(DIR);
 closedir(DIR);
 
+# Remove . and .. and CVS from the list.
+
+for ($i = 0; $i < @test_dirs; $i++)
+  {
+  my($d) = $test_dirs[$i];
+  if ($d eq "." || $d eq ".." || $d eq "CVS")
+    {
+    splice @test_dirs, $i, 1;
+    $i--;
+    }
+  }
+
+# Scan for relevant tests
+
 for ($i = 0; $i < @test_dirs; $i++)
   {
   my($testdir) = $test_dirs[$i];
   my($wantthis) = 1;
 
-  next if $testdir eq "." || $testdir eq "..";
   print ">>Checking $testdir\n" if $debug;
 
   # Skip this directory if the first test is equal or greater than the first