def testLoopback(self): protocol = MyVirtualPOP3() protocol.service = self.factory clientProtocol = MyPOP3Downloader() loopback.loopback(protocol, clientProtocol) self.failUnlessEqual(clientProtocol.message, self.message) protocol.connectionLost(failure.Failure(Exception("Test harness disconnect")))
def testMessages(self): factory = protocols.protocol.Factory() factory.domains = {} factory.domains['foo.bar'] = DummyDomain(['moshez']) protocol = protocols.smtp.DomainSMTP() protocol.factory = factory clientProtocol = MySMTPClient() loopback.loopback(protocol, clientProtocol)
def testProtocol(self): from twisted.protocols import loopback server = flow.Protocol() server.controller = echoServer client = flow.makeProtocol(echoClient)() client.factory = protocol.ClientFactory() client.factory.d = defer.Deferred() loopback.loopback(server, client) self.assertEquals('testing', unittest.deferredResult(client.factory.d))
def testEmptyPASS(self): dummy = DummyPOP3() client = LineSendingProtocol([ "PASS ", "QUIT" ]) expected_output = '+OK <moshez>\r\n-ERR USER required before PASS\r\n+OK \r\n' loopback.loopback(dummy, client) self.failUnlessEqual(expected_output, '\r\n'.join(client.response) + '\r\n') dummy.connectionLost(failure.Failure(Exception("Test harness disconnect")))
def testFileTransfer(self): auth = 1234 sender = msn.FileSend(self.input) sender.auth = auth sender.fileSize = 7000 client = msn.FileReceive(auth, "*****@*****.**", self.output) client.fileSize = 7000 loopback.loopback(sender, client) self.failUnless((client.completed and sender.completed), msg="send failed to complete") self.failUnless((self.input.getvalue() == self.output.getvalue()), msg="saved file does not match original")
def testYear(self): fileList = ftp.FTPFileListProtocol() class PrintLine(protocol.Protocol): def connectionMade(self): self.transport.write('-rw-r--r-- 1 root other 531 Jan 29 2003 README\n') self.transport.loseConnection() loopback.loopback(PrintLine(), fileList) file = fileList.files[0] self.failUnless(file['size'] == 531, 'misparsed fileitem') self.failUnless(file['date'] == 'Jan 29 2003', 'misparsed fileitem') self.failUnless(file['filename'] == 'README', 'misparsed fileitem')
def testFileTransfer(self): auth = 1234 sender = msn.FileSend(self.input) sender.auth = auth sender.fileSize = 7000 client = msn.FileReceive(auth, "*****@*****.**", self.output) client.fileSize = 7000 loopback.loopback(sender, client) self.failUnless((client.completed and sender.completed), msg="send failed to complete") self.failUnless((self.input.getvalue() == self.output.getvalue()), msg="saved file does not match original")
def testAuthListing(self): p = DummyPOP3() p.factory = internet.protocol.Factory() p.factory.challengers = {'Auth1': None, 'secondAuth': None, 'authLast': None} client = LineSendingProtocol([ "AUTH", "QUIT", ]) loopback.loopback(p, client) self.failUnless(client.response[1].startswith('+OK')) self.assertEquals(client.response[2:6], ["AUTH1", "SECONDAUTH", "AUTHLAST", "."])
def testYear(self): # This example derived from bug description in issue 514. fileList = ftp.FTPFileListProtocol() class PrintLine(protocol.Protocol): def connectionMade(self): self.transport.write("-rw-r--r-- 1 root other 531 Jan 29 2003 README\n") self.transport.loseConnection() loopback.loopback(PrintLine(), fileList) file = fileList.files[0] self.failUnless(file["size"] == 531, "misparsed fileitem") self.failUnless(file["date"] == "Jan 29 2003", "misparsed fileitem") self.failUnless(file["filename"] == "README", "misparsed fileitem")
def testError(self): try: monkey / 0 except Exception: self.sendReporter._runHook = lambda : ( self.sendReporter.reportResults("aTestClass", "aMethod", reporter.ERROR, sys.exc_info())) loopback.loopback(self.sendReporter, self.decoder) self.failUnlessEqual(len(self.reporter.errors), 1) self.failUnlessEqual(self.reporter.errors[0][:2], ("aTestClass", "aMethod")) f = self.reporter.errors[0][-1] self.failUnlessEqual(f.type, reflect.qual(NameError))
def testLoopback(self): server = http.HTTPChannel() server.requestFactory = DummyHTTPHandler client = LoopbackHTTPClient() client.handleResponse = self._handleResponse client.handleHeader = self._handleHeader client.handleEndHeaders = self._handleEndHeaders client.handleStatus = self._handleStatus loopback.loopback(server, client) if not (self.gotStatus and self.gotResponse and self.gotEndHeaders): raise RuntimeError, "didn't got all callbacks %s" % [self.gotStatus, self.gotResponse, self.gotEndHeaders] del self.gotEndHeaders del self.gotResponse del self.gotStatus del self.numHeaders
def testYear(self): # This example derived from bug description in issue 514. fileList = ftp.FTPFileListProtocol() class PrintLine(protocol.Protocol): def connectionMade(self): self.transport.write( '-rw-r--r-- 1 root other 531 Jan 29 2003 README\n' ) self.transport.loseConnection() loopback.loopback(PrintLine(), fileList) file = fileList.files[0] self.failUnless(file['size'] == 531, 'misparsed fileitem') self.failUnless(file['date'] == 'Jan 29 2003', 'misparsed fileitem') self.failUnless(file['filename'] == 'README', 'misparsed fileitem')
def testOneLine(self): # This example line taken from the docstring for FTPFileListProtocol fileList = ftp.FTPFileListProtocol() class PrintLine(Protocol): def connectionMade(self): self.transport.write('-rw-r--r-- 1 root other 531 Jan 29 03:26 README\n') self.transport.loseConnection() loopback.loopback(PrintLine(), fileList) file = fileList.files[0] self.failUnless(file['filetype'] == '-', 'misparsed fileitem') self.failUnless(file['perms'] == 'rw-r--r--', 'misparsed perms') self.failUnless(file['owner'] == 'root', 'misparsed fileitem') self.failUnless(file['group'] == 'other', 'misparsed fileitem') self.failUnless(file['size'] == 531, 'misparsed fileitem') self.failUnless(file['date'] == 'Jan 29 03:26', 'misparsed fileitem') self.failUnless(file['filename'] == 'README', 'misparsed fileitem')
def runTest(self, lines, expected): dummy = DummyPOP3() client = LineSendingProtocol([ "APOP moshez dummy", "LIST", "UIDL", "RETR 1", "RETR 2", "DELE 1", "RETR 1", "QUIT", ]) expected_output = '+OK <moshez>\r\n+OK Authentication succeeded\r\n+OK 1\r\n1 44\r\n.\r\n+OK \r\n1 0\r\n.\r\n+OK 44\r\nFrom: moshe\r\nTo: moshe\r\n\r\nHow are you, friend?\r\n.\r\n-ERR Bad message number argument\r\n+OK \r\n-ERR message deleted\r\n+OK \r\n' loopback.loopback(dummy, client) self.failUnlessEqual(expected_output, '\r\n'.join(client.response) + '\r\n') dummy.connectionLost(failure.Failure(Exception("Test harness disconnect")))
def testAuthListing(self): p = DummyPOP3() p.factory = internet.protocol.Factory() p.factory.challengers = { 'Auth1': None, 'secondAuth': None, 'authLast': None } client = LineSendingProtocol([ "AUTH", "QUIT", ]) loopback.loopback(p, client) self.failUnless(client.response[1].startswith('+OK')) self.assertEquals(client.response[2:6], ["AUTH1", "SECONDAUTH", "AUTHLAST", "."])
def testLoopback(self): server = http.HTTPChannel() server.requestFactory = DummyHTTPHandler client = LoopbackHTTPClient() client.handleResponse = self._handleResponse client.handleHeader = self._handleHeader client.handleEndHeaders = self._handleEndHeaders client.handleStatus = self._handleStatus loopback.loopback(server, client) if not (self.gotStatus and self.gotResponse and self.gotEndHeaders): raise RuntimeError, "didn't got all callbacks %s" % [ self.gotStatus, self.gotResponse, self.gotEndHeaders ] del self.gotEndHeaders del self.gotResponse del self.gotStatus del self.numHeaders
def runTest(self, lines, expected): dummy = DummyPOP3() client = LineSendingProtocol([ "APOP moshez dummy", "LIST", "UIDL", "RETR 1", "RETR 2", "DELE 1", "RETR 1", "QUIT", ]) expected_output = '+OK <moshez>\r\n+OK Authentication succeeded\r\n+OK 1\r\n1 44\r\n.\r\n+OK \r\n1 0\r\n.\r\n+OK 44\r\nFrom: moshe\r\nTo: moshe\r\n\r\nHow are you, friend?\r\n.\r\n-ERR Bad message number argument\r\n+OK \r\n-ERR message deleted\r\n+OK \r\n' loopback.loopback(dummy, client) self.failUnlessEqual(expected_output, '\r\n'.join(client.response) + '\r\n') dummy.connectionLost( failure.Failure(Exception("Test harness disconnect")))
def getFilesForLines(self, lines): fileList = MyFTPFileListProtocol() loopback.loopback(PrintLines(lines), fileList) return fileList.files, fileList.other
def getFilesForLines(self, lines): fileList = MyFTPFileListProtocol() loopback.loopback(PrintLines(lines), fileList) return fileList.files, fileList.other
def testLoopback(self): loopback.loopback(self.server, self.client)
def testLoopback(self): loopback.loopback(self.server, self.client)
def testLoopback(self): protocol = MyVirtualPOP3() protocol.service = self.factory clientProtocol = MyPOP3Downloader() loopback.loopback(protocol, clientProtocol) self.failUnlessEqual(clientProtocol.message, self.message)
def testStart(self): self.sendReporter._runHook = lambda : self.sendReporter.start(1) loopback.loopback(self.sendReporter, self.decoder) self.failUnlessEqual(self.reporter.expectedTests, 1)