Add ${list:name} and ${nlist:string} expansion operators.
[exim.git] / test / stdout / 0002
CommitLineData
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
9> primary_hostname: myhost.test.ex
10> primary_hostname: myhost.test.ex
11> qualify_domain: myhost.test.ex
12> bounce_return_size_limit: 102400
13> spool_directory: TESTSUITE/spool
14> Failed: unknown variable in "${unknown}"
15> h_subject: (should be empty)
16> h_subject: (should be empty)
17> Failed: unknown expansion operator "header_subject"
18>
19> # $message_headers should be empty
20> message_headers: ><
21>
22> # Continuation
23> xy
24> xy
25>
26> # Overlong names and overbig numbers
27>
28> Failed: unknown variable name "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
29> Failed: unknown variable in "${aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}"
30> +
31> +
32>
29f89cad
PH
33> # List operations
34>
35> filter: "a:b:c"
36> filter: a:c
37> filter: a'c
38> filter: ''a' ''c
39> filter: ""
40>
41> map: ""
42> map: a:b:c
43> map: ::a::: ::b::: ::c::
44> map: fail string
45> map: []:[b]:[c]
46>
47> reduce: "+"
48> reduce: +abc
49> reduce: 6
50> reduce: 9
51>
042eb971
JH
52> list: *.aa.bb : ^\Nxxx(.*)
53> list: *.aa.bb : ^\Nxxx(.*)
54> list: V4NET.11.12.13 : iplsearch;TESTSUITE/aux-fixed/0002.iplsearch
55> list: *.aa.bb : ^\Nxxx(.*) : ;;
56> list: a : b;c : *.aa.bb : ^\Nxxx(.*) : ;; : 2001::630::212::8::204::::b664
57> Failed: "nolist" is not a named list
58> list: *.aa.bb : ^\Nxxx(.*)
59> Failed: "hlist" is not a domain named list
60> Failed: bad suffix on "list" operator
61>
62> nlist: 3
63> nlist: 0
64> nlist: 3
65> nlist: 2
66>
ec95d1a6
PH
67> # Tests with iscntrl() and illegal separators
68>
69> map: 'a'
70''
71'b'
72'c'
73>
74> Failed: error in expression evaluation: expecting number or opening parenthesis (after processing "0+") inside "reduce" item
75> reduce: 6
76> reduce: 6
77> reduce: 6
78>
54c5ebb1
PH
79> # Operators
80>
81> addrss: local-part@dom.ain
82> addrss: local-part@dom.ain
83> domain: dom.ain
84> domain: dom.ain
29f89cad
PH
85>
86> addresses: ''abc@xyz' ''pqr@xyz
87> addresses: local-part@dom.ain
88> addresses: local-part@dom.ain+xyz@abc
89> addresses: local-part@dom.ain:xyz@abc:p@q:r@s
90> addresses:
91>
54c5ebb1
PH
92> escape: B7\267F2\362
93> eval: 2
94> eval: 7
95> eval: 9
96> eval: 4
97> eval: 6
98> eval: 42
99> Failed: error in expression evaluation: expecting number or opening parenthesis (after processing "")
100> eval: -2
101> eval: 1
102> eval: 1
103> Failed: error in expression evaluation: expecting closing parenthesis (after processing "-2 - (-3")
af561417 104> Failed: error in expression evaluation: expecting operator (after processing "-2 - -3")
54c5ebb1
PH
105> eval: 1
106> eval: -5
af561417 107> eval: 1
54c5ebb1
PH
108> eval: 40962
109> eval: 63
af561417 110> Failed: error in expression evaluation: expecting operator (after processing "0")
54c5ebb1
PH
111> eval10: 77
112> eval10: 8
af561417
PH
113> Failed: error in expression evaluation: expecting operator (after processing "0")
114> eval: 4
115> eval: 4
116> eval: 4
117> eval: 13
118> eval: 9
119> eval: 6
120> eval: 3
121> eval: 0
122> eval: 24
123> eval: 4608
124> eval: 4608
125> eval: -4608
126>
54c5ebb1
PH
127> expand: $primary_hostname myhost.test.ex
128> hash: jmg monty fbWx
129> hash: abcX abX aX X
130> hex2b64:EjRWeA==
131> hex2b64:q83v
132> hex2b64:q83v
133> hex2b64:Gis8TV5v
134> Failed: "1a2b3c4d5e6" contains an odd number of characters
135> Failed: "1a2b3c4d5e6g" is not a hex string
136> hex2b64:MPPJPkZDbetYunCBao7BJA==
137> hex2b64:ztcfpyNSMb7Tg/rP3EHE3cwi7PE=
138>
139> The base62 operator is actually a base36 operator in the Darwin and Cygwin
140> environments. Write cunning tests that produce the same output in both cases,
141> while doing a reasonable check.
142>
143> base62: OK
144> base62d: OK
145> base62d: OK
146> Failed: argument for base62 operator is "12345x", which is not a decimal number
147> Failed: argument for base62d operator is "0003D7.", which is not a base 36/62 number
148>
149> hmac: dd97e3ba5d1a61b5006108f8c8252953
150> hmac: 0210cf9d274b53f1550f657c378b29e8bfed1064
151> md5: 77add1d5f41223d5582fca736a5cb335
152> sha1: DA39A3EE5E6B4B0D3255BFEF95601890AFD80709
153> sha1: A9993E364706816ABA3E25717850C26C9CD0D89D
154> mask: 192.168.10.192/28
155> mask: 192.168.10.206/32
156> Failed: mask value too big in "192.168.10.206/33"
157> mask: 0.0.0.0/0
158> Failed: missing mask value in "192.168.10.206"
159> Failed: "a.b.c.d" is not an IP address
160> nhash: 19 0/61
161> lc/uc: the quick BROWN FOX
162> length: The quick abc
163> lclpt: local-part
164> lclpt: local-part
165> quote: aZ09_.-Q "ab*cd" "abcd\"ef"
166> quote: "nl(\n)"
167> quote: "cr(\r)"
168> quote: "tab( )"
169