You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							95 lines
						
					
					
						
							2.9 KiB
						
					
					
				
			
		
		
	
	
							95 lines
						
					
					
						
							2.9 KiB
						
					
					
				#!/bin/sh | 
						|
''''exec python -u "$0" "$@" #''' | 
						|
 | 
						|
# $Id: alltests.py 8124 2017-06-23 02:29:16Z goodger $ | 
						|
# Author: David Goodger <goodger@python.org> | 
						|
# Copyright: This module has been placed in the public domain. | 
						|
 | 
						|
__doc__ = \ | 
						|
""" | 
						|
All modules named 'test_*.py' in the current directory, and recursively in | 
						|
subdirectories (packages) called 'test_*', are loaded and test suites within | 
						|
are run. | 
						|
""" | 
						|
 | 
						|
import time | 
						|
# Start point for actual elapsed time, including imports | 
						|
# and setup outside of unittest. | 
						|
start = time.time() | 
						|
 | 
						|
import sys | 
						|
import os | 
						|
import platform | 
						|
import DocutilsTestSupport              # must be imported before docutils | 
						|
import docutils | 
						|
 | 
						|
 | 
						|
class Tee: | 
						|
 | 
						|
    """Write to a file and a stream (default: stdout) simultaneously.""" | 
						|
 | 
						|
    def __init__(self, filename, stream=sys.__stdout__): | 
						|
        self.file = open(filename, 'w') | 
						|
        self.stream = stream | 
						|
        self.encoding = getattr(stream, 'encoding', None) | 
						|
 | 
						|
    def write(self, string): | 
						|
        try: | 
						|
            self.stream.write(string) | 
						|
            self.file.write(string) | 
						|
        except UnicodeEncodeError:   # Py3k writing to "ascii" stream/file | 
						|
            string = string.encode('raw_unicode_escape').decode('ascii') | 
						|
            self.stream.write(string) | 
						|
            self.file.write(string) | 
						|
 | 
						|
    def flush(self): | 
						|
        self.stream.flush() | 
						|
        self.file.flush() | 
						|
 | 
						|
 | 
						|
def pformat(suite): | 
						|
    step = 4 | 
						|
    suitestr = repr(suite).replace('=[<', '=[\n<').replace(', ', ',\n') | 
						|
    indent = 0 | 
						|
    output = [] | 
						|
    for line in suitestr.splitlines(): | 
						|
        output.append(' ' * indent + line) | 
						|
        if line[-1:] == '[': | 
						|
            indent += step | 
						|
        else: | 
						|
            if line [-5:] == ']>]>,': | 
						|
                indent -= step * 2 | 
						|
            elif line[-3:] == ']>,': | 
						|
                indent -= step | 
						|
    return '\n'.join(output) | 
						|
 | 
						|
def suite(): | 
						|
    path, script = os.path.split(sys.argv[0]) | 
						|
    suite = package_unittest.loadTestModules(DocutilsTestSupport.testroot, | 
						|
                                             'test_', packages=1) | 
						|
    sys.stdout.flush() | 
						|
    return suite | 
						|
 | 
						|
# must redirect stderr *before* first import of unittest | 
						|
sys.stdout = sys.stderr = Tee('alltests.out') | 
						|
 | 
						|
import package_unittest | 
						|
 | 
						|
 | 
						|
if __name__ == '__main__': | 
						|
    suite = suite() | 
						|
    print ('Testing Docutils %s with Python %s on %s at %s' | 
						|
           % (docutils.__version__, sys.version.split()[0], | 
						|
              time.strftime('%Y-%m-%d'), time.strftime('%H:%M:%S'))) | 
						|
    print ('OS: %s %s %s (%s, %s)' | 
						|
        % (platform.system(), platform.release(), platform.version(), | 
						|
           sys.platform, platform.platform())) | 
						|
    print 'Working directory: %s' % os.getcwd() | 
						|
    print 'Docutils package: %s' % os.path.dirname(docutils.__file__) | 
						|
    sys.stdout.flush() | 
						|
    result = package_unittest.main(suite) | 
						|
    #if package_unittest.verbosity > 1: | 
						|
    #    print >>sys.stderr, pformat(suite) # check the test suite | 
						|
    finish = time.time() | 
						|
    print 'Elapsed time: %.3f seconds' % (finish - start) | 
						|
    sys.exit(not result.wasSuccessful())
 | 
						|
 |