Viewing file: support.py (3.39 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
import unittest
class TestHashing(object): """Used as a mixin for TestCase"""
# Check for a valid __hash__ implementation def test_hash(self): for obj_1, obj_2 in self.eq_pairs: try: if not hash(obj_1) == hash(obj_2): self.fail("%r and %r do not hash equal" % (obj_1, obj_2)) except KeyboardInterrupt: raise except Exception, e: self.fail("Problem hashing %r and %r: %s" % (obj_1, obj_2, e))
for obj_1, obj_2 in self.ne_pairs: try: if hash(obj_1) == hash(obj_2): self.fail("%s and %s hash equal, but shouldn't" % (obj_1, obj_2)) except KeyboardInterrupt: raise except Exception, e: self.fail("Problem hashing %s and %s: %s" % (obj_1, obj_2, e))
class TestEquality(object): """Used as a mixin for TestCase"""
# Check for a valid __eq__ implementation def test_eq(self): for obj_1, obj_2 in self.eq_pairs: self.assertEqual(obj_1, obj_2) self.assertEqual(obj_2, obj_1)
# Check for a valid __ne__ implementation def test_ne(self): for obj_1, obj_2 in self.ne_pairs: self.assertNotEqual(obj_1, obj_2) self.assertNotEqual(obj_2, obj_1)
class LoggingResult(unittest.TestResult): def __init__(self, log): self._events = log super(LoggingResult, self).__init__()
def startTest(self, test): self._events.append('startTest') super(LoggingResult, self).startTest(test)
def startTestRun(self): self._events.append('startTestRun') super(LoggingResult, self).startTestRun()
def stopTest(self, test): self._events.append('stopTest') super(LoggingResult, self).stopTest(test)
def stopTestRun(self): self._events.append('stopTestRun') super(LoggingResult, self).stopTestRun()
def addFailure(self, *args): self._events.append('addFailure') super(LoggingResult, self).addFailure(*args)
def addSuccess(self, *args): self._events.append('addSuccess') super(LoggingResult, self).addSuccess(*args)
def addError(self, *args): self._events.append('addError') super(LoggingResult, self).addError(*args)
def addSkip(self, *args): self._events.append('addSkip') super(LoggingResult, self).addSkip(*args)
def addExpectedFailure(self, *args): self._events.append('addExpectedFailure') super(LoggingResult, self).addExpectedFailure(*args)
def addUnexpectedSuccess(self, *args): self._events.append('addUnexpectedSuccess') super(LoggingResult, self).addUnexpectedSuccess(*args)
class ResultWithNoStartTestRunStopTestRun(object): """An object honouring TestResult before startTestRun/stopTestRun."""
def __init__(self): self.failures = [] self.errors = [] self.testsRun = 0 self.skipped = [] self.expectedFailures = [] self.unexpectedSuccesses = [] self.shouldStop = False
def startTest(self, test): pass
def stopTest(self, test): pass
def addError(self, test): pass
def addFailure(self, test): pass
def addSuccess(self, test): pass
def wasSuccessful(self): return True
|