def testEverythingThere(self): trans = 'TCP UNIX SSL UDP UNIXDatagram Multicast'.split() for tran in trans[:]: if not getattr(interfaces, "IReactor"+tran)(reactor, None): trans.remove(tran) if interfaces.IReactorArbitrary(reactor, None) is not None: trans.insert(0, "Generic") for tran in trans: for side in 'Server Client'.split(): if tran == "Multicast" and side == "Client": continue self.assert_(hasattr(internet, tran+side)) method = getattr(internet, tran+side).method prefix = {'Server': 'listen', 'Client': 'connect'}[side] self.assert_(hasattr(reactor, prefix+method) or (prefix == "connect" and method == "UDP")) o = getattr(internet, tran+side)() self.assertEqual(service.IService(o), o)
def test_everythingThere(self): """ L{twisted.application.internet} dynamically defines a set of L{service.Service} subclasses that in general have corresponding reactor.listenXXX or reactor.connectXXX calls. """ trans = 'TCP UNIX SSL UDP UNIXDatagram Multicast'.split() for tran in trans[:]: if not getattr(interfaces, "IReactor" + tran)(reactor, None): trans.remove(tran) if interfaces.IReactorArbitrary(reactor, None) is not None: trans.insert(0, "Generic") for tran in trans: for side in 'Server Client'.split(): if tran == "Multicast" and side == "Client": continue self.assertTrue(hasattr(internet, tran + side)) method = getattr(internet, tran + side).method prefix = {'Server': 'listen', 'Client': 'connect'}[side] self.assertTrue(hasattr(reactor, prefix + method) or (prefix == "connect" and method == "UDP")) o = getattr(internet, tran + side)() self.assertEquals(service.IService(o), o)