summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAndrew Aitchison <exim@aitchison.me.uk>2023-02-12 11:28:49 +0000
committerJeremy Harris <jgh146exb@wizmail.org>2023-02-16 18:49:36 +0000
commit7b5fe03f9c6c2a322dc385ab78b60ccfe1fe33fe (patch)
tree951512297353d91e48381a747c2383b35dc6edb0 /test
parent73d6e13f9b0cc4f708210372c59893950b3f7097 (diff)
downloadexim4-7b5fe03f9c6c2a322dc385ab78b60ccfe1fe33fe.tar.gz
Utility: exim_msgdate
Diffstat (limited to 'test')
-rw-r--r--test/README8
-rw-r--r--test/confs/070011
-rw-r--r--test/confs/070112
-rw-r--r--test/confs/070212
-rw-r--r--test/confs/070312
-rwxr-xr-xtest/runtest14
-rw-r--r--test/scripts/0000-Basic/0700165
-rw-r--r--test/scripts/0000-Basic/070169
-rw-r--r--test/scripts/0000-Basic/070271
-rw-r--r--test/scripts/0000-Basic/070379
-rw-r--r--test/stderr/070067
-rw-r--r--test/stderr/070120
-rw-r--r--test/stderr/070222
-rw-r--r--test/stderr/070330
-rw-r--r--test/stdout/0700229
-rw-r--r--test/stdout/0701155
-rw-r--r--test/stdout/0702134
-rw-r--r--test/stdout/070374
18 files changed, 1183 insertions, 1 deletions
diff --git a/test/README b/test/README
index ab9fb6496..f934c0d2d 100644
--- a/test/README
+++ b/test/README
@@ -820,6 +820,14 @@ are still in existence at the end of the run (for messages that were not
delivered) are not compared with saved versions.
+ no_munge
+
+If this command is encountered anywhere in the script, the output is not
+munged before it is compared with a saved version.
+This option allows meaningful tests of the exim_msgdate utility;
+without it all date comparison checks would succeed.
+
+
no_stderr_check
If this command is encountered anywhere in the script, the stderr output from
diff --git a/test/confs/0700 b/test/confs/0700
new file mode 100644
index 000000000..932326cae
--- /dev/null
+++ b/test/confs/0700
@@ -0,0 +1,11 @@
+# Exim test configuration 0700
+
+.include DIR/aux-var/std_conf_prefix
+
+
+# ----- Main settings -----
+
+domainlist local_domains = HOSTNAME
+
+
+# End
diff --git a/test/confs/0701 b/test/confs/0701
new file mode 100644
index 000000000..faecce87e
--- /dev/null
+++ b/test/confs/0701
@@ -0,0 +1,12 @@
+# Exim test configuration 0700
+
+.include DIR/aux-var/std_conf_prefix
+
+
+# ----- Main settings -----
+
+domainlist local_domains = HOSTNAME
+
+localhost_number = 3
+
+# End
diff --git a/test/confs/0702 b/test/confs/0702
new file mode 100644
index 000000000..ab3668b1c
--- /dev/null
+++ b/test/confs/0702
@@ -0,0 +1,12 @@
+# Exim test configuration 0700
+
+.include DIR/aux-var/std_conf_prefix
+
+
+# ----- Main settings -----
+
+domainlist local_domains = HOSTNAME
+
+localhost_number = 13
+
+# End
diff --git a/test/confs/0703 b/test/confs/0703
new file mode 100644
index 000000000..15fcc3cdd
--- /dev/null
+++ b/test/confs/0703
@@ -0,0 +1,12 @@
+# Exim test configuration 0700
+
+.include DIR/aux-var/std_conf_prefix
+
+
+# ----- Main settings -----
+
+domainlist local_domains = HOSTNAME
+
+localhost_number = 20
+
+# End
diff --git a/test/runtest b/test/runtest
index 5e4b160b9..32dfe73ab 100755
--- a/test/runtest
+++ b/test/runtest
@@ -385,6 +385,15 @@ $spid = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
LINE: while(<IN>)
{
RESET_AFTER_EXTRA_LINE_READ:
+ if ($munge_skip)
+ {
+ # Munging is a no-op.
+ # Useful when testing exim_msgdate so that
+ # we compare unmunged dates and message-ids.
+ print MUNGED;
+ next;
+ }
+
# Custom munges
if ($extra)
{
@@ -3894,7 +3903,7 @@ if (defined $parm_lookups{dbm} && not cp("$parm_exim_dir/exim_dbmbuild", "eximdi
$dbm_build_deleted = 1;
}
-foreach my $tool (qw(exim_dumpdb exim_lock exinext exigrep eximstats exiqgrep)) {
+foreach my $tool (qw(exim_dumpdb exim_lock exinext exigrep eximstats exiqgrep exim_msgdate)) {
cp("$parm_exim_dir/$tool" => "eximdir/$tool")
or tests_exit(-1, "Failed to make a copy of $tool: $!");
}
@@ -4357,6 +4366,7 @@ foreach $test (@test_list)
$next_port = 1111;
$message_skip = 0;
$msglog_skip = 0;
+ $munge_skip = 0;
$stderr_skip = 0;
$stdout_skip = 0;
$rmfiltertest = 0;
@@ -4376,6 +4386,7 @@ foreach $test (@test_list)
{
if (/^no_message_check/) { $message_skip = 1; next; }
if (/^no_msglog_check/) { $msglog_skip = 1; next; }
+ if (/^no_munge/) { $munge_skip = 1; next; }
if (/^no_stderr_check/) { $stderr_skip = 1; next; }
if (/^no_stdout_check/) { $stdout_skip = 1; next; }
if (/^rmfiltertest/) { $rmfiltertest = 1; next; }
@@ -4410,6 +4421,7 @@ foreach $test (@test_list)
# set above, but doesn't hurt to leave them here.
if (/^no_message_check/) { $message_skip = 1; next; }
if (/^no_msglog_check/) { $msglog_skip = 1; next; }
+ if (/^no_munge/) { $munge_skip = 1; next; }
if (/^no_stderr_check/) { $stderr_skip = 1; next; }
if (/^no_stdout_check/) { $stdout_skip = 1; next; }
if (/^rmfiltertest/) { $rmfiltertest = 1; next; }
diff --git a/test/scripts/0000-Basic/0700 b/test/scripts/0000-Basic/0700
new file mode 100644
index 000000000..6bb10a9b7
--- /dev/null
+++ b/test/scripts/0000-Basic/0700
@@ -0,0 +1,165 @@
+# Exercising exim_msgdate
+#
+#
+# Without this, runtest would munge all dates and message-ids,
+# destroying the things we wish to test:
+no_munge
+#
+### A Message ID as it appears in an email:
+exim_msgdate E1pAnS3-003fPj-Tw
+****
+### A Message ID as it appears in the exim log:
+exim_msgdate 1pEPHo-005xgk-2e
+****
+### Just the date part of the Message ID:
+### The Epoch ...
+exim_msgdate 000000
+****
+### ... the script was under development at this time ...
+exim_msgdate 1pEPHo
+****
+### ... the end of exim msg-id time
+exim_msgdate zzzzzz
+****
+### All three time zones with a non-GMT time
+exim_msgdate -l -u -z 1o6fde-003z7E-PS
+****
+### All three types of message-ids, at once:
+exim_msgdate E000000-005XGK-00 1pAnS3-003fPj-Tw zzzzzz
+****
+### Message IDs generated on a system, such as Mac or Cygwin,
+### which has low-resolution Message-ID timestamps
+exim_msgdate --base36 000000-005XGK-00
+****
+exim_msgdate --base36 ZZZZZZ-005XGK-ZZ
+****
+255
+exim_msgdate --base36 zzzzzz-005xgk-zz
+****
+### An invalid base option
+255
+exim_msgdate --base 32 ZZZZZZ
+****
+### Message IDs generated on a standard system
+### with high-resolution Message-ID timestamps
+exim_msgdate --base62 000000-005XGK-00
+****
+exim_msgdate --base62 ZZZZZZ-005XGK-ZZ
+****
+exim_msgdate --base62 zzzzzz-005xgk-zz
+****
+### Some strings that are similar to, but not Exim Message IDs:
+exim_msgdate zzzzzz-005xgk-z@
+****
+exim_msgdate zzzzz-z005xgk-zz
+****
+exim_msgdate zzzzzzz
+****
+### Print date with localtime
+exim_msgdate -local 000000
+****
+exim_msgdate -local E1pAnS3-003fPj-Tw
+****
+exim_msgdate -local zzzzzz-003fPj-zz
+****
+### Print date with timezone GMT/Zulu
+exim_msgdate -GMT 000000-003fPj-00
+****
+exim_msgdate -GMT E1pAnS3-003fPj-Tw
+****
+exim_msgdate -zulu E1pAnS3-003fPj-Tw
+****
+exim_msgdate -zulu EZZZZZZ-003fPj-ZZ
+****
+### Print date as seconds since the UNIX epoch.
+exim_msgdate -unix E000000-003fPj-00
+****
+exim_msgdate -unix E1pAnS3-003fPj-tw
+****
+exim_msgdate -unix Ezzzzzz-003fpj-zz
+****
+### Show the process id too
+exim_msgdate -unix --pid EZZZZZZ-003fPj-ZZ
+****
+exim_msgdate -pid EZZZZZZ-003fPj-ZZ
+****
+exim_msgdate -local --pid EZZZZZZ-003fPj-ZZ
+****
+### Override the value of localhost_number set in the exim configuation file
+exim_msgdate -local --localhost_number 11 -base 62 EZZZZZZ-003FPJ-ZZ
+****
+exim_msgdate --localhost_number 11 -base 62 EZZZZZZ-003FPJ-ZZ
+****
+exim_msgdate --localhost_number 9 -base 36 EZZZZZZ-003FPJ-ZZ
+****
+255
+exim_msgdate --localhost_number 11 -base 36 EZZZZZZ-003FPJ-ZZ
+****
+exim_msgdate -localhost_number 11 --local -base 62 EZZZZZZ-003FPJ-ZZ
+****
+exim_msgdate --localhost_number -1 -base 36 EZZZZZZ-003FPJ-ZZ
+****
+255
+exim_msgdate --localhost_number 19 -base 62 EZZZZZZ-003FPJ-ZZ
+****
+### From here as 701 - 703
+### Each msg-id type, all zone
+exim_msgdate -l -u -z -pid E000000-005XGK-00
+****
+exim_msgdate -l -u -z -pid 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -pid 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -pid 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 3
+exim_msgdate -l -u -z -localhost_number=3 E000000-005XGK-00
+****
+exim_msgdate -l -u -z -localhost_number=3 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -localhost_number=3 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -localhost_number=3 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 13
+exim_msgdate -l -u -z -localhost_number=13 E000000-005XGK-00
+****
+exim_msgdate -l -u -z -localhost_number=13 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -localhost_number=13 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -localhost_number=13 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 20
+255
+exim_msgdate -l -u -z -localhost_number=20 E000000-005XGK-00
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000 1PANS3 zzzzzz
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, base=36
+exim_msgdate -l -u -z --b36 E000000-005XGK-00
+****
+255
+exim_msgdate -l -u -z --b36 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+255
+exim_msgdate -l -u -z --b36 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z --b36 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, base=62
+exim_msgdate -l -u -z --b62 E000000-005XGK-00
+****
+exim_msgdate -l -u -z --b62 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z --b62 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z --b62 000000 1PANS3 ZZZZZZ
+****
diff --git a/test/scripts/0000-Basic/0701 b/test/scripts/0000-Basic/0701
new file mode 100644
index 000000000..fd16de423
--- /dev/null
+++ b/test/scripts/0000-Basic/0701
@@ -0,0 +1,69 @@
+# Exercising exim_msgdate
+#
+# This file is intended for a config with
+# localhost_number = 3
+#
+# Without this, runtest would munge all dates and message-ids,
+# destroying the things we wish to test:
+no_munge
+#
+### Each msg-id type, all zone
+exim_msgdate -l -u -z -pid E000000-005XGK-00
+****
+exim_msgdate -l -u -z -pid 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -pid 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -pid 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 3
+exim_msgdate -l -u -z -localhost_number=3 E000000-005XGK-00
+****
+exim_msgdate -l -u -z -localhost_number=3 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -localhost_number=3 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -localhost_number=3 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 13
+exim_msgdate -l -u -z -localhost_number=13 E000000-005XGK-00
+****
+exim_msgdate -l -u -z -localhost_number=13 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -localhost_number=13 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -localhost_number=13 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 20
+255
+exim_msgdate -l -u -z -localhost_number=20 E000000-005XGK-00
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000 1PANS3 zzzzzz
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, base=36
+exim_msgdate -l -u -z --b36 E000000-005XGK-00
+****
+255
+exim_msgdate -l -u -z --b36 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+255
+exim_msgdate -l -u -z --b36 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z --b36 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, base=62
+exim_msgdate -l -u -z --b62 E000000-005XGK-00
+****
+exim_msgdate -l -u -z --b62 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z --b62 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z --b62 000000 1PANS3 ZZZZZZ
+****
diff --git a/test/scripts/0000-Basic/0702 b/test/scripts/0000-Basic/0702
new file mode 100644
index 000000000..bc78f9d47
--- /dev/null
+++ b/test/scripts/0000-Basic/0702
@@ -0,0 +1,71 @@
+# Exercising exim_msgdate
+#
+# This file is intended for a config with
+# localhost_number = 13
+#
+# Without this, runtest would munge all dates and message-ids,
+# destroying the things we wish to test:
+no_munge
+#
+### Each msg-id type, all zone
+exim_msgdate -l -u -z -pid E000000-005XGK-00
+****
+exim_msgdate -l -u -z -pid 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -pid 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -pid 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 3
+exim_msgdate -l -u -z -localhost_number=3 E000000-005XGK-00
+****
+exim_msgdate -l -u -z -localhost_number=3 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -localhost_number=3 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -localhost_number=3 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 13
+exim_msgdate -l -u -z -localhost_number=13 E000000-005XGK-00
+****
+exim_msgdate -l -u -z -localhost_number=13 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -localhost_number=13 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -localhost_number=13 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 20
+255
+exim_msgdate -l -u -z -localhost_number=20 E000000-005XGK-00
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000 1PANS3 zzzzzz
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, base=36
+255
+exim_msgdate -l -u -z --b36 E000000-005XGK-00
+****
+255
+exim_msgdate -l -u -z --b36 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+255
+exim_msgdate -l -u -z --b36 000000 1PANS3 zzzzzz
+****
+255
+exim_msgdate -l -u -z --b36 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, base=62
+exim_msgdate -l -u -z --b62 E000000-005XGK-00
+****
+exim_msgdate -l -u -z --b62 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z --b62 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z --b62 000000 1PANS3 ZZZZZZ
+****
diff --git a/test/scripts/0000-Basic/0703 b/test/scripts/0000-Basic/0703
new file mode 100644
index 000000000..b3ed864bc
--- /dev/null
+++ b/test/scripts/0000-Basic/0703
@@ -0,0 +1,79 @@
+# Exercising exim_msgdate
+#
+# This file is intended for a config with
+# localhost_number = 20
+#
+# Without this, runtest would munge all dates and message-ids,
+# destroying the things we wish to test:
+no_munge
+#
+### Each msg-id type, all zone
+255
+exim_msgdate -l -u -z -pid E000000-005XGK-00
+****
+255
+exim_msgdate -l -u -z -pid 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+255
+exim_msgdate -l -u -z -pid 000000 1PANS3 zzzzzz
+****
+255
+exim_msgdate -l -u -z -pid 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 3
+exim_msgdate -l -u -z -localhost_number=3 E000000-005XGK-00
+****
+exim_msgdate -l -u -z -localhost_number=3 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -localhost_number=3 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -localhost_number=3 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 13
+exim_msgdate -l -u -z -localhost_number=13 E000000-005XGK-00
+****
+exim_msgdate -l -u -z -localhost_number=13 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+exim_msgdate -l -u -z -localhost_number=13 000000 1PANS3 zzzzzz
+****
+exim_msgdate -l -u -z -localhost_number=13 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, localhost_number = 20
+255
+exim_msgdate -l -u -z -localhost_number=20 E000000-005XGK-00
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000 1PANS3 zzzzzz
+****
+255
+exim_msgdate -l -u -z -localhost_number=20 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, base=36
+255
+exim_msgdate -l -u -z --b36 E000000-005XGK-00
+****
+255
+exim_msgdate -l -u -z --b36 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+255
+exim_msgdate -l -u -z --b36 000000 1PANS3 zzzzzz
+****
+255
+exim_msgdate -l -u -z --b36 000000 1PANS3 ZZZZZZ
+****
+### All msg-id types, all zones, base=62
+255
+exim_msgdate -l -u -z --b62 E000000-005XGK-00
+****
+255
+exim_msgdate -l -u -z --b62 000000-005XGK-00 ZZZZZZ-005XGK-zz 1PANS3-003FPJ-TW
+****
+255
+exim_msgdate -l -u -z --b62 000000 1PANS3 zzzzzz
+****
+255
+exim_msgdate -l -u -z --b62 000000 1PANS3 ZZZZZZ
+****
diff --git a/test/stderr/0700 b/test/stderr/0700
new file mode 100644
index 000000000..4531d5e2c
--- /dev/null
+++ b/test/stderr/0700
@@ -0,0 +1,67 @@
+### A Message ID as it appears in an email:
+### A Message ID as it appears in the exim log:
+### Just the date part of the Message ID:
+### The Epoch ...
+### ... the script was under development at this time ...
+### ... the end of exim msg-id time
+### All three time zones with a non-GMT time
+### All three types of message-ids, at once:
+### Message IDs generated on a system, such as Mac or Cygwin,
+### which has low-resolution Message-ID timestamps
+zzzzzz is not base 36
+### An invalid base option
+unknown base option 32
+### Message IDs generated on a standard system
+### with high-resolution Message-ID timestamps
+### Some strings that are similar to, but not Exim Message IDs:
+zzzzzz-005xgk-z@ not parsed
+zzzzz-z005xgk-zz not parsed
+zzzzzzz not parsed
+### Print date with localtime
+### Print date with timezone GMT/Zulu
+### Print date as seconds since the UNIX epoch.
+### Show the process id too
+### Override the value of localhost_number set in the exim configuation file
+localhost_number > 10
+localhost_number > 16
+### From here as 701 - 703
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+### All msg-id types, all zones, base=36
+zz is not base 36
+zzzzzz is not base 36
+### All msg-id types, all zones, base=62
+
+******** SERVER ********
+### A Message ID as it appears in an email:
+### A Message ID as it appears in the exim log:
+### Just the date part of the Message ID:
+### The Epoch ...
+### ... the script was under development at this time ...
+### ... the end of exim msg-id time
+### All three time zones with a non-GMT time
+### All three types of message-ids, at once:
+### Message IDs generated on a system, such as Mac or Cygwin,
+### which has low-resolution Message-ID timestamps
+### An invalid base option
+### Message IDs generated on a standard system
+### with high-resolution Message-ID timestamps
+### Some strings that are similar to, but not Exim Message IDs:
+### Print date with localtime
+### Print date with timezone GMT/Zulu
+### Print date as seconds since the UNIX epoch.
+### Show the process id too
+### Override the value of localhost_number set in the exim configuation file
+### From here as 701 - 703
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+### All msg-id types, all zones, base=62
diff --git a/test/stderr/0701 b/test/stderr/0701
new file mode 100644
index 000000000..2c54c7033
--- /dev/null
+++ b/test/stderr/0701
@@ -0,0 +1,20 @@
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+### All msg-id types, all zones, base=36
+zz is not base 36
+zzzzzz is not base 36
+### All msg-id types, all zones, base=62
+
+******** SERVER ********
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+### All msg-id types, all zones, base=62
diff --git a/test/stderr/0702 b/test/stderr/0702
new file mode 100644
index 000000000..352412472
--- /dev/null
+++ b/test/stderr/0702
@@ -0,0 +1,22 @@
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+### All msg-id types, all zones, base=36
+localhost_number > 10
+localhost_number > 10
+localhost_number > 10
+localhost_number > 10
+### All msg-id types, all zones, base=62
+
+******** SERVER ********
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+### All msg-id types, all zones, base=62
diff --git a/test/stderr/0703 b/test/stderr/0703
new file mode 100644
index 000000000..696b3521b
--- /dev/null
+++ b/test/stderr/0703
@@ -0,0 +1,30 @@
+### Each msg-id type, all zone
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+### All msg-id types, all zones, base=36
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+### All msg-id types, all zones, base=62
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+localhost_number > 16
+
+******** SERVER ********
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+### All msg-id types, all zones, base=62
diff --git a/test/stdout/0700 b/test/stdout/0700
new file mode 100644
index 000000000..2e47baa35
--- /dev/null
+++ b/test/stdout/0700
@@ -0,0 +1,229 @@
+### A Message ID as it appears in an email:
+2022-12-29 07:35:43.928000 GMT
+### A Message ID as it appears in the exim log:
+2023-01-08 06:36:04.082000 GMT
+### Just the date part of the Message ID:
+### The Epoch ...
+1970-01-01 01:00:00.000000 BST
+### ... the script was under development at this time ...
+2023-01-08 06:36:04.000000 GMT
+### ... the end of exim msg-id time
+3769-12-05 03:13:03.000000 GMT
+### All three time zones with a non-GMT time
+1656539662.789000
+2022-06-29 21:54:22.789000
+2022-06-29 22:54:22.789000 BST
+### All three types of message-ids, at once:
+1970-01-01 01:00:00.000000 BST
+2022-12-29 07:35:43.928000 GMT
+3769-12-05 03:13:03.000000 GMT
+### Message IDs generated on a system, such as Mac or Cygwin,
+### which has low-resolution Message-ID timestamps
+1970-01-01 01:00:00.000000 BST
+2038-12-24 05:45:36.295000 GMT
+### An invalid base option
+### Message IDs generated on a standard system
+### with high-resolution Message-ID timestamps
+1970-01-01 01:00:00.000000 BST
+3002-09-30 13:51:46.102500 BST
+3769-12-05 03:13:04.921500 GMT
+### Some strings that are similar to, but not Exim Message IDs:
+### Print date with localtime
+1970-01-01 01:00:00.000000 BST
+2022-12-29 07:35:43.928000 GMT
+3769-12-05 03:13:04.921500 GMT
+### Print date with timezone GMT/Zulu
+1970-01-01 00:00:00.000000
+2022-12-29 07:35:43.928000
+2022-12-29 07:35:43.928000
+3002-09-30 12:51:46.102500
+### Print date as seconds since the UNIX epoch.
+0.000000
+1672299344.734000
+56800235584.921500
+### Show the process id too
+32590299106.102500 pid 874183
+3002-09-30 13:51:46.102500 BST pid 874183
+3002-09-30 13:51:46.102500 BST pid 874183
+### Override the value of localhost_number set in the exim configuation file
+3002-09-30 13:51:45.025000 BST
+3002-09-30 13:51:45.025000 BST
+2038-12-24 05:45:38.950000 GMT
+3002-09-30 13:51:45.025000 BST
+2038-12-24 05:45:48.950000 GMT
+### From here as 701 - 703
+### Each msg-id type, all zone
+0.000000 pid 1319504
+1970-01-01 00:00:00.000000 pid 1319504
+1970-01-01 01:00:00.000000 BST pid 1319504
+0.000000 pid 1319504
+1970-01-01 00:00:00.000000 pid 1319504
+1970-01-01 01:00:00.000000 BST pid 1319504
+32590299106.921500 pid 1319504
+3002-09-30 12:51:46.921500 pid 1319504
+3002-09-30 13:51:46.921500 BST pid 1319504
+1288014663.915000 pid 774213
+2010-10-25 13:51:03.915000 pid 774213
+2010-10-25 14:51:03.915000 BST pid 774213
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 3
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+32590299121.215000
+3002-09-30 12:52:01.215000
+3002-09-30 13:52:01.215000 BST
+1288014669.150000
+2010-10-25 13:51:09.150000
+2010-10-25 14:51:09.150000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 13
+-13.000000
+1969-12-31 23:59:47.000000
+1970-01-01 00:59:47.000000 BST
+-13.000000
+1969-12-31 23:59:47.000000
+1970-01-01 00:59:47.000000 BST
+32590299111.215000
+3002-09-30 12:51:51.215000
+3002-09-30 13:51:51.215000 BST
+1288014659.150000
+2010-10-25 13:50:59.150000
+2010-10-25 14:50:59.150000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+102953955.000000
+1973-04-06 14:19:15.000000
+1973-04-06 15:19:15.000000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+102953955.000000
+1973-04-06 14:19:15.000000
+1973-04-06 15:19:15.000000 BST
+2176782335.000000
+2038-12-24 05:45:35.000000
+2038-12-24 05:45:35.000000 GMT
+### All msg-id types, all zones, base=62
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+32590299106.921500
+3002-09-30 12:51:46.921500
+3002-09-30 13:51:46.921500 BST
+1288014663.915000
+2010-10-25 13:51:03.915000
+2010-10-25 14:51:03.915000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+
+******** SERVER ********
+### A Message ID as it appears in an email:
+### A Message ID as it appears in the exim log:
+### Just the date part of the Message ID:
+### The Epoch ...
+### ... the script was under development at this time ...
+### ... the end of exim msg-id time
+### All three time zones with a non-GMT time
+### All three types of message-ids, at once:
+### Message IDs generated on a system, such as Mac or Cygwin,
+### which has low-resolution Message-ID timestamps
+### An invalid base option
+### Message IDs generated on a standard system
+### with high-resolution Message-ID timestamps
+### Some strings that are similar to, but not Exim Message IDs:
+### Print date with localtime
+### Print date with timezone GMT/Zulu
+### Print date as seconds since the UNIX epoch.
+### Show the process id too
+### Override the value of localhost_number set in the exim configuation file
+### From here as 701 - 703
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+### All msg-id types, all zones, base=62
diff --git a/test/stdout/0701 b/test/stdout/0701
new file mode 100644
index 000000000..533cba4cc
--- /dev/null
+++ b/test/stdout/0701
@@ -0,0 +1,155 @@
+### Each msg-id type, all zone
+-3.000000 pid 1319504
+1969-12-31 23:59:57.000000 pid 1319504
+1970-01-01 00:59:57.000000 BST pid 1319504
+-3.000000 pid 1319504
+1969-12-31 23:59:57.000000 pid 1319504
+1970-01-01 00:59:57.000000 BST pid 1319504
+32590299121.215000 pid 1319504
+3002-09-30 12:52:01.215000 pid 1319504
+3002-09-30 13:52:01.215000 BST pid 1319504
+1288014669.150000 pid 774213
+2010-10-25 13:51:09.150000 pid 774213
+2010-10-25 14:51:09.150000 BST pid 774213
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 3
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+32590299121.215000
+3002-09-30 12:52:01.215000
+3002-09-30 13:52:01.215000 BST
+1288014669.150000
+2010-10-25 13:51:09.150000
+2010-10-25 14:51:09.150000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 13
+-13.000000
+1969-12-31 23:59:47.000000
+1970-01-01 00:59:47.000000 BST
+-13.000000
+1969-12-31 23:59:47.000000
+1970-01-01 00:59:47.000000 BST
+32590299111.215000
+3002-09-30 12:51:51.215000
+3002-09-30 13:51:51.215000 BST
+1288014659.150000
+2010-10-25 13:50:59.150000
+2010-10-25 14:50:59.150000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+102953955.000000
+1973-04-06 14:19:15.000000
+1973-04-06 15:19:15.000000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+102953955.000000
+1973-04-06 14:19:15.000000
+1973-04-06 15:19:15.000000 BST
+2176782335.000000
+2038-12-24 05:45:35.000000
+2038-12-24 05:45:35.000000 GMT
+### All msg-id types, all zones, base=62
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+32590299121.215000
+3002-09-30 12:52:01.215000
+3002-09-30 13:52:01.215000 BST
+1288014669.150000
+2010-10-25 13:51:09.150000
+2010-10-25 14:51:09.150000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+
+******** SERVER ********
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+### All msg-id types, all zones, base=62
diff --git a/test/stdout/0702 b/test/stdout/0702
new file mode 100644
index 000000000..c918ad633
--- /dev/null
+++ b/test/stdout/0702
@@ -0,0 +1,134 @@
+### Each msg-id type, all zone
+-13.000000 pid 1319504
+1969-12-31 23:59:47.000000 pid 1319504
+1970-01-01 00:59:47.000000 BST pid 1319504
+-13.000000 pid 1319504
+1969-12-31 23:59:47.000000 pid 1319504
+1970-01-01 00:59:47.000000 BST pid 1319504
+32590299111.215000 pid 1319504
+3002-09-30 12:51:51.215000 pid 1319504
+3002-09-30 13:51:51.215000 BST pid 1319504
+1288014659.150000 pid 774213
+2010-10-25 13:50:59.150000 pid 774213
+2010-10-25 14:50:59.150000 BST pid 774213
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 3
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+32590299121.215000
+3002-09-30 12:52:01.215000
+3002-09-30 13:52:01.215000 BST
+1288014669.150000
+2010-10-25 13:51:09.150000
+2010-10-25 14:51:09.150000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 13
+-13.000000
+1969-12-31 23:59:47.000000
+1970-01-01 00:59:47.000000 BST
+-13.000000
+1969-12-31 23:59:47.000000
+1970-01-01 00:59:47.000000 BST
+32590299111.215000
+3002-09-30 12:51:51.215000
+3002-09-30 13:51:51.215000 BST
+1288014659.150000
+2010-10-25 13:50:59.150000
+2010-10-25 14:50:59.150000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+### All msg-id types, all zones, base=62
+-13.000000
+1969-12-31 23:59:47.000000
+1970-01-01 00:59:47.000000 BST
+-13.000000
+1969-12-31 23:59:47.000000
+1970-01-01 00:59:47.000000 BST
+32590299111.215000
+3002-09-30 12:51:51.215000
+3002-09-30 13:51:51.215000 BST
+1288014659.150000
+2010-10-25 13:50:59.150000
+2010-10-25 14:50:59.150000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+
+******** SERVER ********
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+### All msg-id types, all zones, base=62
diff --git a/test/stdout/0703 b/test/stdout/0703
new file mode 100644
index 000000000..128415026
--- /dev/null
+++ b/test/stdout/0703
@@ -0,0 +1,74 @@
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+-3.000000
+1969-12-31 23:59:57.000000
+1970-01-01 00:59:57.000000 BST
+32590299121.215000
+3002-09-30 12:52:01.215000
+3002-09-30 13:52:01.215000 BST
+1288014669.150000
+2010-10-25 13:51:09.150000
+2010-10-25 14:51:09.150000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 13
+-13.000000
+1969-12-31 23:59:47.000000
+1970-01-01 00:59:47.000000 BST
+-13.000000
+1969-12-31 23:59:47.000000
+1970-01-01 00:59:47.000000 BST
+32590299111.215000
+3002-09-30 12:51:51.215000
+3002-09-30 13:51:51.215000 BST
+1288014659.150000
+2010-10-25 13:50:59.150000
+2010-10-25 14:50:59.150000 BST
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+56800235583.000000
+3769-12-05 03:13:03.000000
+3769-12-05 03:13:03.000000 GMT
+0.000000
+1970-01-01 00:00:00.000000
+1970-01-01 01:00:00.000000 BST
+1288014663.000000
+2010-10-25 13:51:03.000000
+2010-10-25 14:51:03.000000 BST
+32590299105.000000
+3002-09-30 12:51:45.000000
+3002-09-30 13:51:45.000000 BST
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+### All msg-id types, all zones, base=62
+
+******** SERVER ********
+### Each msg-id type, all zone
+### All msg-id types, all zones, localhost_number = 3
+### All msg-id types, all zones, localhost_number = 13
+### All msg-id types, all zones, localhost_number = 20
+### All msg-id types, all zones, base=36
+### All msg-id types, all zones, base=62