tests/run-tests.py
changeset 21430 cf2992656bf8
parent 21429 203ed3cf6c81
child 21431 0f12bc8aed80
equal deleted inserted replaced
21429:203ed3cf6c81 21430:cf2992656bf8
   987     # Don't worry too much about accessing the non-public _TextTestResult.
   987     # Don't worry too much about accessing the non-public _TextTestResult.
   988     # It is relatively common in Python testing tools.
   988     # It is relatively common in Python testing tools.
   989     def __init__(self, *args, **kwargs):
   989     def __init__(self, *args, **kwargs):
   990         super(TestResult, self).__init__(*args, **kwargs)
   990         super(TestResult, self).__init__(*args, **kwargs)
   991 
   991 
       
   992         # unittest.TestResult didn't have skipped until 2.7. We need to
       
   993         # polyfill it.
       
   994         self.skipped = []
       
   995 
       
   996     # Polyfill.
       
   997     def addSkip(self, test, reason):
       
   998         self.skipped.append((test, reason))
       
   999 
       
  1000         if self.showAll:
       
  1001             self.stream.writeln('skipped %s' % reason)
       
  1002         else:
       
  1003             self.stream.write('s')
       
  1004             self.stream.flush()
       
  1005 
   992 class TextTestRunner(unittest.TextTestRunner):
  1006 class TextTestRunner(unittest.TextTestRunner):
   993     """Custom unittest test runner that uses appropriate settings."""
  1007     """Custom unittest test runner that uses appropriate settings."""
   994 
  1008 
   995     def _makeResult(self):
  1009     def _makeResult(self):
   996         return TestResult(self.stream, self.descriptions, self.verbosity)
  1010         return TestResult(self.stream, self.descriptions, self.verbosity)
  1287                 elif code == '~':
  1301                 elif code == '~':
  1288                     pass
  1302                     pass
  1289                 elif code == '.':
  1303                 elif code == '.':
  1290                     pass
  1304                     pass
  1291                 elif code == 's':
  1305                 elif code == 's':
  1292                     pass
  1306                     self._result.addSkip(self, msg)
  1293                 elif code == 'i':
  1307                 elif code == 'i':
  1294                     pass
  1308                     pass
  1295                 else:
  1309                 else:
  1296                     self.fail('Unknown test result code: %s' % code)
  1310                     self.fail('Unknown test result code: %s' % code)
  1297 
  1311