git://git.exim.org
/
users
/
jgh
/
exim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add retry type "lookup". Bug 1566
[users/jgh/exim.git]
/
test
/
runtest
diff --git
a/test/runtest
b/test/runtest
index 6d4cc1c74db5ae060721dd7b037d30915efd08d6..2baf2cafd7950c94d930734a52ac912e906aef43 100755
(executable)
--- a/
test/runtest
+++ b/
test/runtest
@@
-491,6
+491,9
@@
RESET_AFTER_EXTRA_LINE_READ:
s/Exim\sstatistics\sfrom\s\d{4}-\d\d-\d\d\s\d\d:\d\d:\d\d\sto\s
\d{4}-\d\d-\d\d\s\d\d:\d\d:\d\d/Exim statistics from <time> to <time>/x;
s/Exim\sstatistics\sfrom\s\d{4}-\d\d-\d\d\s\d\d:\d\d:\d\d\sto\s
\d{4}-\d\d-\d\d\s\d\d:\d\d:\d\d/Exim statistics from <time> to <time>/x;
+ # Treat ECONNRESET the same as ECONNREFUSED. At least some systems give
+ # us the former on a new connection.
+ s/(could not connect to .*: Connection) reset by peer$/$1 refused/;
# ======== TLS certificate algorithms ========
# Test machines might have various different TLS library versions supporting
# ======== TLS certificate algorithms ========
# Test machines might have various different TLS library versions supporting
@@
-806,7
+809,7
@@
RESET_AFTER_EXTRA_LINE_READ:
# ==========================================================
# MIME boundaries in RFC3461 DSN messages
# ==========================================================
# MIME boundaries in RFC3461 DSN messages
- s/\d{8,10}-eximdsn-\d
{8,10}
/NNNNNNNNNN-eximdsn-MMMMMMMMMM/;
+ s/\d{8,10}-eximdsn-\d
+
/NNNNNNNNNN-eximdsn-MMMMMMMMMM/;
# ==========================================================
# Some munging is specific to the specific file types
# ==========================================================
# Some munging is specific to the specific file types
@@
-1319,6
+1322,12
@@
$munges =
'no_tpt_filter_epipe' =>
{ 'stderr' => '/^writing error 32: Broken pipe$/' },
'no_tpt_filter_epipe' =>
{ 'stderr' => '/^writing error 32: Broken pipe$/' },
+ 'optional_cert_hostnames' =>
+ { 'stderr' => '/in tls_verify_cert_hostnames\? no/' },
+
+ 'loopback' =>
+ { 'stdout' => 's/[[](127\.0\.0\.1|::1)]/[IP_LOOPBACK_ADDR]/' },
+
};
};
@@
-1336,7
+1345,7
@@
$munges =
# [4] TRUE if this is a log file whose deliveries must be sorted
# [5] an optional custom munge command
#
# [4] TRUE if this is a log file whose deliveries must be sorted
# [5] an optional custom munge command
#
-# Arguments: Optionally, name of a custom munge to run.
+# Arguments: Optionally, name of a
single
custom munge to run.
# Returns: 0 if the output compared equal
# 1 if re-run needed (files may have been updated)
# Returns: 0 if the output compared equal
# 1 if re-run needed (files may have been updated)
@@
-1663,19
+1672,42
@@
if (/^dump\s+(\S+)/)
my(@temp);
print ">> ./eximdir/exim_dumpdb $parm_cwd/spool $which\n" if $debug;
open(IN, "./eximdir/exim_dumpdb $parm_cwd/spool $which |");
my(@temp);
print ">> ./eximdir/exim_dumpdb $parm_cwd/spool $which\n" if $debug;
open(IN, "./eximdir/exim_dumpdb $parm_cwd/spool $which |");
- @temp = <IN>;
- close(IN);
- if ($which eq "callout")
+ open(OUT, ">>test-stdout");
+ print OUT "+++++++++++++++++++++++++++\n";
+
+ if ($which eq "retry")
{
{
+ $/ = "\n ";
+ @temp = <IN>;
+ $/ = "\n";
+
@temp = sort {
@temp = sort {
-
my($aa) = substr $a, 21
;
-
my($bb) = substr $b, 21
;
- return $aa cmp $bb;
+
my($aa) = split(' ', $a)
;
+
my($bb) = split(' ', $b)
;
+
return $aa cmp $bb;
} @temp;
} @temp;
+
+ foreach $item (@temp)
+ {
+ $item =~ s/^\s*(.*)\n(.*)\n?\s*$/$1\n$2/m;
+ print OUT " $item\n";
+ }
}
}
- open(OUT, ">>test-stdout");
- print OUT "+++++++++++++++++++++++++++\n";
- print OUT @temp;
+ else
+ {
+ @temp = <IN>;
+ if ($which eq "callout")
+ {
+ @temp = sort {
+ my($aa) = substr $a, 21;
+ my($bb) = substr $b, 21;
+ return $aa cmp $bb;
+ } @temp;
+ }
+ print OUT @temp;
+ }
+
+ close(IN);
close(OUT);
return 1;
}
close(OUT);
return 1;
}
@@
-3376,6
+3408,7
@@
foreach $test (@test_list)
$stdout_skip = 0;
$rmfiltertest = 0;
$is_ipv6test = 0;
$stdout_skip = 0;
$rmfiltertest = 0;
$is_ipv6test = 0;
+ $TEST_STATE->{munge} = "";
# Remove the associative arrays used to hold checked mail files and msglogs
# Remove the associative arrays used to hold checked mail files and msglogs