##// END OF EJS Templates
smartset: use native set operations as fast paths...
smartset: use native set operations as fast paths For set operations like "&" and "-", where we know both basesets have their sets ready, and the first set is sorted, use the native Python set operations as a fast path. Note: "+" is not optimized as that will break the ordering. This leads to noticeable improvements on performance: revset | before | after | delta ---------------------------------------------------------------- draft() & draft() & draft() & draft() | 776 | 477 | -39% draft() + draft() + draft() + draft() | 2849 | 2864 | draft() - draft() + draft() - draft() | 943 | 240 | -75% draft() - draft() - draft() - draft() | 557 | 197 | -64% (time measured in microseconds)

File last commit:

r28736:403b0a7a default
r31020:2d1bf840 default
Show More
silenttestrunner.py
24 lines | 734 B | text/x-python | PythonLexer
/ tests / silenttestrunner.py
Robert Stanca
py3: use print_function in silenttestrunner.py
r28730 from __future__ import absolute_import, print_function
Robert Stanca
tests: lexicographical imports in silenttestrunner.py
r28736 import os
import sys
Robert Stanca
py3: use absolute_import in silenttestrunner.py
r28729 import unittest
Idan Kamara
tests: add a test runner utility that prints nothing when all tests pass...
r18665
def main(modulename):
'''run the tests found in module, printing nothing when all tests pass'''
module = sys.modules[modulename]
suite = unittest.defaultTestLoader.loadTestsFromModule(module)
results = unittest.TestResult()
suite.run(results)
if results.errors or results.failures:
for tc, exc in results.errors:
Robert Stanca
py3: use print_function in silenttestrunner.py
r28730 print('ERROR:', tc)
print()
Idan Kamara
tests: add a test runner utility that prints nothing when all tests pass...
r18665 sys.stdout.write(exc)
for tc, exc in results.failures:
Robert Stanca
py3: use print_function in silenttestrunner.py
r28730 print('FAIL:', tc)
print()
Idan Kamara
tests: add a test runner utility that prints nothing when all tests pass...
r18665 sys.stdout.write(exc)
sys.exit(1)
Augie Fackler
silenttestrunner: add environment variable to make tests noisy again...
r23308
if os.environ.get('SILENT_BE_NOISY'):
main = unittest.main