Skip to content

Commit

Permalink
don't assume that deferreds have fired - wait for them
Browse files Browse the repository at this point in the history
  • Loading branch information
Dustin J. Mitchell committed Feb 3, 2010
1 parent cc92794 commit 803e6a8
Showing 1 changed file with 34 additions and 31 deletions.
65 changes: 34 additions & 31 deletions buildbot/test/runs/test_slaves.py
Expand Up @@ -57,10 +57,10 @@ class Slave(RunMixin, unittest.TestCase):

def setUp(self):
RunMixin.setUp(self)
self.master.loadConfig(config_1)
self.master.startService()
d = self.connectSlave(["b1"])
d.addCallback(lambda res: self.connectSlave(["b1"], "bot2"))
d = self.master.loadConfig(config_1)
d.addCallback(lambda res : self.master.startService())
d.addCallback(lambda res : self.connectSlave(["b1"]))
d.addCallback(lambda res : self.connectSlave(["b1"], "bot2"))
return d

def doBuild(self, buildername):
Expand Down Expand Up @@ -297,14 +297,16 @@ def setUp(self):
#twisted.internet.base.DelayedCall.debug = True
# debugging
RunMixin.setUp(self)
self.master.loadConfig(latent_config)
self.master.startService()
self.bot1 = self.master.botmaster.slaves['bot1']
self.bot2 = self.master.botmaster.slaves['bot2']
self.bot3 = self.master.botmaster.slaves['bot3']
self.bot1.testcase = self
self.bot2.testcase = self
self.b1 = self.master.botmaster.builders['b1']
d = self.master.loadConfig(latent_config)
d.addCallback(lambda res : self.master.startService())
def finishSetup(_):
self.bot1 = self.master.botmaster.slaves['bot1']
self.bot2 = self.master.botmaster.slaves['bot2']
self.bot3 = self.master.botmaster.slaves['bot3']
self.bot1.testcase = self
self.bot2.testcase = self
self.b1 = self.master.botmaster.builders['b1']
d.addCallback(finishSetup)

def doBuild(self, buildername):
br = BuildRequest("forced", SourceStamp(), 'test_builder')
Expand Down Expand Up @@ -574,9 +576,9 @@ class SlaveBusyness(RunMixin, unittest.TestCase):

def setUp(self):
RunMixin.setUp(self)
self.master.loadConfig(config_busyness)
self.master.startService()
d = self.connectSlave(["b1", "b2"])
d = self.master.loadConfig(config_busyness)
d.addCallback(lambda res : self.master.startService())
d.addCallback(lambda res : self.connectSlave(["b1", "b2"]))
return d

def doBuild(self, buildername):
Expand Down Expand Up @@ -687,9 +689,9 @@ class Reconfig(RunMixin, unittest.TestCase):

def setUp(self):
RunMixin.setUp(self)
self.master.loadConfig(config_3)
self.master.startService()
d = self.connectSlave(["b1"])
d = self.master.loadConfig(config_3)
d.addCallback(lambda res : self.master.startService())
d.addCallback(lambda res : self.connectSlave(["b1"]))
return d

def _one_started(self):
Expand Down Expand Up @@ -844,8 +846,9 @@ class Slave2(RunMixin, unittest.TestCase):

def setUp(self):
RunMixin.setUp(self)
self.master.loadConfig(config_1)
self.master.startService()
d = self.master.loadConfig(config_1)
d.addCallback(lambda res : self.master.startService())
return d

def doBuild(self, buildername, reason="forced"):
# we need to prevent these builds from being merged, so we create
Expand Down Expand Up @@ -926,10 +929,9 @@ def sendMessage(self, m, recipients):

class BuildSlave(RunMixin, unittest.TestCase):
def test_track_builders(self):
self.master.loadConfig(config_multi_builders)
self.master.readConfig = True
self.master.startService()
d = self.connectSlave()
d = self.master.loadConfig(config_multi_builders)
d.addCallback(lambda res : self.master.startService())
d.addCallback(lambda res : self.connectSlave())

def _check(res):
b = self.master.botmaster.builders['dummy']
Expand All @@ -944,15 +946,16 @@ def _check(res):
return d

def test_mail_on_missing(self):
self.master.loadConfig(config_mail_missing)
self.master.readConfig = True
self.master.startService()
fm = FakeMailer("buildbot@example.org")
fm.messages = []
fm.setServiceParent(self.master)
self.master.statusTargets.append(fm)

d = self.connectSlave()
d = self.master.loadConfig(config_mail_missing)
d.addCallback(lambda res : self.master.startService())
def addFakeMailer(_):
fm.messages = []
fm.setServiceParent(self.master)
self.master.statusTargets.append(fm)
d.addCallback(addFakeMailer)
d.addCallback(lambda res : self.connectSlave())
d.addCallback(self.stall, 1)
d.addCallback(lambda res: self.shutdownSlave("bot1", "dummy"))
def _not_yet(res):
Expand Down

0 comments on commit 803e6a8

Please sign in to comment.