Bug 1224 followon - avoid breaking other testcases.
[exim.git] / test / runtest
index 6a6aadd975d49644457ba909477811e4ba386d61..31aaaa902e83364e7cbb081e9da724915447c2ec 100755 (executable)
@@ -312,7 +312,7 @@ RESET_AFTER_EXTRA_LINE_READ:
 
   # Replace the Exim version number (may appear in various places)
   # patchexim should have fixed this for us
-  #s/(Exim) \d+\.\d+[\w-]*/$1 x.yz/i;
+  #s/(Exim) \d+\.\d+[\w_-]*/$1 x.yz/i;
 
   # Replace Exim message ids by a unique series
   s/((?:[^\W_]{6}-){2}[^\W_]{2})
@@ -560,9 +560,9 @@ RESET_AFTER_EXTRA_LINE_READ:
   s/host\s\Q$parm_ipv4\E\s\[\Q$parm_ipv4\E\]/host ipv4.ipv4.ipv4.ipv4 [ipv4.ipv4.ipv4.ipv4]/;
   s/host\s\Q$parm_ipv6\E\s\[\Q$parm_ipv6\E\]/host ip6:ip6:ip6:ip6:ip6:ip6:ip6:ip6 [ip6:ip6:ip6:ip6:ip6:ip6:ip6:ip6]/;
   s/\b\Q$parm_ipv4\E\b/ip4.ip4.ip4.ip4/g;
-  s/\b\Q$parm_ipv6\E\b/ip6:ip6:ip6:ip6:ip6:ip6:ip6:ip6/g;
+  s/(^|\W)\K\Q$parm_ipv6\E/ip6:ip6:ip6:ip6:ip6:ip6:ip6:ip6/g;
   s/\b\Q$parm_ipv4r\E\b/ip4-reverse/g;
-  s/\b\Q$parm_ipv6r\E\b/ip6-reverse/g;
+  s/(^|\W)\K\Q$parm_ipv6r\E/ip6-reverse/g;
   s/^(\s+host\s\S+\s+\[\S+\]) +$/$1 /;
 
 
@@ -593,7 +593,12 @@ RESET_AFTER_EXTRA_LINE_READ:
 
   # ======== Output from ls ========
   # Different operating systems use different spacing on long output
-  s/ +/ /g if /^[-rwd]{10} /;
+  #s/ +/ /g if /^[-rwd]{10} /;
+  # (Bug 1226) SUSv3 allows a trailing printable char for modified access method control.
+  # Handle only the Gnu and MacOS space, dot, plus and at-sign.  A full [[:graph:]]
+  # unfortunately matches a non-ls linefull of dashes.
+  # Allow the case where we've already picked out the file protection bits.
+  s/^([-d](?:[-r][-w][-SsTtx]){3})[.+@]?( +|$)/\1 /;
 
 
   # ======== Message sizes =========
@@ -682,6 +687,12 @@ RESET_AFTER_EXTRA_LINE_READ:
   s/^\d\d\d(?=[PFS*])/ddd/;
 
 
+  # ========= Exim lookups ==================
+  # Lookups have a char which depends on the number of lookup types compiled in,
+  # in stderr output.  Replace with a "0".  Recognising this while avoiding
+  # other output is fragile; perhaps the debug output should be revised instead.
+  s%(?<!sqlite)(?<!lsearch\*@)(?<!lsearch\*)(?<!lsearch)[0-?]TESTSUITE/aux-fixed/%0TESTSUITE/aux-fixed/%g;
+
   # ==========================================================
   # Some munging is specific to the specific file types
 
@@ -1864,6 +1875,13 @@ autoflush STDOUT 1;
 print "Exim tester $testversion\n";
 
 
+##################################################
+#      Some tests check created file modes       #
+##################################################
+
+umask 022;
+
+
 ##################################################
 #       Check for the "less" command             #
 ##################################################