Edit File: main.cpython-37.pyc
B ����q}�c�+������������������@���st���d�Z�ddlZddlZddlZddlmZmZ�ddlmZ�dZ dZ dZd d ��Zdd��Z d d��ZG�dd��de�ZeZdS�)zUnittest main program�����N����)�loader�runner)�installHandlerTa��Examples: %(prog)s test_module - run tests from test_module %(prog)s module.TestClass - run tests from module.TestClass %(prog)s module.Class.test_method - run specified test method %(prog)s path/to/test_file.py - run tests from test_file.py aF��Examples: %(prog)s - run default set of tests %(prog)s MyTestSuite - run suite 'MyTestSuite' %(prog)s MyTestCase.testSomething - run MyTestCase.testSomething %(prog)s MyTestCase - run all 'test*' test methods in MyTestCase c�������������C���sx���t�j�|��rt|�����d�rtt�j�|��rXt�j�|�t�����}t�j�|�sP|�t�j �rT|�S�|}�|�d�d��� dd�� dd�S�|�S�)Nz.py����\�.�/)�os�path�isfile�lower�endswith�isabs�relpath�getcwd� startswith�pardir�replace)�nameZrel_path��r����2/opt/alt/python37/lib64/python3.7/unittest/main.py� _convert_name���s����r���c�������������C���s���dd��|�D��S�)Nc�������������S���s���g�|�]}t�|��qS�r���)r���)�.0r���r���r���r���� <listcomp>.���s����z"_convert_names.<locals>.<listcomp>r���)�namesr���r���r����_convert_names-���s����r���c�������������C���s���d|�krd|��}�|�S�)N�*z*%s*r���)�patternr���r���r����_convert_select_pattern1���s����r���c���������������@���s����e�Zd�ZdZdZdZd�Z�Z�Z�Z �Z ZdZdddde jddddddfdd�dd �Zdd d�Zdd ��Zdd��Zddd�Zdd��Zdd��Zdd��Zdd��Zd dd�Zdd��ZdS�)!�TestProgramzA command-line program that runs a set of tests; this is primarily for making test modules conveniently executable. Nr����__main__TF)� tb_localsc������������C���s����t�|t�r@t|�|�_x0|�d�dd���D�]} t|�j| �|�_q(W�n||�_|d�krTtj}||�_||�_ | |�_ ||�_| |�_||�_ |d�kr�tjs�d|�_n||�_||�_||�_||�_tj�|d��|�_|��|��|�����d�S�)Nr���r����defaultr���)� isinstance�str� __import__�module�split�getattr�sys�argv�exit�failfast� catchbreak� verbosity�bufferr"����warnoptions�warnings�defaultTest� testRunner� testLoaderr ���r����basename�progName� parseArgs�runTests)�selfr'���r3���r+���r4���r5���r,���r/���r-���r.���r0���r2���r"����partr���r���r����__init__A���s,���� zTestProgram.__init__c�������������C���s4���|rt�|��|�jd�kr|�����|�����t�d��d�S�)N����)�print�_discovery_parser�_initArgParsers�_print_helpr*���r,���)r:����msgr���r���r���� usageExitg���s���� zTestProgram.usageExitc�������������O���sZ���|�j�d�kr6t|�j�����ttd|�ji���|�j����n t|�j�����ttd|�ji���d�S�)N�prog) r'���r>����_main_parserZformat_help� MAIN_EXAMPLESr7���r?���� print_help�MODULE_EXAMPLES)r:����args�kwargsr���r���r���rA���o���s���� zTestProgram._print_helpc�������������C���s����|������|�jd�krpt|�dkrD|d����dkrD|��|dd�����d�S�|�j�|dd���|���|�js�|��g���d�S�n|�j�|dd���|���|�jr�t|�j�|�_ t dkr�d�|�_n6|�jd�kr�d�|�_ n$t|�jt �r�|�jf|�_ nt|�j�|�_ |�����d�S�)Nr����discoverr=���r!���)r@���r'����lenr ���� _do_discoveryrE���� parse_args�testsr���� testNames�__name__r3���r$���r%����list�createTests)r:���r+���r���r���r���r8���x���s(���� zTestProgram.parseArgsc�������������C���st���|�j�r|�j�|�j_�|r@|d�kr"|�jn|��}|�|�j|�j|�j�|�_n0|�jd�kr\|�j�|�j �|�_n|�j� |�j|�j �|�_d�S�)N)�testNamePatternsr5���rK����startr����top�testrP���ZloadTestsFromModuler'���ZloadTestsFromNames)r:����from_discovery�Loaderr���r���r���r���rS�������s���� zTestProgram.createTestsc�������������C���s$���|�����}|��|�|�_|��|�|�_d�S�)N)�_getParentArgParser�_getMainArgParserrE����_getDiscoveryArgParserr?���)r:���Z parent_parserr���r���r���r@�������s����zTestProgram._initArgParsersc�������������C���s����t�jdd�}|jddddddd ��|jd ddddd d ��|jddddd��|�jd�krn|jdddddd��d|�_|�jd�kr�|jdddddd��d|�_|�jd�kr�|jdddddd��d|�_|�jd�kr�|jdd d!td"d#��g�|�_|S�)$NF)Zadd_helpz-vz --verboser/���Zstore_constr=���zVerbose output)�dest�actionZconst�helpz-qz--quietr���zQuiet outputz--localsr"���� store_truez"Show local variables in tracebacks)r]���r^���r_���z-fz --failfastr-���zStop on first fail or errorz-cz--catchr.���z'Catch Ctrl-C and display results so farz-bz--bufferr0���z%Buffer stdout and stderr during testsz-krT����appendz.Only run tests which match the given substring)r]���r^����typer_���)�argparse�ArgumentParser�add_argumentr-���r.���r0���rT���r���)r:����parserr���r���r���rZ�������s>���� zTestProgram._getParentArgParserc�������������C���s2���t�j|gd�}|�j|_|�j|_|jdddd��|S�)N)�parentsrO���r���z?a list of any number of test modules, classes and test methods.)�nargsr_���)rc���rd���r7���rD���rA���rG���re���)r:����parentrf���r���r���r���r[�������s����zTestProgram._getMainArgParserc�������������C���s~���t�j|gd�}d|�j�|_d|_|jddddd��|jd d ddd��|jd dddd��x"dD�]}|j|dt�jt�jd��q\W�|S�)N)rg���z%s discoverzcFor test discovery all test modules must be importable from the top level directory of the project.z-sz--start-directoryrU���z*Directory to start discovery ('.' default))r]���r_���z-pz --patternr���z+Pattern to match tests ('test*.py' default)z-tz--top-level-directoryrV���z<Top level directory of project (defaults to start directory))rU���r���rV����?)rh���r#���r_���)rc���rd���r7���rD���Zepilogre���ZSUPPRESS)r:���ri���rf����argr���r���r���r\�������s���� z"TestProgram._getDiscoveryArgParserc�������������C���sL���d|�_�d|�_d�|�_|d�k r:|�jd�kr,|�����|�j�||���|�jd|d��d�S�)Nr���ztest*.pyT)rX���rY���)rU���r���rV���r?���r@���rN���rS���)r:���r+���rY���r���r���r���rM�������s���� zTestProgram._do_discoveryc���������� ���C���s����|�j�rt���|�jd�krtj|�_t|�jt�r�yVy"|�j|�j|�j|�j |�j |�jd�}W�n.�tk r|���|�j|�j|�j|�j |�j d�}Y�nX�W�q��tk r����|����}Y�q�X�n|�j}|� |�j�|�_|�jr�t�|�j������d�S�)N)r/���r-���r0���r2���r"���)r/���r-���r0���r2���)r.���r���r4���r���ZTextTestRunnerr$���rb���r/���r-���r0���r2���r"���� TypeError�runrW����resultr,���r*���Z wasSuccessful)r:���r4���r���r���r���r9�������s.���� zTestProgram.runTests)N)FN)N)rQ���� __module__�__qualname__�__doc__r'���r/���r-���r.���r0���r7���r2���rT���r?���r���ZdefaultTestLoaderr<���rC���rA���r8���rS���r@���rZ���r[���r\���rM���r9���r���r���r���r���r ���7���s&���# # r ���)rq���r*���rc���r �����r���r���Zsignalsr���Z __unittestrF���rH���r���r���r����objectr ����mainr���r���r���r����<module>���s��� �]