summaryrefslogtreecommitdiff
path: root/plugins/managesieve/tests/src/parser
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2012-08-31 15:06:33 +0200
committerAleksander Machniak <alec@alec.pl>2012-08-31 15:06:33 +0200
commit4bb0bffefe3d0772f10bfd4acc3e8ccb1193211d (patch)
treef679baf49aaefbf21fd097b85329758762a76af7 /plugins/managesieve/tests/src/parser
parentafa0b1df58d93059686f00017a111185e5ee2674 (diff)
Convert managesieve test scripts to PHPUnit, add them to the suite
Diffstat (limited to 'plugins/managesieve/tests/src/parser')
-rw-r--r--plugins/managesieve/tests/src/parser52
1 files changed, 52 insertions, 0 deletions
diff --git a/plugins/managesieve/tests/src/parser b/plugins/managesieve/tests/src/parser
new file mode 100644
index 000000000..9c4717be4
--- /dev/null
+++ b/plugins/managesieve/tests/src/parser
@@ -0,0 +1,52 @@
+require ["fileinto","reject","envelope"];
+# rule:[spam]
+if anyof (header :contains "X-DSPAM-Result" "Spam")
+{
+ fileinto "Spam";
+ stop;
+}
+# rule:[test1]
+if anyof (header :comparator "i;ascii-casemap" :contains ["From","To"] "test@domain.tld")
+{
+ discard;
+ stop;
+}
+# rule:[test2]
+if anyof (not header :comparator "i;octet" :contains ["Subject"] "[test]", header :contains "Subject" "[test2]")
+{
+ fileinto "test";
+ stop;
+}
+# rule:[comments]
+if anyof (true) /* comment
+ * "comment" #comment */ {
+ /* comment */ stop;
+# comment
+}
+# rule:[reject]
+if size :over 5000K {
+ reject "Message over 5MB size limit. Please contact me before sending this.";
+}
+# rule:[false]
+if false # size :over 5000K
+{
+ stop; /* rule disabled */
+}
+# rule:[true]
+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;
+}