summaryrefslogtreecommitdiff
path: root/plugins/managesieve/tests/parser.phpt
diff options
context:
space:
mode:
authoralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2011-11-17 13:18:48 +0000
committeralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2011-11-17 13:18:48 +0000
commit445c436db6d8f52c771042e3e16f7a5ff101f882 (patch)
tree884f44483e2eab7967eb3a1df8793a79ac28dd44 /plugins/managesieve/tests/parser.phpt
parente019ceea8f10f9be13be0da0cceb4df8f992d6b6 (diff)
- Added 'address' and 'envelope' tests support
- Added 'body' extension support (RFC5173) - Added 'subaddress' extension support (RFC5233) - Added comparators support - Changed Sender/Recipient labels to From/To - Fixed importing rule names from Ingo - Fixed handling of extensions disabled in config git-svn-id: https://svn.roundcube.net/trunk@5441 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'plugins/managesieve/tests/parser.phpt')
-rw-r--r--plugins/managesieve/tests/parser.phpt35
1 files changed, 30 insertions, 5 deletions
diff --git a/plugins/managesieve/tests/parser.phpt b/plugins/managesieve/tests/parser.phpt
index 32866335a..aec042187 100644
--- a/plugins/managesieve/tests/parser.phpt
+++ b/plugins/managesieve/tests/parser.phpt
@@ -6,7 +6,7 @@ Main test of script parser
include '../lib/rcube_sieve_script.php';
$txt = '
-require ["fileinto","reject"];
+require ["fileinto","reject","envelope"];
# rule:[spam]
if anyof (header :contains "X-DSPAM-Result" "Spam")
{
@@ -14,13 +14,13 @@ if anyof (header :contains "X-DSPAM-Result" "Spam")
stop;
}
# rule:[test1]
-if anyof (header :contains ["From","To"] "test@domain.tld")
+if anyof (header :comparator "i;ascii-casemap" :contains ["From","To"] "test@domain.tld")
{
discard;
stop;
}
# rule:[test2]
-if anyof (not header :contains ["Subject"] "[test]", header :contains "Subject" "[test2]")
+if anyof (not header :comparator "i;octet" :contains ["Subject"] "[test]", header :contains "Subject" "[test2]")
{
fileinto "test";
stop;
@@ -46,14 +46,27 @@ if true
stop;
}
fileinto "Test";
+# rule:[address test]
+if address :all :is "From" "nagios@domain.tld"
+{
+ fileinto "domain.tld";
+ stop;
+}
+# rule:[envelope test]
+if envelope :domain :is "From" "domain.tld"
+{
+ fileinto "domain.tld";
+ stop;
+}
';
$s = new rcube_sieve_script($txt);
echo $s->as_text();
+// -------------------------------------------------------------------------------
?>
--EXPECT--
-require ["fileinto","reject"];
+require ["fileinto","reject","envelope"];
# rule:[spam]
if header :contains "X-DSPAM-Result" "Spam"
{
@@ -67,7 +80,7 @@ if header :contains ["From","To"] "test@domain.tld"
stop;
}
# rule:[test2]
-if anyof (not header :contains "Subject" "[test]", header :contains "Subject" "[test2]")
+if anyof (not header :comparator "i;octet" :contains "Subject" "[test]", header :contains "Subject" "[test2]")
{
fileinto "test";
stop;
@@ -93,3 +106,15 @@ if true
stop;
}
fileinto "Test";
+# rule:[address test]
+if address :all :is "From" "nagios@domain.tld"
+{
+ fileinto "domain.tld";
+ stop;
+}
+# rule:[envelope test]
+if envelope :domain :is "From" "domain.tld"
+{
+ fileinto "domain.tld";
+ stop;
+}