Пример #1
0
 def _subscribe_test3(self, res):
     db = self.master.db
     (brids, bss, success_events, finished_events) = res
     d = fireEventually()
     def _check1(ign):
         self.failUnlessEqual(len(success_events), 0)
         self.failUnlessEqual(len(finished_events), 0)
         db.retire_buildrequests([brids["bn1"]], FAILURE)
         return flushEventualQueue()
     d.addCallback(_check1)
     def _check2(ign):
         self.failUnlessEqual(len(success_events), 1)
         self.failUnlessEqual(len(finished_events), 0)
         self.failUnlessEqual(success_events[0].isFinished(), False)
         self.failUnlessEqual(success_events[0].getResults(), None)
         db.retire_buildrequests([brids["bn2"]], SUCCESS)
         return flushEventualQueue()
     d.addCallback(_check2)
     def _check3(ign):
         self.failUnlessEqual(len(success_events), 1)
         self.failUnlessEqual(len(finished_events), 1)
         self.failUnlessIdentical(bss.__class__,
                                  success_events[0].__class__)
         self.failUnlessEqual(success_events[0].isFinished(), True)
         self.failUnlessEqual(success_events[0].getResults(), FAILURE)
         self.failUnlessEqual(finished_events[0].getResults(), FAILURE)
         return flushEventualQueue()
     d.addCallback(_check3)
     return d
Пример #2
0
    def _do_shutdown(self, res):
        bs = self.master.botmaster.builders['quick'].slaves[0]
        # Check that the slave is accepting builds once it's connected
        self.assertEquals(bs.slave.canStartBuild(), True)

        # Monkeypatch the slave's shutdown routine since the real shutdown
        # interrupts the test harness
        self.did_shutdown = False
        def _shutdown():
            self.did_shutdown = True
        bs.slave.shutdown = _shutdown

        # Start a graceful shutdown
        bs.slave.slave_status.setGraceful(True)
        # Check that the slave isn't accepting builds any more
        self.assertEquals(bs.slave.canStartBuild(), False)

        # Wait a little bit and then check that we (pretended to) shut down
        d = fireEventually()
        d.addCallback(self._check_shutdown)
        return d