class BasicControllerServiceTest(DeferredTestCase, IControllerCoreTestCase): def setUp(self): self.controller = ControllerService() self.controller.startService() def tearDown(self): self.controller.stopService()
class BasicMultiEngineTestCase(DeferredTestCase, IMultiEngineTestCase): def setUp(self): self.controller = ControllerService() self.controller.startService() self.multiengine = me.IMultiEngine(self.controller) self.engines = [] def tearDown(self): self.controller.stopService() for e in self.engines: e.stopService()
class SynchronousMultiEngineTestCase(DeferredTestCase, ISynchronousMultiEngineTestCase): def setUp(self): self.controller = ControllerService() self.controller.startService() self.multiengine = me.ISynchronousMultiEngine(me.IMultiEngine(self.controller)) self.engines = [] def tearDown(self): self.controller.stopService() for e in self.engines: e.stopService()
def setUp(self): self.engines = [] self.controller = ControllerService() self.controller.startService() self.imultiengine = IMultiEngine(self.controller) self.mec_referenceable = IFCSynchronousMultiEngine(self.imultiengine) self.controller_tub = Tub() self.controller_tub.listenOn('tcp:10105:interface=127.0.0.1') self.controller_tub.setLocation('127.0.0.1:10105') furl = self.controller_tub.registerReference(self.mec_referenceable) self.controller_tub.startService() self.client_tub = ClientConnector() d = self.client_tub.get_multiengine_client(furl) d.addCallback(self.handle_got_client) return d
def setUp(self): self.engines = [] self.controller = ControllerService() self.controller.startService() self.imultiengine = IMultiEngine(self.controller) self.mec_referenceable = IFCSynchronousMultiEngine(self.imultiengine) self.controller_tub = Tub() self.controller_tub.listenOn('tcp:10111:interface=127.0.0.1') self.controller_tub.setLocation('127.0.0.1:10111') furl = self.controller_tub.registerReference(self.mec_referenceable) self.controller_tub.startService() self.client_tub = AsyncClientConnector() d = self.client_tub.get_multiengine_client(furl_or_file=furl) d.addCallback(self.handle_got_client) return d
def setUp(self): self.controller = ControllerService() self.controller.startService() self.multiengine = me.ISynchronousMultiEngine(me.IMultiEngine(self.controller)) self.engines = []
def setUp(self): self.controller = ControllerService() self.controller.startService()
class FullSynchronousMultiEngineTestCase(DeferredTestCase, IFullSynchronousMultiEngineTestCase): def setUp(self): self.engines = [] self.controller = ControllerService() self.controller.startService() self.imultiengine = IMultiEngine(self.controller) self.mec_referenceable = IFCSynchronousMultiEngine(self.imultiengine) self.controller_tub = Tub() self.controller_tub.listenOn('tcp:10105:interface=127.0.0.1') self.controller_tub.setLocation('127.0.0.1:10105') furl = self.controller_tub.registerReference(self.mec_referenceable) self.controller_tub.startService() self.client_tub = ClientConnector() d = self.client_tub.get_multiengine_client(furl) d.addCallback(self.handle_got_client) return d def handle_got_client(self, client): self.multiengine = client def tearDown(self): dlist = [] # Shut down the multiengine client d = self.client_tub.tub.stopService() dlist.append(d) # Shut down the engines for e in self.engines: e.stopService() # Shut down the controller d = self.controller_tub.stopService() d.addBoth(lambda _: self.controller.stopService()) dlist.append(d) return defer.DeferredList(dlist) def test_mapper(self): self.addEngine(4) m = self.multiengine.mapper() self.assertEquals(m.multiengine, self.multiengine) self.assertEquals(m.dist, 'b') self.assertEquals(m.targets, 'all') self.assertEquals(m.block, True) def test_map_default(self): self.addEngine(4) m = self.multiengine.mapper() d = m.map(lambda x: 2 * x, range(10)) d.addCallback( lambda r: self.assertEquals(r, [2 * x for x in range(10)])) d.addCallback( lambda _: self.multiengine.map(lambda x: 2 * x, range(10))) d.addCallback( lambda r: self.assertEquals(r, [2 * x for x in range(10)])) return d def test_map_noblock(self): self.addEngine(4) m = self.multiengine.mapper(block=False) d = m.map(lambda x: 2 * x, range(10)) d.addCallback( lambda did: self.multiengine.get_pending_deferred(did, True)) d.addCallback( lambda r: self.assertEquals(r, [2 * x for x in range(10)])) return d def test_mapper_fail(self): self.addEngine(4) m = self.multiengine.mapper() d = m.map(lambda x: 1 / 0, range(10)) d.addBoth(lambda f: self.assertRaises(ZeroDivisionError, _raise_it, f)) return d def test_parallel(self): self.addEngine(4) p = self.multiengine.parallel() self.assert_(isinstance(p, ParallelFunction)) @p def f(x): return 2 * x d = f(range(10)) d.addCallback( lambda r: self.assertEquals(r, [2 * x for x in range(10)])) return d def test_parallel_noblock(self): self.addEngine(1) p = self.multiengine.parallel(block=False) self.assert_(isinstance(p, ParallelFunction)) @p def f(x): return 2 * x d = f(range(10)) d.addCallback( lambda did: self.multiengine.get_pending_deferred(did, True)) d.addCallback( lambda r: self.assertEquals(r, [2 * x for x in range(10)])) return d def test_parallel_fail(self): self.addEngine(4) p = self.multiengine.parallel() self.assert_(isinstance(p, ParallelFunction)) @p def f(x): return 1 / 0 d = f(range(10)) d.addBoth(lambda f: self.assertRaises(ZeroDivisionError, _raise_it, f)) return d
def setUp(self): self.controller = ControllerService() self.controller.startService() self.multiengine = me.ISynchronousMultiEngine( me.IMultiEngine(self.controller)) self.engines = []
class FullSynchronousMultiEngineTestCase( DeferredTestCase, IFullSynchronousMultiEngineTestCase): def setUp(self): self.engines = [] self.controller = ControllerService() self.controller.startService() self.imultiengine = IMultiEngine(self.controller) self.mec_referenceable = IFCSynchronousMultiEngine(self.imultiengine) self.controller_tub = Tub() self.controller_tub.listenOn('tcp:10111:interface=127.0.0.1') self.controller_tub.setLocation('127.0.0.1:10111') furl = self.controller_tub.registerReference(self.mec_referenceable) self.controller_tub.startService() self.client_tub = AsyncClientConnector() d = self.client_tub.get_multiengine_client(furl_or_file=furl) d.addCallback(self.handle_got_client) return d def handle_got_client(self, client): self.multiengine = client def tearDown(self): dlist = [] # Shut down the multiengine client d = self.client_tub.tub.stopService() dlist.append(d) # Shut down the engines for e in self.engines: e.stopService() # Shut down the controller d = self.controller_tub.stopService() d.addBoth(lambda _: self.controller.stopService()) dlist.append(d) return defer.DeferredList(dlist) def test_mapper(self): self.addEngine(4) m = self.multiengine.mapper() self.assertEquals(m.multiengine,self.multiengine) self.assertEquals(m.dist,'b') self.assertEquals(m.targets,'all') self.assertEquals(m.block,True) def test_map_default(self): self.addEngine(4) m = self.multiengine.mapper() d = m.map(lambda x: 2*x, list(range(10))) d.addCallback(lambda r: self.assertEquals(r,[2*x for x in range(10)])) d.addCallback(lambda _: self.multiengine.map(lambda x: 2*x, list(range(10)))) d.addCallback(lambda r: self.assertEquals(r,[2*x for x in range(10)])) return d def test_map_noblock(self): self.addEngine(4) m = self.multiengine.mapper(block=False) d = m.map(lambda x: 2*x, list(range(10))) d.addCallback(lambda did: self.multiengine.get_pending_deferred(did, True)) d.addCallback(lambda r: self.assertEquals(r,[2*x for x in range(10)])) return d def test_mapper_fail(self): self.addEngine(4) m = self.multiengine.mapper() d = m.map(lambda x: 1/0, list(range(10))) d.addBoth(lambda f: self.assertRaises(ZeroDivisionError, _raise_it, f)) return d def test_parallel(self): self.addEngine(4) p = self.multiengine.parallel() self.assert_(isinstance(p, ParallelFunction)) @p def f(x): return 2*x d = f(list(range(10))) d.addCallback(lambda r: self.assertEquals(r,[2*x for x in range(10)])) return d def test_parallel_noblock(self): self.addEngine(1) p = self.multiengine.parallel(block=False) self.assert_(isinstance(p, ParallelFunction)) @p def f(x): return 2*x d = f(list(range(10))) d.addCallback(lambda did: self.multiengine.get_pending_deferred(did, True)) d.addCallback(lambda r: self.assertEquals(r,[2*x for x in range(10)])) return d def test_parallel_fail(self): self.addEngine(4) p = self.multiengine.parallel() self.assert_(isinstance(p, ParallelFunction)) @p def f(x): return 1/0 d = f(list(range(10))) d.addBoth(lambda f: self.assertRaises(ZeroDivisionError, _raise_it, f)) return d