'Callables added with C{addCleanup} are run even if setUp raises
L{SkipTest}. This allows test authors to reliably provide clean up
code using C{addCleanup}.'

def test_addCleanupCalledIfSetUpSkips(self):

    self.test.setUp = self.test.skippingSetUp
    self.test.addCleanup(self.test.append, 'foo')
    self.test.run(self.result)
    self.assertEqual(['setUp', 'foo'], self.test.log)
