| Index: third_party/twisted_8_1/twisted/trial/test/test_log.py
|
| diff --git a/third_party/twisted_8_1/twisted/trial/test/test_log.py b/third_party/twisted_8_1/twisted/trial/test/test_log.py
|
| deleted file mode 100644
|
| index 92abbf5f08fe78398b189b9db0aa012fa6a9f650..0000000000000000000000000000000000000000
|
| --- a/third_party/twisted_8_1/twisted/trial/test/test_log.py
|
| +++ /dev/null
|
| @@ -1,197 +0,0 @@
|
| -# Copyright (c) 2001-2006 Twisted Matrix Laboratories.
|
| -# See LICENSE for details.
|
| -
|
| -"""
|
| -Test the interaction between trial and errors logged during test run.
|
| -"""
|
| -
|
| -import time
|
| -
|
| -from twisted.internet import defer
|
| -from twisted.python import failure, log
|
| -from twisted.trial import unittest, reporter, runner
|
| -
|
| -
|
| -def makeFailure():
|
| - """
|
| - Return a new, realistic failure.
|
| - """
|
| - try:
|
| - 1/0
|
| - except ZeroDivisionError:
|
| - f = failure.Failure()
|
| - return f
|
| -
|
| -
|
| -def deferLater(n):
|
| - """
|
| - Return a L{defer.Deferred} that will fire in C{n} seconds.
|
| - """
|
| - from twisted.internet import reactor
|
| - d = defer.Deferred()
|
| - reactor.callLater(n, d.callback, None)
|
| - return d
|
| -
|
| -
|
| -class Mask(object):
|
| - """
|
| - Hide C{MockTest}s from Trial's automatic test finder.
|
| - """
|
| -
|
| - class MockTest(unittest.TestCase):
|
| - def test_silent(self):
|
| - """
|
| - Don't log any errors.
|
| - """
|
| -
|
| - def test_single(self):
|
| - """
|
| - Log a single error.
|
| - """
|
| - log.err(makeFailure())
|
| -
|
| - def test_double(self):
|
| - """
|
| - Log two errors.
|
| - """
|
| - log.err(makeFailure())
|
| - log.err(makeFailure())
|
| -
|
| - def test_inCallback(self):
|
| - """
|
| - Log an error in an asynchronous callback.
|
| - """
|
| - d = deferLater(0)
|
| - d.addCallback(lambda _: log.err(makeFailure()))
|
| - return d
|
| -
|
| -
|
| -class TestObserver(unittest.TestCase):
|
| - def setUp(self):
|
| - self.result = reporter.TestResult()
|
| - self.observer = unittest._LogObserver()
|
| -
|
| - def test_msg(self):
|
| - """
|
| - Test that a standard log message doesn't go anywhere near the result.
|
| - """
|
| - self.observer.gotEvent({'message': ('some message',),
|
| - 'time': time.time(), 'isError': 0,
|
| - 'system': '-'})
|
| - self.assertEqual(self.observer.getErrors(), [])
|
| -
|
| - def test_error(self):
|
| - """
|
| - Test that an observed error gets added to the result
|
| - """
|
| - f = makeFailure()
|
| - self.observer.gotEvent({'message': (),
|
| - 'time': time.time(), 'isError': 1,
|
| - 'system': '-', 'failure': f,
|
| - 'why': None})
|
| - self.assertEqual(self.observer.getErrors(), [f])
|
| -
|
| - def test_flush(self):
|
| - """
|
| - Check that flushing the observer with no args removes all errors.
|
| - """
|
| - self.test_error()
|
| - flushed = self.observer.flushErrors()
|
| - self.assertEqual(self.observer.getErrors(), [])
|
| - self.assertEqual(len(flushed), 1)
|
| - self.assertTrue(flushed[0].check(ZeroDivisionError))
|
| -
|
| - def _makeRuntimeFailure(self):
|
| - return failure.Failure(RuntimeError('test error'))
|
| -
|
| - def test_flushByType(self):
|
| - """
|
| - Check that flushing the observer remove all failures of the given type.
|
| - """
|
| - self.test_error() # log a ZeroDivisionError to the observer
|
| - f = self._makeRuntimeFailure()
|
| - self.observer.gotEvent(dict(message=(), time=time.time(), isError=1,
|
| - system='-', failure=f, why=None))
|
| - flushed = self.observer.flushErrors(ZeroDivisionError)
|
| - self.assertEqual(self.observer.getErrors(), [f])
|
| - self.assertEqual(len(flushed), 1)
|
| - self.assertTrue(flushed[0].check(ZeroDivisionError))
|
| -
|
| - def test_ignoreErrors(self):
|
| - """
|
| - Check that C{_ignoreErrors} actually causes errors to be ignored.
|
| - """
|
| - self.observer._ignoreErrors(ZeroDivisionError)
|
| - f = makeFailure()
|
| - self.observer.gotEvent({'message': (),
|
| - 'time': time.time(), 'isError': 1,
|
| - 'system': '-', 'failure': f,
|
| - 'why': None})
|
| - self.assertEqual(self.observer.getErrors(), [])
|
| -
|
| - def test_clearIgnores(self):
|
| - """
|
| - Check that C{_clearIgnores} ensures that previously ignored errors
|
| - get captured.
|
| - """
|
| - self.observer._ignoreErrors(ZeroDivisionError)
|
| - self.observer._clearIgnores()
|
| - f = makeFailure()
|
| - self.observer.gotEvent({'message': (),
|
| - 'time': time.time(), 'isError': 1,
|
| - 'system': '-', 'failure': f,
|
| - 'why': None})
|
| - self.assertEqual(self.observer.getErrors(), [f])
|
| -
|
| -
|
| -class LogErrors(unittest.TestCase):
|
| - """
|
| - High-level tests demonstrating the expected behaviour of logged errors
|
| - during tests.
|
| - """
|
| -
|
| - def setUp(self):
|
| - self.result = reporter.TestResult()
|
| -
|
| - def tearDown(self):
|
| - self.flushLoggedErrors(ZeroDivisionError)
|
| -
|
| - def test_singleError(self):
|
| - """
|
| - Test that a logged error gets reported as a test error.
|
| - """
|
| - test = Mask.MockTest('test_single')
|
| - test(self.result)
|
| - self.assertEqual(len(self.result.errors), 1)
|
| - self.assertTrue(self.result.errors[0][1].check(ZeroDivisionError),
|
| - self.result.errors[0][1])
|
| -
|
| - def test_twoErrors(self):
|
| - """
|
| - Test that when two errors get logged, they both get reported as test
|
| - errors.
|
| - """
|
| - test = Mask.MockTest('test_double')
|
| - test(self.result)
|
| - self.assertEqual(len(self.result.errors), 2)
|
| -
|
| - def test_inCallback(self):
|
| - """
|
| - Test that errors logged in callbacks get reported as test errors.
|
| - """
|
| - test = Mask.MockTest('test_inCallback')
|
| - test(self.result)
|
| - self.assertEqual(len(self.result.errors), 1)
|
| - self.assertTrue(self.result.errors[0][1].check(ZeroDivisionError),
|
| - self.result.errors[0][1])
|
| -
|
| - def test_errorsIsolated(self):
|
| - """
|
| - Check that an error logged in one test doesn't fail the next test.
|
| - """
|
| - t1 = Mask.MockTest('test_single')
|
| - t2 = Mask.MockTest('test_silent')
|
| - t1(self.result)
|
| - t2(self.result)
|
| - self.assertEqual(len(self.result.errors), 1)
|
| - self.assertEqual(self.result.errors[0][0], t1)
|
|
|