Track tainted data and refuse to expand it
[exim.git] / test / scripts / 0000-Basic / 0428
1 # Sieve tests with actual delivery
2 exim -odi userx
3 Test 1
4 ****
5 exim -odi userx
6 Filter: discard;
7 Test 2
8 ****
9 exim -odi userx
10 Filter: require "fileinto"; fileinto "userx-extra";
11 Test 3
12 ****
13 exim -odi userx
14 Filter: redirect "redirected@test.ex";
15 Test 4
16 ****
17 exim -odi restrict-userx
18 Filter: require "fileinto"; fileinto "userx-extra";
19 Test 5
20 ****
21 # Syntax error in Sieve filter (missing "require")
22 exim -odi restrict-userx
23 Filter: fileinto "userx-extra";
24 Test 6
25 ****
26 # Test stop inside a block
27 exim -odi userx
28 Filter: if true { stop; fileinto "inbox.never"; }
29 Test 7
30 ****
31 # This should fileinto inbox.JUNK (99 equal 99):
32 exim -odi userx8
33 X-Sieve: 99
34
35         require["fileinto","comparator-i;ascii-numeric"];
36         if header :comparator "i;ascii-numeric" "X-Sieve" "99" {
37           fileinto "inbox.JUNK";
38           stop;
39         }
40 Test 8
41 ****
42 # This should not fileinto inbox.JUNK (98 not equal 99):
43 exim -odi userx9
44 X-Sieve: 99
45
46         require["fileinto","comparator-i;ascii-numeric"];
47         if header :comparator "i;ascii-numeric" "X-Sieve" "98" {
48           fileinto "inbox.JUNK";
49           stop;
50         }
51 Test 9
52 ****
53 # This should fileinto inbox.JUNK (99-suffix equal 99):
54 exim -odi userx10
55 X-Sieve: 99-
56
57         require["fileinto","comparator-i;ascii-numeric"];
58         if header :comparator "i;ascii-numeric" "X-Sieve" "99" {
59           fileinto "inbox.JUNK";
60           stop;
61         }
62 Test 10
63 ****
64 # This should fileinto inbox.JUNK (non-numeric equal non-numeric):
65 exim -odi userx11
66 X-Sieve: -99
67
68         require["fileinto","comparator-i;ascii-numeric"];
69         if header :comparator "i;ascii-numeric" "X-Sieve" "-99" {
70           fileinto "inbox.JUNK";
71           stop;
72         }
73 Test 11
74 ****
75 # This should fileinto inbox.JUNK (non-numeric equal non-numeric):
76 exim -odi userx12
77 X-Sieve: -99
78
79         require["fileinto","comparator-i;ascii-numeric"];
80         if header :comparator "i;ascii-numeric" "X-Sieve" "-98" {
81           fileinto "inbox.JUNK";
82           stop;
83         }
84 Test 12
85 ****
86 # This is a simple test of "vacation"
87 exim -odi -f someone@test.ex userx13
88 To: userx13@test.ex
89
90         require ["vacation"]; 
91         vacation "I am gone.  Not here.";
92 Test 13
93 ****
94 # Test use of suffix
95 exim -odi -f someone@test.ex userx14-suffix userx14-suffix2
96
97         require ["envelope","fileinto"]; 
98         if envelope :matches :localpart "to" "*-suffix" {
99           fileinto "userx-sawsuffix";
100           stop; 
101         }   
102 Test 14
103 ****