Commit | Line | Data |
---|---|---|
54c5ebb1 PH |
1 | > |
2 | > # These expansions can test variables in the configuration, but as there | |
3 | > # is no message being processed, there is no message-related data. But | |
4 | > # that of course gets tested in plenty of other places. | |
5 | > | |
6 | > # Some fixed variables | |
7 | > | |
8 | > exim_path: TESTSUITE/eximdir/exim | |
71224040 | 9 | > exim_version: x.yz |
98b8312f HSHR |
10 | > config_dir: TESTSUITE |
11 | > config_file: TESTSUITE/test-config | |
54c5ebb1 PH |
12 | > primary_hostname: myhost.test.ex |
13 | > primary_hostname: myhost.test.ex | |
14 | > qualify_domain: myhost.test.ex | |
15 | > bounce_return_size_limit: 102400 | |
16 | > spool_directory: TESTSUITE/spool | |
0cd5fd23 | 17 | > queue_name: |
54c5ebb1 PH |
18 | > Failed: unknown variable in "${unknown}" |
19 | > h_subject: (should be empty) | |
20 | > h_subject: (should be empty) | |
21 | > Failed: unknown expansion operator "header_subject" | |
22 | > | |
23 | > # $message_headers should be empty | |
24 | > message_headers: >< | |
25 | > | |
26 | > # Continuation | |
27 | > xy | |
28 | > xy | |
29 | > | |
30 | > # Overlong names and overbig numbers | |
31 | > | |
32 | > Failed: unknown variable name "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" | |
33 | > Failed: unknown variable in "${aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}" | |
34 | > + | |
35 | > + | |
36 | > | |
29f89cad PH |
37 | > # List operations |
38 | > | |
39 | > filter: "a:b:c" | |
40 | > filter: a:c | |
41 | > filter: a'c | |
42 | > filter: ''a' ''c | |
43 | > filter: "" | |
44 | > | |
45 | > map: "" | |
46 | > map: a:b:c | |
47 | > map: ::a::: ::b::: ::c:: | |
48 | > map: fail string | |
49 | > map: []:[b]:[c] | |
50 | > | |
51 | > reduce: "+" | |
52 | > reduce: +abc | |
53 | > reduce: 6 | |
54 | > reduce: 9 | |
55 | > | |
a64a3dfa JH |
56 | > listnamed: *.aa.bb : ^\Nxxx(.*) |
57 | > listnamed: *.aa.bb : ^\Nxxx(.*) | |
58 | > listnamed: V4NET.11.12.13 : iplsearch;TESTSUITE/aux-fixed/0002.iplsearch | |
59 | > listnamed: *.aa.bb : ^\Nxxx(.*) : ;; | |
60 | > listnamed: a : b;c : *.aa.bb : ^\Nxxx(.*) : ;; : 2001::630::212::8::204::::b664 | |
042eb971 | 61 | > Failed: "nolist" is not a named list |
a64a3dfa | 62 | > listnamed: *.aa.bb : ^\Nxxx(.*) |
042eb971 JH |
63 | > Failed: "hlist" is not a domain named list |
64 | > Failed: bad suffix on "list" operator | |
65 | > | |
a64a3dfa JH |
66 | > listcount: 3 |
67 | > listcount: 0 | |
68 | > listcount: 3 | |
69 | > listcount: 2 | |
042eb971 | 70 | > |
aa26e137 JH |
71 | > listextract: b |
72 | > listextract: XcX | |
73 | > listextract: | |
74 | > listextract: | |
75 | > listextract: fail | |
f90d49f7 | 76 | > Failed: "listextract" failed and "fail" requested |
aa26e137 | 77 | > |
ac4ef9bd JH |
78 | > sort: 1:2:3:4 |
79 | > sort: 4,3,2,1 | |
80 | > sort: a:aa:B:c | |
81 | > sort: 10 smtp.ex.com:100 r2.ex.com:666 r99.ex.com | |
82 | > sort: 10,smtp.ex.com:100,r2.ex.com:666,r99.ex.com | |
83 | > sort: "" | |
84 | > | |
ec95d1a6 PH |
85 | > # Tests with iscntrl() and illegal separators |
86 | > | |
87 | > map: 'a' | |
88 | '' | |
89 | 'b' | |
90 | 'c' | |
91 | > | |
92 | > Failed: error in expression evaluation: expecting number or opening parenthesis (after processing "0+") inside "reduce" item | |
93 | > reduce: 6 | |
94 | > reduce: 6 | |
95 | > reduce: 6 | |
96 | > | |
54c5ebb1 PH |
97 | > # Operators |
98 | > | |
e47376be JH |
99 | > Failed: Not enough arguments for 'acl' (min is 1) |
100 | > Failed: Not enough arguments for 'acl' (min is 1) | |
bef3ea7f | 101 | > Failed: error from acl "a_nosuch" |
525239c1 JH |
102 | > acl: (0) [] [] |
103 | > acl: (1) [person@dom.ain] [] | |
104 | > acl: (2) [firstarg] [secondarg] | |
105 | > acl: (1) [arg with spaces] [] | |
723c72e6 JH |
106 | > acl: |
107 | > acl: | |
bef3ea7f JH |
108 | > acl: (0) [] [] |
109 | > acl: (1) [person@dom.ain] [] | |
110 | > Failed: error from acl "a_defer" | |
111 | > acl: (2) [new arg1] [top_arg_1] | |
525239c1 | 112 | > acl: (1) [1] [] (1) [2] [] (1) [3] [] (1) [4] [] |
723c72e6 | 113 | > |
54c5ebb1 PH |
114 | > addrss: local-part@dom.ain |
115 | > addrss: local-part@dom.ain | |
116 | > domain: dom.ain | |
117 | > domain: dom.ain | |
29f89cad PH |
118 | > |
119 | > addresses: ''abc@xyz' ''pqr@xyz | |
120 | > addresses: local-part@dom.ain | |
121 | > addresses: local-part@dom.ain+xyz@abc | |
122 | > addresses: local-part@dom.ain:xyz@abc:p@q:r@s | |
123 | > addresses: | |
124 | > | |
54c5ebb1 PH |
125 | > escape: B7\267F2\362 |
126 | > eval: 2 | |
127 | > eval: 7 | |
128 | > eval: 9 | |
129 | > eval: 4 | |
130 | > eval: 6 | |
131 | > eval: 42 | |
132 | > Failed: error in expression evaluation: expecting number or opening parenthesis (after processing "") | |
133 | > eval: -2 | |
134 | > eval: 1 | |
135 | > eval: 1 | |
136 | > Failed: error in expression evaluation: expecting closing parenthesis (after processing "-2 - (-3") | |
af561417 | 137 | > Failed: error in expression evaluation: expecting operator (after processing "-2 - -3") |
54c5ebb1 PH |
138 | > eval: 1 |
139 | > eval: -5 | |
af561417 | 140 | > eval: 1 |
54c5ebb1 PH |
141 | > eval: 40962 |
142 | > eval: 63 | |
af561417 | 143 | > Failed: error in expression evaluation: expecting operator (after processing "0") |
54c5ebb1 PH |
144 | > eval10: 77 |
145 | > eval10: 8 | |
af561417 PH |
146 | > Failed: error in expression evaluation: expecting operator (after processing "0") |
147 | > eval: 4 | |
148 | > eval: 4 | |
149 | > eval: 4 | |
150 | > eval: 13 | |
151 | > eval: 9 | |
152 | > eval: 6 | |
153 | > eval: 3 | |
154 | > eval: 0 | |
155 | > eval: 24 | |
156 | > eval: 4608 | |
157 | > eval: 4608 | |
158 | > eval: -4608 | |
159 | > | |
54c5ebb1 PH |
160 | > expand: $primary_hostname myhost.test.ex |
161 | > hash: jmg monty fbWx | |
162 | > hash: abcX abX aX X | |
163 | > hex2b64:EjRWeA== | |
164 | > hex2b64:q83v | |
165 | > hex2b64:q83v | |
166 | > hex2b64:Gis8TV5v | |
167 | > Failed: "1a2b3c4d5e6" contains an odd number of characters | |
168 | > Failed: "1a2b3c4d5e6g" is not a hex string | |
169 | > hex2b64:MPPJPkZDbetYunCBao7BJA== | |
170 | > hex2b64:ztcfpyNSMb7Tg/rP3EHE3cwi7PE= | |
171 | > | |
172 | > The base62 operator is actually a base36 operator in the Darwin and Cygwin | |
173 | > environments. Write cunning tests that produce the same output in both cases, | |
174 | > while doing a reasonable check. | |
175 | > | |
176 | > base62: OK | |
177 | > base62d: OK | |
178 | > base62d: OK | |
179 | > Failed: argument for base62 operator is "12345x", which is not a decimal number | |
180 | > Failed: argument for base62d operator is "0003D7.", which is not a base 36/62 number | |
181 | > | |
182 | > hmac: dd97e3ba5d1a61b5006108f8c8252953 | |
183 | > hmac: 0210cf9d274b53f1550f657c378b29e8bfed1064 | |
184 | > md5: 77add1d5f41223d5582fca736a5cb335 | |
185 | > sha1: DA39A3EE5E6B4B0D3255BFEF95601890AFD80709 | |
186 | > sha1: A9993E364706816ABA3E25717850C26C9CD0D89D | |
187 | > mask: 192.168.10.192/28 | |
188 | > mask: 192.168.10.206/32 | |
189 | > Failed: mask value too big in "192.168.10.206/33" | |
190 | > mask: 0.0.0.0/0 | |
191 | > Failed: missing mask value in "192.168.10.206" | |
192 | > Failed: "a.b.c.d" is not an IP address | |
fc4a7f70 JH |
193 | > ipv6denorm: 0000:0000:0000:0000:0000:0000:0000:0001 |
194 | > ipv6denorm: fe00:0000:0000:0000:0000:0000:0000:0001 | |
195 | > ipv6denorm: 0000:0000:0000:0000:0000:ffff:c0a8:0001 | |
196 | > ipv6denorm: fe80:0000:0000:0000:0000:0000:c0a8:0001 | |
197 | > ipv6norm: ::1 | |
198 | > ipv6norm: 2a00:: | |
199 | > ipv6norm: 2a00::1 | |
200 | > ipv6norm: 2a00:eadf::1:0 | |
201 | > ipv6norm: 2a00:eadf:0:1:: | |
202 | > ipv6norm: 2a00:: | |
203 | > ipv6norm: 2a00:2:3:4:5:6:7:8 | |
54c5ebb1 PH |
204 | > nhash: 19 0/61 |
205 | > lc/uc: the quick BROWN FOX | |
206 | > length: The quick abc | |
207 | > lclpt: local-part | |
208 | > lclpt: local-part | |
209 | > quote: aZ09_.-Q "ab*cd" "abcd\"ef" | |
210 | > quote: "nl(\n)" | |
211 | > quote: "cr(\r)" | |
212 | > quote: "tab( )" | |
213 |