Import ezmlm-idx 0.40
[ezmlm] / ezmlm-test.1
diff --git a/ezmlm-test.1 b/ezmlm-test.1
new file mode 100644 (file)
index 0000000..65dee58
--- /dev/null
@@ -0,0 +1,153 @@
+.TH ezmlm-test 1
+.SH NAME
+ezmlm-test \- test ezmlm programs
+.SH SYNOPSIS
+.B ezmlm-test
+[
+.B \-on
+][
+.B \-h\fI host
+][
+.B \-u\fI user
+][
+.B \-l\fI sqluser
+][
+.B \-t\fI sqltable
+][
+.B \-d\fI sqldatabase
+][
+.B \-p\fI sqlpassword
+][
+.B \-s\fI section
+]
+.I dir
+.SH DESCRIPTION
+.B ezmlm-test
+is run from the ezmlm build directory. It will test most of the functions
+of most of the programs in ezmlm-idx>=0.313. The program prints status
+and error messages to stdout. It requires that qmail runs on the host and that
+mail delivery to a local user functions. By default, it runs as the
+user ``eztest'' who should have read and execute permission to the files
+in the build directory.
+
+For testing with an SQL database (requires ezmlm-idx>=0.32; see
+.BR -p ),
+you need to have first created the tables in the database, e.g. using
+.BR ezmlm-mktab .
+A number of switches allow overriding the default connection information.
+
+.B ezmlm-test
+creates the list ``eztest-__tstlist@host''
+in the directory ``~/__TSTDIR''. This directory and ``~/.qmail-__tstlist*''
+will be overwritten/removed by the program. In addition,
+the file ``~/__TSTDIR_err'' is created. In cases of error, it often contains
+the error message form the failing program.
+
+.B ezmlm-test
+should complete without error.
+As many invocations of the programs test several functions it is not easy
+to determine what went wrong if
+.B ezmlm-test
+fails. Usually, ``~/__TSTDIR__err'' gives some leads, but then debugging
+of the particular program is required. Usually, this involves recreating
+the failing circumstances, including environment variables.
+.SH OPTIONS
+.TP
+.B \-d\fI sqldatabase
+If SQL support is tested, use
+.I sqldatabase
+as the database, overriding the default ``ezmlm''. See
+.BR \-p .
+.TP
+.B \-h\fI host
+Connect to an SQL server on
+.IR host ,
+if an SQL database is used (see
+.BR \-p ).
+Default is empty, which for most database managers defaults to
+localhost/unix socket. To specify a non-default port,
+add ``:port'' to the host name.
+.TP
+.B \-l\fI sqluser
+Connect as
+.I sqluser
+to the SQL server, if an SQL database is used (see
+.BR \-p ).
+By default, it is the same as the executing user as
+specified by the
+.B \-u
+switch or the default ``eztest''.
+.TP
+.B \-n
+Test assuming qmail>=1.02 and ezmlm-idx>=0.32. Normally, this is auto-detected.
+This switch is for testing of
+.B ezmlm-test
+and unlikely to be generally useful.
+.TP
+.B \-o
+Test assuming an old (<1.02) version of qmail which does not support
+the DEFAULT environment variable. Normally, this is auto-detected, and
+DEFAULT support is used if qmail>=1.02 and ezmlm-idx>=0.32. The ``old''
+style works with all versions of qmail, but requires adjustments for
+virtual domains. DEFAULT support makes these adjustments unnecessary.
+.TP
+.B \-p\fI sqlpassword
+Test with SQL support, and use
+.I sqlpassword
+as the connection password. By default, local databases, rather than an
+SQL database are used for testing. To use the SQL database with an
+empty password, specify
+.BR \-p\ '' .
+.TP
+.B \-s\fI section
+Restart
+.B ezmlm-test
+from section
+.IR section .
+This can be used to resume execution if the 30 s given for mail delivery
+was not sufficient for the test message to be delivered. ``9'' can be
+used to clean up any files remaining after incomplete execution of
+.BR ezmlm-test .
+This option should not be needed.
+.TP
+.B \-t\fI sqltable
+Use
+.I sqltable
+as the table root name for the SQL database tables, if an SQL database
+is used (see
+.BR \-p ).
+Default is ``list''.
+.TP
+.B \-u\fI user
+Execute
+.B ezmlm-test
+as
+.IR user .
+Default is ``eztest''. The program refuses to run, unless the effective
+user name matches this user name.
+.SH BUGS
+On some systems, some of the tests give a broken pipe error. This is because
+code needs to be added to the make_message function to capture error messages.
+These errors can be safely ignored for now. 
+.SH "SEE ALSO"
+ezmlm(5),
+ezmlm-clean(1),
+ezmlm-gate(1),
+ezmlm-get(1),
+ezmlm-idx(1),
+ezmlm-issubn(1),
+ezmlm-list(1),
+ezmlm-make(1),
+ezmlm-manage(1),
+ezmlm-mktab(1),
+ezmlm-moderate(1),
+ezmlm-request(1),
+ezmlm-return(1),
+ezmlm-send(1),
+ezmlm-split(1),
+ezmlm-store(1),
+ezmlm-sub(1),
+ezmlm-tstdig(1),
+ezmlm-unsub(1),
+ezmlm-warn(1)
+