def __init__(self, master_id=fakedb.FakeBuildRequestsComponent.MASTER_ID): service.MasterService.__init__(self) self._master_id = master_id self.objectids = [] self.config = config.MasterConfig() self.caches = FakeCaches() self.pbmanager = pbmanager.FakePBManager() self.basedir = 'basedir' self.botmaster = FakeBotMaster() self.botmaster.setServiceParent(self) self.status = FakeStatus() self.status.setServiceParent(self) self.name = 'fake:/master' self.masterid = master_id self.buildslaves = bslavemanager.FakeBuildslaveManager() self.buildslaves.setServiceParent(self) self.log_rotation = FakeLogRotation() self.db = mock.Mock() self.next_objectid = 0 def getObjectId(sched_name, class_name): k = (sched_name, class_name) try: rv = self.objectids[k] except KeyError: rv = self.objectids[k] = self.next_objectid self.next_objectid += 1 return defer.succeed(rv) self.db.state.getObjectId = getObjectId
def setUp(self): self.master = fakemaster.make_master(wantDb=True, wantData=True, testcase=self) self.botmaster = botmaster.FakeBotMaster(self.master) self.buildslaves = bslavemanager.FakeBuildslaveManager(self.master) self.clock = task.Clock() self.patch(reactor, 'callLater', self.clock.callLater) self.patch(reactor, 'seconds', self.clock.seconds)
def callAttached(self): self.master = fakemaster.make_master(testcase=self, wantData=True) self.botmaster = botmaster.FakeBotMaster(self.master) self.buildslaves = bslavemanager.FakeBuildslaveManager(self.master) self.master.botmaster = self.botmaster self.master.buildslaves = self.buildslaves self.sl.setServiceParent(self.master.buildslaves) self.conn = fakeprotocol.FakeConnection(self.master, self.sl) return self.sl.attached(self.conn)
def __init__(self, master_id=fakedb.FakeBuildRequestsComponent.MASTER_ID): self._master_id = master_id self.config = config.MasterConfig() self.caches = FakeCaches() self.pbmanager = pbmanager.FakePBManager() self.basedir = 'basedir' self.botmaster = FakeBotMaster(master=self) self.botmaster.parent = self self.status = FakeStatus(self) self.status.master = self self.name = 'fake:/master' self.masterid = master_id self.buildslaves = bslavemanager.FakeBuildslaveManager(self)
def test_setServiceParent_started(self): master = self.master bm = botmaster.FakeBotMaster(master) bsmanager = bslavemanager.FakeBuildslaveManager(master) master.botmaster = bm master.buildslaves = bsmanager bm.startService() bsmanager.startService() bs = ConcreteBuildSlave('bot', 'pass') bs.setServiceParent(bsmanager) self.assertEqual(bs.manager, bsmanager) self.assertEqual(bs.parent, bsmanager) self.assertEqual(bs.master, master)
def test_setServiceParent_slaveLocks(self): """ http://trac.buildbot.net/ticket/2278 """ master = self.master bm = botmaster.FakeBotMaster(master) bsmanager = bslavemanager.FakeBuildslaveManager(master) master.botmaster = bm master.buildslaves = bsmanager bm.startService() bsmanager.startService() lock = locks.SlaveLock('lock') bs = ConcreteBuildSlave('bot', 'pass', locks=[lock.access("counting")]) bs.setServiceParent(bsmanager)