def tearDown(self): if self.worker is not None: class FakeResult(object): code = 200 self._http.delete = lambda _: defer.succeed(FakeResult()) self.worker.master.stopService() _setReactor(None)
def setUp(self): self.patch(threadpool, "ThreadPool", NonThreadPool) self.reactor = TestReactor() _setReactor(self.reactor) self.patch(workerhyper, "Hyper", hyper.Client) self.build = Properties(image="busybox:latest", builder="docker_worker") self.worker = None
def setUpTestReactor(self, use_asyncio=False): self.patch(threadpool, 'ThreadPool', NonThreadPool) self.reactor = TestReactor() _setReactor(self.reactor) def deferToThread(f, *args, **kwargs): return threads.deferToThreadPool(self.reactor, self.reactor.getThreadPool(), f, *args, **kwargs) self.patch(threads, 'deferToThread', deferToThread) # During shutdown sequence we must first stop the reactor and only then # set unset the reactor used for eventually() because any callbacks # that are run during reactor.stop() may use eventually() themselves. self.addCleanup(_setReactor, None) self.addCleanup(self.reactor.stop) if use_asyncio: self.asyncio_loop = TwistedLoop(self.reactor) asyncio.set_event_loop(self.asyncio_loop) self.asyncio_loop.start() def stop(): self.asyncio_loop.stop() self.asyncio_loop.close() asyncio.set_event_loop(None) self.addCleanup(stop)
def setUp(self): self.patch(threadpool, 'ThreadPool', NonThreadPool) self.reactor = TestReactor() _setReactor(self.reactor) self.patch(workerhyper, 'Hyper', hyper.Client) self.build = Properties( image="busybox:latest", builder="docker_worker") self.worker = None
def setUpTestReactor(self): self.patch(threadpool, 'ThreadPool', NonThreadPool) self.reactor = TestReactor() _setReactor(self.reactor) # During shutdown sequence we must first stop the reactor and only then # set unset the reactor used for eventually() because any callbacks # that are run during reactor.stop() may use eventually() themselves. self.addCleanup(_setReactor, None) self.addCleanup(self.reactor.stop)
def setUp(self): def deferToThread(f, *args, **kwargs): return threads.deferToThreadPool(self.reactor, self.reactor.getThreadPool(), f, *args, **kwargs) self.patch(threadpool, 'ThreadPool', NonThreadPool) self.patch(threads, 'deferToThread', deferToThread) self.reactor = TestReactor() _setReactor(self.reactor) self.build = Properties( image='busybox:latest', builder='docker_worker', distro='wheezy') self.patch(dockerworker, 'client', docker)
def setUp(self): self.patch(threadpool, 'ThreadPool', NonThreadPool) self.reactor = TestReactor() self.addCleanup(self.reactor.stop) _setReactor(self.reactor) self.addCleanup(_setReactor, None) # to ease debugging we display the error logs in the test log origAddCompleteLog = BuildStep.addCompleteLog def addCompleteLog(self, name, _log): if name.endswith("err.text"): log.msg("got error log!", name, _log) return origAddCompleteLog(self, name, _log) self.patch(BuildStep, "addCompleteLog", addCompleteLog)
def setUpTestReactor(self): self.patch(threadpool, 'ThreadPool', NonThreadPool) self.reactor = TestReactor() _setReactor(self.reactor) def deferToThread(f, *args, **kwargs): return threads.deferToThreadPool(self.reactor, self.reactor.getThreadPool(), f, *args, **kwargs) self.patch(threads, 'deferToThread', deferToThread) # During shutdown sequence we must first stop the reactor and only then # set unset the reactor used for eventually() because any callbacks # that are run during reactor.stop() may use eventually() themselves. self.addCleanup(_setReactor, None) self.addCleanup(self.reactor.stop)
def test_sleep(self): reactor = self.loop._reactor = task.Clock() eventual._setReactor(reactor) state = State(count=5) def proc(): self.results.append(reactor.seconds()) state.count -= 1 if state.count: return defer.succeed(reactor.seconds() + 10.0) self.loop.add(proc) self.loop.trigger() def check(ign): reactor.pump((0,) + (1,)*50) # run for 50 fake seconds self.assertEqual(self.results, [ 0.0, 10.0, 20.0, 30.0, 40.0 ]) d = eventual.flushEventualQueue() d.addCallback(check) return d
def setUp(self): self.patch(threadpool, 'ThreadPool', NonThreadPool) self.reactor = TestReactor() self.addCleanup(self.reactor.stop) _setReactor(self.reactor) self.addCleanup(_setReactor, None) # to ease debugging we display the error logs in the test log origAddCompleteLog = BuildStep.addCompleteLog def addCompleteLog(self, name, _log): if name.endswith("err.text"): log.msg("got error log!", name, _log) return origAddCompleteLog(self, name, _log) self.patch(BuildStep, "addCompleteLog", addCompleteLog) if 'BBTRACE' in os.environ: enable_trace(self, ["twisted", "worker_transition.py", "util/tu", "util/path", "log.py", "/mq/", "/db/", "buildbot/data/", "fake/reactor.py"])
def test_sleep(self): reactor = self.loop._reactor = task.Clock() eventual._setReactor(reactor) state = State(count=5) def proc(): self.results.append(reactor.seconds()) state.count -= 1 if state.count: return defer.succeed(reactor.seconds() + 10.0) self.loop.add(proc) self.loop.trigger() def check(ign): reactor.pump((0, ) + (1, ) * 50) # run for 50 fake seconds self.assertEqual(self.results, [0.0, 10.0, 20.0, 30.0, 40.0]) d = eventual.flushEventualQueue() d.addCallback(check) return d
def tearDown(self): if self.worker is not None: self.worker.stopService() self.reactor.pump([.1]) self.assertIsNone(hyper.Client.instance) _setReactor(None)
def setUp(self): self.patch(threadpool, 'ThreadPool', NonThreadPool) self.reactor = TestReactor() self.addCleanup(self.reactor.stop) _setReactor(self.reactor) self.addCleanup(_setReactor, None)
def tearDownTestLoop(self): eventual._setReactor(None) assert self.loop.is_quiet() return self.loop.stopService()
def setUpTestReactor(self): self.patch(threadpool, 'ThreadPool', NonThreadPool) self.reactor = TestReactor() self.addCleanup(self.reactor.stop) _setReactor(self.reactor) self.addCleanup(_setReactor, None)
def setUp(self): self.reactor = TestReactor() _setReactor(self.reactor) self.build = Properties(image="busybox:latest", builder="docker_worker") self.worker = None
def setUp(self): self.reactor = TestReactor() _setReactor(self.reactor) self.build = Properties( image="busybox:latest", builder="docker_worker") self.worker = None