summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorJeremy Harris <jgh146exb@wizmail.org>2018-11-06 15:18:05 +0000
committerJeremy Harris <jgh146exb@wizmail.org>2018-11-06 15:18:05 +0000
commitba97ac87b13f2f7380621ca998174b25cc7b2532 (patch)
tree764d132364fa35895dfabe5c03c88e346908d791 /test
parent068f180d1c1bc1349c5a786ea7af214b2b24dcc6 (diff)
Testsuite: rework testcases for DSN RCPT options
Diffstat (limited to 'test')
-rw-r--r--test/confs/06185
-rw-r--r--test/log/061861
-rw-r--r--test/scripts/0000-Basic/061842
-rw-r--r--test/stdout/06184
4 files changed, 83 insertions, 29 deletions
diff --git a/test/confs/0618 b/test/confs/0618
index 2a2d8a97d..db4bd3002 100644
--- a/test/confs/0618
+++ b/test/confs/0618
@@ -44,6 +44,11 @@ rcpt:
begin routers
+r_dump:
+ driver = redirect
+ domains = dump.ex
+ data = :blackhole:
+
r1:
driver = accept
condition = ${if eq {127.0.0.1}{$sender_host_address}}
diff --git a/test/log/0618 b/test/log/0618
index 970771171..25ef4e76c 100644
--- a/test/log/0618
+++ b/test/log/0618
@@ -1,3 +1,4 @@
+1999-03-02 09:44:33 rej/never
1999-03-02 09:44:33 Start queue run: pid=pppp
1999-03-02 09:44:33 10HmaX-0005vi-00 event tcp:connect
1999-03-02 09:44:33 10HmaX-0005vi-00 event smtp:connect
@@ -7,6 +8,9 @@
1999-03-02 09:44:33 10HmaX-0005vi-00 rmt_reject@test.ex: error ignored
1999-03-02 09:44:33 10HmaX-0005vi-00 Completed
1999-03-02 09:44:33 10HmaX-0005vi-00 event msg:complete
+1999-03-02 09:44:33 End queue run: pid=pppp
+1999-03-02 09:44:33 accept/success
+1999-03-02 09:44:33 Start queue run: pid=pppp
1999-03-02 09:44:33 10HmaY-0005vi-00 event tcp:connect
1999-03-02 09:44:33 10HmaY-0005vi-00 event smtp:connect
1999-03-02 09:44:33 10HmaY-0005vi-00 event tcp:close
@@ -14,12 +18,21 @@
1999-03-02 09:44:33 10HmaY-0005vi-00 event msg:delivery
1999-03-02 09:44:33 10HmaY-0005vi-00 Completed
1999-03-02 09:44:33 10HmaY-0005vi-00 event msg:complete
-1999-03-02 09:44:33 10HmbA-0005vi-00 event tcp:connect
-1999-03-02 09:44:33 10HmbA-0005vi-00 event smtp:connect
-1999-03-02 09:44:33 10HmbA-0005vi-00 event msg:rcpt:host:defer
-1999-03-02 09:44:33 10HmbA-0005vi-00 event msg:rcpt:defer
-1999-03-02 09:44:33 10HmbA-0005vi-00 event tcp:close
-1999-03-02 09:44:33 10HmbA-0005vi-00 == rmt_defer@test.ex R=r2 T=smtp defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<rmt_defer@test.ex>: 451 Temporary local problem - please try later
+1999-03-02 09:44:33 End queue run: pid=pppp
+1999-03-02 09:44:33 Start queue run: pid=pppp
+1999-03-02 09:44:33 10HmaZ-0005vi-00 => rmt_accept <rmt_accept@test.ex> R=r1 T=tofile
+1999-03-02 09:44:33 10HmaZ-0005vi-00 event msg:delivery
+1999-03-02 09:44:33 10HmbA-0005vi-00 <= <> R=10HmaZ-0005vi-00 U=EXIMUSER P=local S=sss for b@dump.ex
+1999-03-02 09:44:33 10HmaZ-0005vi-00 Completed
+1999-03-02 09:44:33 10HmaZ-0005vi-00 event msg:complete
+1999-03-02 09:44:33 End queue run: pid=pppp
+1999-03-02 09:44:33 Start queue run: pid=pppp
+1999-03-02 09:44:33 10HmbA-0005vi-00 => :blackhole: <b@dump.ex> R=r_dump
+1999-03-02 09:44:33 10HmbA-0005vi-00 Completed
+1999-03-02 09:44:33 10HmbA-0005vi-00 event msg:complete
+1999-03-02 09:44:33 End queue run: pid=pppp
+1999-03-02 09:44:33 defer/delay
+1999-03-02 09:44:33 Start queue run: pid=pppp
1999-03-02 09:44:33 10HmbB-0005vi-00 event tcp:connect
1999-03-02 09:44:33 10HmbB-0005vi-00 event smtp:connect
1999-03-02 09:44:33 10HmbB-0005vi-00 event msg:rcpt:host:defer
@@ -27,37 +40,43 @@
1999-03-02 09:44:33 10HmbB-0005vi-00 event tcp:close
1999-03-02 09:44:33 10HmbB-0005vi-00 == rmt_defer@test.ex R=r2 T=smtp defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<rmt_defer@test.ex>: 451 Temporary local problem - please try later
1999-03-02 09:44:33 End queue run: pid=pppp
+1999-03-02 09:44:33 defer/never
+1999-03-02 09:44:33 Start queue run: pid=pppp
+1999-03-02 09:44:33 10HmbB-0005vi-00 == rmt_defer@test.ex routing defer (-51): retry time not reached
+1999-03-02 09:44:33 10HmbC-0005vi-00 event tcp:connect
+1999-03-02 09:44:33 10HmbC-0005vi-00 event smtp:connect
+1999-03-02 09:44:33 10HmbC-0005vi-00 event msg:rcpt:host:defer
+1999-03-02 09:44:33 10HmbC-0005vi-00 event msg:rcpt:defer
+1999-03-02 09:44:33 10HmbC-0005vi-00 event tcp:close
+1999-03-02 09:44:33 10HmbC-0005vi-00 == rmt_defer@test.ex R=r2 T=smtp defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<rmt_defer@test.ex>: 451 Temporary local problem - please try later
+1999-03-02 09:44:33 End queue run: pid=pppp
+1999-03-02 09:44:33 playout
1999-03-02 09:44:33 Start queue run: pid=pppp
-1999-03-02 09:44:33 10HmbA-0005vi-00 event tcp:connect
-1999-03-02 09:44:33 10HmbA-0005vi-00 event smtp:connect
-1999-03-02 09:44:33 10HmbA-0005vi-00 event msg:rcpt:host:defer
-1999-03-02 09:44:33 10HmbA-0005vi-00 event msg:rcpt:defer
-1999-03-02 09:44:33 10HmbA-0005vi-00 event tcp:close
-1999-03-02 09:44:33 10HmbA-0005vi-00 == rmt_defer@test.ex R=r2 T=smtp defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<rmt_defer@test.ex>: 451 Temporary local problem - please try later
-1999-03-02 09:44:33 10HmbC-0005vi-00 <= <> R=10HmbA-0005vi-00 U=EXIMUSER P=local S=sss for c@dump.ex
1999-03-02 09:44:33 10HmbB-0005vi-00 event tcp:connect
1999-03-02 09:44:33 10HmbB-0005vi-00 event smtp:connect
1999-03-02 09:44:33 10HmbB-0005vi-00 event msg:rcpt:host:defer
1999-03-02 09:44:33 10HmbB-0005vi-00 event msg:rcpt:defer
1999-03-02 09:44:33 10HmbB-0005vi-00 event tcp:close
1999-03-02 09:44:33 10HmbB-0005vi-00 == rmt_defer@test.ex R=r2 T=smtp defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<rmt_defer@test.ex>: 451 Temporary local problem - please try later
-1999-03-02 09:44:33 10HmaZ-0005vi-00 => rmt_accept <rmt_accept@test.ex> R=r1 T=tofile
-1999-03-02 09:44:33 10HmaZ-0005vi-00 event msg:delivery
-1999-03-02 09:44:33 10HmbD-0005vi-00 <= <> R=10HmaZ-0005vi-00 U=EXIMUSER P=local S=sss for b@dump.ex
-1999-03-02 09:44:33 10HmaZ-0005vi-00 Completed
-1999-03-02 09:44:33 10HmaZ-0005vi-00 event msg:complete
+1999-03-02 09:44:33 10HmbD-0005vi-00 <= <> R=10HmbB-0005vi-00 U=EXIMUSER P=local S=sss for c@dump.ex
+1999-03-02 09:44:33 10HmbC-0005vi-00 event tcp:connect
+1999-03-02 09:44:33 10HmbC-0005vi-00 event smtp:connect
+1999-03-02 09:44:33 10HmbC-0005vi-00 event msg:rcpt:host:defer
+1999-03-02 09:44:33 10HmbC-0005vi-00 event msg:rcpt:defer
+1999-03-02 09:44:33 10HmbC-0005vi-00 event tcp:close
+1999-03-02 09:44:33 10HmbC-0005vi-00 == rmt_defer@test.ex R=r2 T=smtp defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<rmt_defer@test.ex>: 451 Temporary local problem - please try later
1999-03-02 09:44:33 End queue run: pid=pppp
******** SERVER ********
1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port 1225
1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port 1225
1999-03-02 09:44:33 10HmaX-0005vi-00 <= a@dump.ex H=(testclient) [ip4.ip4.ip4.ip4] P=esmtp S=sss for rmt_reject@test.ex
-1999-03-02 09:44:33 10HmaY-0005vi-00 <= b@dump.ex H=(testclient) [ip4.ip4.ip4.ip4] P=esmtp S=sss for rmt_accept@test.ex
-1999-03-02 09:44:33 10HmbA-0005vi-00 <= c@dump.ex H=(testclient) [ip4.ip4.ip4.ip4] P=esmtp S=sss for rmt_defer@test.ex
-1999-03-02 09:44:33 10HmbB-0005vi-00 <= d@dump.ex H=(testclient) [ip4.ip4.ip4.ip4] P=esmtp S=sss for rmt_defer@test.ex
1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<a@dump.ex> rejected RCPT <rmt_reject@test.ex>
+1999-03-02 09:44:33 10HmaY-0005vi-00 <= b@dump.ex H=(testclient) [ip4.ip4.ip4.ip4] P=esmtp S=sss for rmt_accept@test.ex
1999-03-02 09:44:33 10HmaZ-0005vi-00 <= b@dump.ex H=localhost (myhost.test.ex) [127.0.0.1] P=esmtp S=sss for rmt_accept@test.ex
+1999-03-02 09:44:33 10HmbB-0005vi-00 <= c@dump.ex H=(testclient) [ip4.ip4.ip4.ip4] P=esmtp S=sss for rmt_defer@test.ex
1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<c@dump.ex> temporarily rejected RCPT <rmt_defer@test.ex>
+1999-03-02 09:44:33 10HmbC-0005vi-00 <= d@dump.ex H=(testclient) [ip4.ip4.ip4.ip4] P=esmtp S=sss for rmt_defer@test.ex
1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<d@dump.ex> temporarily rejected RCPT <rmt_defer@test.ex>
1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<c@dump.ex> temporarily rejected RCPT <rmt_defer@test.ex>
1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<d@dump.ex> temporarily rejected RCPT <rmt_defer@test.ex>
diff --git a/test/scripts/0000-Basic/0618 b/test/scripts/0000-Basic/0618
index c09322844..f841177a0 100644
--- a/test/scripts/0000-Basic/0618
+++ b/test/scripts/0000-Basic/0618
@@ -16,6 +16,8 @@ killdaemon
# Server does advertise when told. Client requests no bounces, and this one gets a reject.
exim -DSERVER=server -DOPT=y -bd -oX PORT_D
****
+exim -z rej/never
+****
client HOSTIPV4 PORT_D
??? 220
EHLO testclient
@@ -37,7 +39,12 @@ Subject: test
QUIT
??? 221
****
-# Client requests delivery notification; the server supports DSN to takes responsibility
+exim -q
+****
+#
+# Client requests delivery notification; the server supports DSN so takes responsibility
+exim -z accept/success
+****
client HOSTIPV4 PORT_D
??? 220
EHLO testclient
@@ -57,9 +64,22 @@ Subject: test
QUIT
??? 221
****
-# Client requests notification of deferral. First time of trying, the
-# queue-time probably has not hit the 1st retry time yet, so no DSN will
-# be sent and the message remains queued.
+# MSA send msg to MDA
+exim -q
+****
+# deliver msg at MDA
+exim -q
+****
+# deliver notification from MDA
+exim -q
+****
+#
+# Client requests notification of deferral. First time of trying, we get
+# a defer but queue-time probably has not hit the 1st retry time yet, so no DSN
+# will be sent and the message remains queued. Later, after a sleep, we will
+# try again.
+exim -z defer/delay
+****
client HOSTIPV4 PORT_D
??? 220
EHLO testclient
@@ -79,7 +99,12 @@ Subject: test
QUIT
??? 221
****
+exim -q
+****
+#
# Clients requests no DSNs, and this one gets deferred
+exim -z defer/never
+****
client HOSTIPV4 PORT_D
??? 220
EHLO testclient
@@ -99,11 +124,16 @@ Subject: test
QUIT
??? 221
****
-# This attemmpt the set of all the above, for the first time.
exim -q
****
sleep 3
-# Second time, for the queued deferrals. Final delivery for the acceptance.
+#
+#
+#
+# Second time, for the queued deferrals.
+# We should see the notify for c@dump.ex but not d@dump.ex
+exim -z playout
+****
exim -q
****
killdaemon
diff --git a/test/stdout/0618 b/test/stdout/0618
index a04553a0b..0fbac17d9 100644
--- a/test/stdout/0618
+++ b/test/stdout/0618
@@ -94,7 +94,7 @@ Connecting to ip4.ip4.ip4.ip4 port 1225 ... connected
>>> Subject: test
>>> .
??? 250
-<<< 250 OK id=10HmbA-0005vi-00
+<<< 250 OK id=10HmbB-0005vi-00
>>> QUIT
??? 221
<<< 221 myhost.test.ex closing connection
@@ -123,7 +123,7 @@ Connecting to ip4.ip4.ip4.ip4 port 1225 ... connected
>>> Subject: test
>>> .
??? 250
-<<< 250 OK id=10HmbB-0005vi-00
+<<< 250 OK id=10HmbC-0005vi-00
>>> QUIT
??? 221
<<< 221 myhost.test.ex closing connection