util: deferredutil: add basic test for deferredutil.gatherResults
authorZooko O'Whielacronx <zooko@zooko.com>
Wed, 7 Jan 2009 15:13:42 +0000 (08:13 -0700)
committerZooko O'Whielacronx <zooko@zooko.com>
Wed, 7 Jan 2009 15:13:42 +0000 (08:13 -0700)
Also I checked and Twisted 2.4.0 supports .subFailure and the other parts of the API that we require.

src/allmydata/test/test_util.py

index d69f8480722b1ac55590d3fea549a06d8c3efbbe..32abb7efe0ff863df1178bc39d82cbcce60c1258 100644 (file)
@@ -356,6 +356,18 @@ class PollMixinTests(unittest.TestCase):
         return d
 
 class DeferredUtilTests(unittest.TestCase):
+    def test_gather_results(self):
+        d1 = defer.Deferred()
+        d2 = defer.Deferred()
+        res = deferredutil.gatherResults([d1, d2])
+        d1.errback(ValueError("BAD"))
+        def _callb(res):
+            self.fail("Should have errbacked, not resulted in %s" % (res,))
+        def _errb(thef):
+            thef.trap(ValueError)
+        res.addCallbacks(_callb, _errb)
+        return res
+
     def test_success(self):
         d1, d2 = defer.Deferred(), defer.Deferred()
         good = []