diff options
| -rw-r--r-- | changes/feature_add_tester_script | 1 | ||||
| -rw-r--r-- | src/leap/mx/tester.py | 46 | 
2 files changed, 47 insertions, 0 deletions
diff --git a/changes/feature_add_tester_script b/changes/feature_add_tester_script new file mode 100644 index 0000000..7042254 --- /dev/null +++ b/changes/feature_add_tester_script @@ -0,0 +1 @@ +  o Add tester script to ease testing problematic emails offline.
\ No newline at end of file diff --git a/src/leap/mx/tester.py b/src/leap/mx/tester.py new file mode 100644 index 0000000..05d2d05 --- /dev/null +++ b/src/leap/mx/tester.py @@ -0,0 +1,46 @@ +import ConfigParser +import sys +import os + +from twisted.internet import reactor, defer +from twisted.python import filepath, log + +from leap.mx import couchdbhelper +from leap.mx.mail_receiver import MailReceiver + +if __name__ == "__main__": +    log.startLogging(sys.stdout) +    fullpath = os.path.realpath(sys.argv[1]) + +    log.msg("Starting test for %s..." % (fullpath,)) + +    config_file = "/etc/leap/mx.conf" + +    config = ConfigParser.ConfigParser() +    config.read(config_file) + +    user = config.get("couchdb", "user") +    password = config.get("couchdb", "password") + +    server = config.get("couchdb", "server") +    port = config.get("couchdb", "port") + +    cdb = couchdbhelper.ConnectedCouchDB(server, +                                         port=port, +                                         dbName="identities", +                                         username=user, +                                         password=password) + +    # Mail receiver +    mail_couch_url_prefix = "http://%s:%s@%s:%s" % (user, +                                                    password, +                                                    server, +                                                    port) + +    mr = MailReceiver(mail_couch_url_prefix, cdb, []) +    fpath = filepath.FilePath(fullpath) + +    d = mr._process_incoming_email(None, fpath, 0) +    d.addCallback(lambda x: reactor.stop()) + +    reactor.run()  | 
