diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2010-01-08 02:09:20 +0100 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2010-01-16 19:53:49 +1300 |
commit | 28577aae928847e64a0274b5922e26e1f15d9916 (patch) | |
tree | 78f6b36e8166d3320120df0e1bc91fef7ce8f9b1 /lib/subunit/python/testtools/tests/helpers.py | |
parent | b6b46b4978dcaffa0cd9803c43b8a5f1c19e227e (diff) | |
download | samba-28577aae928847e64a0274b5922e26e1f15d9916.tar.gz samba-28577aae928847e64a0274b5922e26e1f15d9916.tar.bz2 samba-28577aae928847e64a0274b5922e26e1f15d9916.zip |
Import testtools as well, required for subunit.
Diffstat (limited to 'lib/subunit/python/testtools/tests/helpers.py')
-rw-r--r-- | lib/subunit/python/testtools/tests/helpers.py | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/lib/subunit/python/testtools/tests/helpers.py b/lib/subunit/python/testtools/tests/helpers.py new file mode 100644 index 0000000000..c4cf10c736 --- /dev/null +++ b/lib/subunit/python/testtools/tests/helpers.py @@ -0,0 +1,67 @@ +# Copyright (c) 2008 Jonathan M. Lange. See LICENSE for details. + +"""Helpers for tests.""" + +import sys + +__metaclass__ = type +__all__ = [ + 'LoggingResult', + ] + +from testtools import TestResult + + +try: + raise Exception +except Exception: + an_exc_info = sys.exc_info() + +# Deprecated: This classes attributes are somewhat non deterministic which +# leads to hard to predict tests (because Python upstream are changing things. +class LoggingResult(TestResult): + """TestResult that logs its event to a list.""" + + def __init__(self, log): + self._events = log + super(LoggingResult, self).__init__() + + def startTest(self, test): + self._events.append(('startTest', test)) + super(LoggingResult, self).startTest(test) + + def stopTest(self, test): + self._events.append(('stopTest', test)) + super(LoggingResult, self).stopTest(test) + + def addFailure(self, test, error): + self._events.append(('addFailure', test, error)) + super(LoggingResult, self).addFailure(test, error) + + def addError(self, test, error): + self._events.append(('addError', test, error)) + super(LoggingResult, self).addError(test, error) + + def addSkip(self, test, reason): + self._events.append(('addSkip', test, reason)) + super(LoggingResult, self).addSkip(test, reason) + + def addSuccess(self, test): + self._events.append(('addSuccess', test)) + super(LoggingResult, self).addSuccess(test) + + def startTestRun(self): + self._events.append('startTestRun') + super(LoggingResult, self).startTestRun() + + def stopTestRun(self): + self._events.append('stopTestRun') + super(LoggingResult, self).stopTestRun() + + def done(self): + self._events.append('done') + super(LoggingResult, self).done() + +# Note, the following three classes are different to LoggingResult by +# being fully defined exact matches rather than supersets. +from testtools.testresult.doubles import * |