offlineimap rev 524

"Automatic Subversion Change Mailer" <[email protected]> Fri, 25 Jul 2003 23:21:00 -0500 (CDT)
Newsgroups gmane.mail.imap.offlineimap.subversion
Message-ID <[email protected]>
You are receiving this message because
all commits get sent to this address.

Author: jgoerzen
Date: 2003-07-25 23:20:57 -0500 (Fri, 25 Jul 2003)
New Revision: 524

Modified:
  offlineimap/branches/twisted/experiments/test.py

Log:
Initial tests work


Diff:
Added: offlineimap/branches/twisted/experiments/test.py
==============================================================================
--- offlineimap/branches/twisted/experiments/test.py	2003-07-26 04:20:35 UTC (rev 523)
+++ offlineimap/branches/twisted/experiments/test.py	2003-07-26 04:20:57 UTC (rev 524)
@@ -0,0 +1,47 @@
+#!/usr/bin/python2.2
+import getpass
+
+password = getpass.getpass('Password: ')
+
+from twisted.internet import reactor
+from twisted.protocols.imap4 import IMAP4Client
+from twisted.internet.protocol import ClientFactory
+from twisted.internet.ssl import ClientContextFactory
+
+class IMAPClientFactory(ClientFactory):
+    def startedConnection(self, connector):
+        print "Started to connect"
+
+    def buildProtocol(self, addr):
+        print "Connected."
+        return MyIMAP()
+
+    def clientConnectionLost(self, connector, reason):
+        print "Lost connection:", reason
+
+    def clientconnectionFailed(self, connector, reason):
+        print "Connection failed.  Reason:", reason
+
+class MyIMAP(IMAP4Client):
+    def connectionMade(self):
+        print "Connectionmade."
+        d = self.login('jgoerzen', password)
+        d.addCallback(IMAPInteractor(self).loggedin)
+
+class IMAPInteractor:
+    def __init__(self, imap):
+        self.imap = imap
+        
+    def loggedin(self, d):
+        print "Logged in", d
+        print type(d)
+        d = self.imap.select('INBOX')
+        d.addCallback(self.printresult)
+
+    def printresult(self, d):
+        print "Select result:", d
+        print type(d)
+
+context = ClientContextFactory()
+reactor.connectSSL('complete.org', 993, IMAPClientFactory(), context)
+reactor.run()