예제 #1
0
 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)
예제 #2
0
 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)