[exim-cvs] testsuite: interlock callout tests

Top Page
Delete this message
Reply to this message
Author: Exim Git Commits Mailing List
Date:  
To: exim-cvs
Subject: [exim-cvs] testsuite: interlock callout tests
Gitweb: https://git.exim.org/exim.git/commitdiff/e2ae28ed72ed4253536367f8aad58782c7d8be18
Commit:     e2ae28ed72ed4253536367f8aad58782c7d8be18
Parent:     bd231acd0f24e4c27c6d6885f48c24360700ec7f
Author:     Jeremy Harris <jgh146exb@???>
AuthorDate: Sun Jul 28 17:34:23 2019 +0100
Committer:  Jeremy Harris <jgh146exb@???>
CommitDate: Sun Jul 28 17:34:23 2019 +0100


    testsuite: interlock callout tests
---
 test/README                  |  8 +++++---
 test/log/0581                |  4 ++++
 test/scripts/0000-Basic/0581 | 15 +++++++++++++++
 3 files changed, 24 insertions(+), 3 deletions(-)


diff --git a/test/README b/test/README
index a6bcfd8..c255113 100644
--- a/test/README
+++ b/test/README
@@ -729,7 +729,8 @@ scripts.
exim_lock [options] <file name>

This command runs the exim_lock utility with the given options and file name.
-The file remains locked with the following command (normally exim) is obeyed.
+The file remains locked for following commands until a non-daemon "exim"
+completes.


exinext <data>
@@ -974,8 +975,9 @@ connections. Here are some example commands:

The following lines, up to a line of four asterisks, are the server's
controlling standard input (described below). These lines are read and
-remembered; during the following commands, until an "exim" command is reached,
-the server is run in parallel.
+remembered; during the following commands, until a non-deamon "exim" command
+is reached, the server is run in parallel. Then the server termination
+is waited for.


write <file name> [nxm[=start-of-line-text]]*
diff --git a/test/log/0581 b/test/log/0581
index 9543aa0..14f8d48 100644
--- a/test/log/0581
+++ b/test/log/0581
@@ -1,3 +1,7 @@
+1999-03-02 09:44:33 test2
+1999-03-02 09:44:33 test3
+1999-03-02 09:44:33 test4
+1999-03-02 09:44:33 test5

******** SERVER ********
1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port PORT_D
diff --git a/test/scripts/0000-Basic/0581 b/test/scripts/0000-Basic/0581
index 0fb3b4c..a2053a8 100644
--- a/test/scripts/0000-Basic/0581
+++ b/test/scripts/0000-Basic/0581
@@ -47,6 +47,8 @@ QUIT
sleep 1
killdaemon
#
+exim -z 'test2'
+****
#
# smtp send, deliver_drop_priv
server PORT_S
@@ -94,6 +96,8 @@ sleep 1
killdaemon
#
#
+exim -z 'test3'
+****
# multiple recipients
# 1st callout result is cached (above); should not activate LCC
# smtp send
@@ -155,6 +159,8 @@ QUIT
sleep 1
#
#
+exim -z 'test4'
+****
# 2nd callout result is cached (above); should not activate LCC
# smtp send
server PORT_S 2
@@ -185,6 +191,13 @@ QUIT
221 Bye
****
#
+# XXX this test intermittently fails, at this client...
+# the client gets a 451 rcpt-v fail for userd3
+# the stderr-server says it got a conn-refused for the verify callout, which should have
+# gone to the above "server" command, first of the 2 conns it is expecting
+# the stdout-server shows "server" handling the previous subtest (userd, userd2) fine, plus
+# a fresh "server" startup and listen. Which should have been this one... perhaps it was
+# not there in time? Add server-wait synch point for _previous_ server, using dummy "exim -z".
client 127.0.0.1 PORT_D
??? 220
EHLO test.ex
@@ -212,6 +225,8 @@ QUIT
sleep 1
#
#
+exim -z 'test5'
+****
# no cache hits; should do LCC
# smtp send
server PORT_S 2