diff options
Diffstat (limited to 'Lib/unittest/test/support.py')
-rw-r--r-- | Lib/unittest/test/support.py | 87 |
1 files changed, 34 insertions, 53 deletions
diff --git a/Lib/unittest/test/support.py b/Lib/unittest/test/support.py index 5292653..f1cf03b 100644 --- a/Lib/unittest/test/support.py +++ b/Lib/unittest/test/support.py @@ -1,21 +1,6 @@ import unittest -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 TestHashing(object): """Used as a mixin for TestCase""" @@ -25,7 +10,9 @@ class TestHashing(object): try: if not hash(obj_1) == hash(obj_2): self.fail("%r and %r do not hash equal" % (obj_1, obj_2)) - except Exception as e: + 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: @@ -33,78 +20,72 @@ class TestHashing(object): if hash(obj_1) == hash(obj_2): self.fail("%s and %s hash equal, but shouldn't" % (obj_1, obj_2)) - except Exception as e: + except KeyboardInterrupt: + raise + except Exception, e: self.fail("Problem hashing %s and %s: %s" % (obj_1, obj_2, e)) -class _BaseLoggingResult(unittest.TestResult): +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().__init__() + super(LoggingResult, self).__init__() def startTest(self, test): self._events.append('startTest') - super().startTest(test) + super(LoggingResult, self).startTest(test) def startTestRun(self): self._events.append('startTestRun') - super().startTestRun() + super(LoggingResult, self).startTestRun() def stopTest(self, test): self._events.append('stopTest') - super().stopTest(test) + super(LoggingResult, self).stopTest(test) def stopTestRun(self): self._events.append('stopTestRun') - super().stopTestRun() + super(LoggingResult, self).stopTestRun() def addFailure(self, *args): self._events.append('addFailure') - super().addFailure(*args) + super(LoggingResult, self).addFailure(*args) def addSuccess(self, *args): self._events.append('addSuccess') - super().addSuccess(*args) + super(LoggingResult, self).addSuccess(*args) def addError(self, *args): self._events.append('addError') - super().addError(*args) + super(LoggingResult, self).addError(*args) def addSkip(self, *args): self._events.append('addSkip') - super().addSkip(*args) + super(LoggingResult, self).addSkip(*args) def addExpectedFailure(self, *args): self._events.append('addExpectedFailure') - super().addExpectedFailure(*args) + super(LoggingResult, self).addExpectedFailure(*args) def addUnexpectedSuccess(self, *args): self._events.append('addUnexpectedSuccess') - super().addUnexpectedSuccess(*args) - - -class LegacyLoggingResult(_BaseLoggingResult): - """ - A legacy TestResult implementation, without an addSubTest method, - which records its method calls. - """ - - @property - def addSubTest(self): - raise AttributeError - - -class LoggingResult(_BaseLoggingResult): - """ - A TestResult implementation which records its method calls. - """ - - def addSubTest(self, test, subtest, err): - if err is None: - self._events.append('addSubTestSuccess') - else: - self._events.append('addSubTestFailure') - super().addSubTest(test, subtest, err) + super(LoggingResult, self).addUnexpectedSuccess(*args) class ResultWithNoStartTestRunStopTestRun(object): |