# Sieve tests with actual delivery exim -odi userx Test 1 **** exim -odi userx Filter: discard; Test 2 **** exim -odi userx Filter: require "fileinto"; fileinto "userx-extra"; Test 3 **** exim -odi userx Filter: redirect "redirected@test.ex"; Test 4 **** exim -odi restrict-userx Filter: require "fileinto"; fileinto "userx-extra"; Test 5 **** # Syntax error in Sieve filter (missing "require") exim -odi restrict-userx Filter: fileinto "userx-extra"; Test 6 **** # Test stop inside a block exim -odi userx Filter: if true { stop; fileinto "inbox.never"; } Test 7 **** # This should fileinto inbox.JUNK (99 equal 99): exim -odi userx X-Sieve: 99 Filter: require["fileinto","comparator-i;ascii-numeric"]; if header :comparator "i;ascii-numeric" "X-Sieve" "99" { fileinto "inbox.JUNK"; stop; } Test 8 **** # This should not fileinto inbox.JUNK (98 not equal 99): exim -odi userx X-Sieve: 99 Filter: require["fileinto","comparator-i;ascii-numeric"]; if header :comparator "i;ascii-numeric" "X-Sieve" "98" { fileinto "inbox.JUNK"; stop; } Test 9 **** # This should fileinto inbox.JUNK (99-suffix equal 99): exim -odi userx X-Sieve: 99- Filter: require["fileinto","comparator-i;ascii-numeric"]; if header :comparator "i;ascii-numeric" "X-Sieve" "99" { fileinto "inbox.JUNK"; stop; } Test 10 **** # This should fileinto inbox.JUNK (non-numeric equal non-numeric): exim -odi userx X-Sieve: -99 Filter: require["fileinto","comparator-i;ascii-numeric"]; if header :comparator "i;ascii-numeric" "X-Sieve" "-99" { fileinto "inbox.JUNK"; stop; } Test 11 **** # This should fileinto inbox.JUNK (non-numeric equal non-numeric): exim -odi userx X-Sieve: -99 Filter: require["fileinto","comparator-i;ascii-numeric"]; if header :comparator "i;ascii-numeric" "X-Sieve" "-98" { fileinto "inbox.JUNK"; stop; } Test 12 **** # This is a simple test of "vacation" exim -odi -f someone@test.ex userx To: userx@test.ex Filter: require ["vacation"]; vacation "I am gone. Not here."; Test 13 **** # Test use of suffix exim -odi -f someone@test.ex userx-suffix userx-suffix2 To: userx-suffix@test.ex Filter: require ["envelope","fileinto"]; if envelope :matches :localpart "to" "*-suffix" { fileinto "userx-sawsuffix"; stop; } Test 14 ****