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)
Esempio n. 2
0
 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)
Esempio n. 3
0
 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
Esempio n. 4
0
    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)
Esempio n. 5
0
 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
Esempio n. 6
0
 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)
Esempio n. 7
0
    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)
Esempio n. 8
0
    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)
Esempio n. 9
0
    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)
Esempio n. 10
0
 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
Esempio n. 11
0
    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"])
Esempio n. 12
0
    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"])
Esempio n. 13
0
    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
Esempio n. 14
0
 def tearDown(self):
     if self.worker is not None:
         self.worker.stopService()
         self.reactor.pump([.1])
     self.assertIsNone(hyper.Client.instance)
     _setReactor(None)
Esempio n. 15
0
 def setUp(self):
     self.patch(threadpool, 'ThreadPool', NonThreadPool)
     self.reactor = TestReactor()
     self.addCleanup(self.reactor.stop)
     _setReactor(self.reactor)
     self.addCleanup(_setReactor, None)
Esempio n. 16
0
 def tearDownTestLoop(self):
     eventual._setReactor(None)
     assert self.loop.is_quiet()
     return self.loop.stopService()
Esempio n. 17
0
 def setUpTestReactor(self):
     self.patch(threadpool, 'ThreadPool', NonThreadPool)
     self.reactor = TestReactor()
     self.addCleanup(self.reactor.stop)
     _setReactor(self.reactor)
     self.addCleanup(_setReactor, None)
Esempio n. 18
0
 def tearDownTestLoop(self):
     eventual._setReactor(None)
     assert self.loop.is_quiet()
     return self.loop.stopService()
Esempio n. 19
0
 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