[Twisted-Python] FirstError handling from defer.gatherResults()?
Justin Warren
daedalus at eigenmagic.com
Wed Nov 5 01:22:23 EST 2008
On Wed, 2008-11-05 at 00:36 -0500, Jean-Paul Calderone wrote:
> >Yes, ok. That's what I thought I should be doing, however trial appears
> >to still think that the error I've trapped has occurred, and ERRORs the
> >test. Am I not clearing state somewhere? I thought that simply handling
> >the failure (and not returning a Failure from the errback) would stop
> >this?
>
> The Deferred in the list you passed to gatherResults still failed
> because gatherResults doesn't pass consumeErrors=True to the DeferredList
> it created. So even though you trapped the failure from the Deferred
> gatherResults returned, the original Deferred still has an unhandled
> failure and your test gets an error.
>
> To fix this, use DeferredList instead of gatherResults (or your own
> version of gatherResults that does pass consumeErrors=True) or add
> your own errbacks to all the Deferreds in the list after you've
> passed the list to gatherResults.
Awesome! Thanks Jean-Paul.
To the code!
--
Justin Warren <daedalus at eigenmagic.com>
More information about the Twisted-Python
mailing list