2 commits - pykolab/cli tests/unit

Jeroen van Meeuwen vanmeeuwen at kolabsys.com
Wed Nov 28 19:13:07 CET 2012


 pykolab/cli/cmd_create_mailbox.py |   17 +++++++++++------
 tests/unit/test-008-sievelib.py   |   29 +++++++++++++++++++++++++++++
 2 files changed, 40 insertions(+), 6 deletions(-)

New commits:
commit 927aacb8ac646738a640259ccdc7b401e20200c8
Author: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen at kolabsys.com>
Date:   Wed Nov 28 18:12:58 2012 +0000

    Use our set_metadata() call on IMAP.

diff --git a/pykolab/cli/cmd_create_mailbox.py b/pykolab/cli/cmd_create_mailbox.py
index 4ecc788..5510e56 100644
--- a/pykolab/cli/cmd_create_mailbox.py
+++ b/pykolab/cli/cmd_create_mailbox.py
@@ -34,11 +34,13 @@ def __init__():
 
 def cli_options():
     my_option_group = conf.add_cli_parser_option_group(_("CLI Options"))
-    my_option_group.add_option( '--metadata',
-                                dest    = "metadata",
-                                action  = "store",
-                                default = None,
-                                help    = _("Set metadata for folder to ANNOTATION=VALUE"))
+    my_option_group.add_option(
+            '--metadata',
+            dest    = "metadata",
+            action  = "store",
+            default = None,
+            help    = _("Set metadata for folder to ANNOTATION=VALUE")
+        )
 
 def description():
     return """Create a mailbox or sub-folder of an existing mailbox."""
@@ -60,8 +62,11 @@ def execute(*args, **kw):
 
     imap = IMAP()
     imap.connect()
+
+    admin_login = conf.get('cyrus-imap', 'admin_login')
+
     imap.cm(mailbox)
 
     if not conf.metadata == None:
-        imap.setannotation(mailbox, conf.metadata.split('=')[0], conf.metadata.split('=')[1])
+        imap.set_metadata(mailbox, conf.metadata.split('=')[0], conf.metadata.split('=')[1])
 


commit 181e395643027a5601e2beb94f1a3c4e9f8b4f33
Author: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen at kolabsys.com>
Date:   Tue Nov 27 13:53:54 2012 +0000

    Provide a little framework for testing sieve scripts parsing through sievelib

diff --git a/tests/unit/test-008-sievelib.py b/tests/unit/test-008-sievelib.py
new file mode 100644
index 0000000..a6328dc
--- /dev/null
+++ b/tests/unit/test-008-sievelib.py
@@ -0,0 +1,29 @@
+import sys
+import unittest
+
+sieve_scripts = [
+        """
+require [ "vacation" ];
+
+if anyof (true) {
+    vacation :days 1 :subject "Out of Office" "I'm out of the office";
+}
+""",
+
+    ]
+
+class TestSievelib(unittest.TestCase):
+
+    def test_001_import_sievelib(self):
+        from sievelib.parser import Parser
+
+    def test_002_parse_vacation(self):
+        from sievelib.parser import Parser
+        sieve_parser = Parser(debug=True)
+
+        i = 0
+        for sieve_str in sieve_scripts:
+            i += 1
+            result = sieve_parser.parse(sieve_str)
+            if not result:
+                raise Exception, "Failed parsing Sieve script #%d: %s" % (i, sieve_parser.error)





More information about the commits mailing list