Import ezmlm-idx 0.40
[ezmlm] / ezmlm-test.1
1 .TH ezmlm-test 1
2 .SH NAME
3 ezmlm-test \- test ezmlm programs
4 .SH SYNOPSIS
5 .B ezmlm-test
6 [
7 .B \-on
8 ][
9 .B \-h\fI host
10 ][
11 .B \-u\fI user
12 ][
13 .B \-l\fI sqluser
14 ][
15 .B \-t\fI sqltable
16 ][
17 .B \-d\fI sqldatabase
18 ][
19 .B \-p\fI sqlpassword
20 ][
21 .B \-s\fI section
22 ]
23 .I dir
24 .SH DESCRIPTION
25 .B ezmlm-test
26 is run from the ezmlm build directory. It will test most of the functions
27 of most of the programs in ezmlm-idx>=0.313. The program prints status
28 and error messages to stdout. It requires that qmail runs on the host and that
29 mail delivery to a local user functions. By default, it runs as the
30 user ``eztest'' who should have read and execute permission to the files
31 in the build directory.
32
33 For testing with an SQL database (requires ezmlm-idx>=0.32; see
34 .BR -p ),
35 you need to have first created the tables in the database, e.g. using
36 .BR ezmlm-mktab .
37 A number of switches allow overriding the default connection information.
38
39 .B ezmlm-test
40 creates the list ``eztest-__tstlist@host''
41 in the directory ``~/__TSTDIR''. This directory and ``~/.qmail-__tstlist*''
42 will be overwritten/removed by the program. In addition,
43 the file ``~/__TSTDIR_err'' is created. In cases of error, it often contains
44 the error message form the failing program.
45
46 .B ezmlm-test
47 should complete without error.
48 As many invocations of the programs test several functions it is not easy
49 to determine what went wrong if
50 .B ezmlm-test
51 fails. Usually, ``~/__TSTDIR__err'' gives some leads, but then debugging
52 of the particular program is required. Usually, this involves recreating
53 the failing circumstances, including environment variables.
54 .SH OPTIONS
55 .TP
56 .B \-d\fI sqldatabase
57 If SQL support is tested, use
58 .I sqldatabase
59 as the database, overriding the default ``ezmlm''. See
60 .BR \-p .
61 .TP
62 .B \-h\fI host
63 Connect to an SQL server on
64 .IR host ,
65 if an SQL database is used (see
66 .BR \-p ).
67 Default is empty, which for most database managers defaults to
68 localhost/unix socket. To specify a non-default port,
69 add ``:port'' to the host name.
70 .TP
71 .B \-l\fI sqluser
72 Connect as
73 .I sqluser
74 to the SQL server, if an SQL database is used (see
75 .BR \-p ).
76 By default, it is the same as the executing user as
77 specified by the
78 .B \-u
79 switch or the default ``eztest''.
80 .TP
81 .B \-n
82 Test assuming qmail>=1.02 and ezmlm-idx>=0.32. Normally, this is auto-detected.
83 This switch is for testing of
84 .B ezmlm-test
85 and unlikely to be generally useful.
86 .TP
87 .B \-o
88 Test assuming an old (<1.02) version of qmail which does not support
89 the DEFAULT environment variable. Normally, this is auto-detected, and
90 DEFAULT support is used if qmail>=1.02 and ezmlm-idx>=0.32. The ``old''
91 style works with all versions of qmail, but requires adjustments for
92 virtual domains. DEFAULT support makes these adjustments unnecessary.
93 .TP
94 .B \-p\fI sqlpassword
95 Test with SQL support, and use
96 .I sqlpassword
97 as the connection password. By default, local databases, rather than an
98 SQL database are used for testing. To use the SQL database with an
99 empty password, specify
100 .BR \-p\ '' .
101 .TP
102 .B \-s\fI section
103 Restart
104 .B ezmlm-test
105 from section
106 .IR section .
107 This can be used to resume execution if the 30 s given for mail delivery
108 was not sufficient for the test message to be delivered. ``9'' can be
109 used to clean up any files remaining after incomplete execution of
110 .BR ezmlm-test .
111 This option should not be needed.
112 .TP
113 .B \-t\fI sqltable
114 Use
115 .I sqltable
116 as the table root name for the SQL database tables, if an SQL database
117 is used (see
118 .BR \-p ).
119 Default is ``list''.
120 .TP
121 .B \-u\fI user
122 Execute
123 .B ezmlm-test
124 as
125 .IR user .
126 Default is ``eztest''. The program refuses to run, unless the effective
127 user name matches this user name.
128 .SH BUGS
129 On some systems, some of the tests give a broken pipe error. This is because
130 code needs to be added to the make_message function to capture error messages.
131 These errors can be safely ignored for now.
132 .SH "SEE ALSO"
133 ezmlm(5),
134 ezmlm-clean(1),
135 ezmlm-gate(1),
136 ezmlm-get(1),
137 ezmlm-idx(1),
138 ezmlm-issubn(1),
139 ezmlm-list(1),
140 ezmlm-make(1),
141 ezmlm-manage(1),
142 ezmlm-mktab(1),
143 ezmlm-moderate(1),
144 ezmlm-request(1),
145 ezmlm-return(1),
146 ezmlm-send(1),
147 ezmlm-split(1),
148 ezmlm-store(1),
149 ezmlm-sub(1),
150 ezmlm-tstdig(1),
151 ezmlm-unsub(1),
152 ezmlm-warn(1)
153