def test_failureConstructionFindsOriginalFailure(self):
    '\n        When a Failure is constructed in the context of an exception\n        handler that is handling an exception raised by\n        throwExceptionIntoGenerator, the new Failure should be chained to that\n        original Failure.\n        '
    f = getDivisionFailure()
    f.cleanFailure()
    newFailures = []

    def generator():
        try:
            (yield)
        except:
            newFailures.append(failure.Failure())
        else:
            self.fail('No exception sent to generator')
    g = generator()
    next(g)
    self._throwIntoGenerator(f, g)
    self.assertEqual(len(newFailures), 1)
    self.assertEqual(newFailures[0].getTraceback(), f.getTraceback())
When a Failure is constructed in the context of an exception
handler that is handling an exception raised by
throwExceptionIntoGenerator, the new Failure should be chained to that
original Failure.
def test_failureConstructionFindsOriginalFailure(self):
    '\n        When a Failure is constructed in the context of an exception\n        handler that is handling an exception raised by\n        throwExceptionIntoGenerator, the new Failure should be chained to that\n        original Failure.\n        '
    f = getDivisionFailure()
    f.cleanFailure()
    newFailures = []

    def generator():
        try:
            (yield)
        except:
            newFailures.append(failure.Failure())
        else:
            self.fail('No exception sent to generator')
    g = generator()
    next(g)
    self._throwIntoGenerator(f, g)
    self.assertEqual(len(newFailures), 1)
    self.assertEqual(newFailures[0].getTraceback(), f.getTraceback())