]> git.rkrishnan.org Git - tahoe-lafs/tahoe-lafs.git/commitdiff
test_system: stall for a second while bouncing the client, it might help windows
authorBrian Warner <warner@allmydata.com>
Fri, 29 Jun 2007 02:20:28 +0000 (19:20 -0700)
committerBrian Warner <warner@allmydata.com>
Fri, 29 Jun 2007 02:20:28 +0000 (19:20 -0700)
src/allmydata/test/test_system.py

index ec445271954609fe4d412a6d8c6e08f288ba3eaf..e563eae34eee384041aff78061717bda9a88bf2a 100644 (file)
@@ -289,6 +289,11 @@ class SystemTest(testutil.SignalMixin, unittest.TestCase):
         d = old_client0.disownServiceParent()
         assert isinstance(d, defer.Deferred)
         d.addCallback(self.log, "STOPPED")
+        # I think windows requires a moment to let the connection really stop
+        # and the port number made available for re-use. TODO: examine the
+        # behavior, see if this is really the problem, see if we can do
+        # better than blindly waiting for a second.
+        d.addCallback(self.stall, 1.0)
         def _stopped(res):
             new_client0 = client.Client(basedir=self.getdir("client0"))
             self.add_service(new_client0)
@@ -310,6 +315,11 @@ class SystemTest(testutil.SignalMixin, unittest.TestCase):
         log.msg(msg)
         return res
 
+    def stall(self, res, delay=1.0):
+        d = defer.Deferred()
+        reactor.callLater(delay, d.callback, res)
+        return d
+
     def _do_publish_private(self, res):
         ut = upload.Data(self.data)
         vdrive0 = self.clients[0].getServiceNamed("vdrive")