Your IP : 18.191.171.86
3
\8) � @ sl d Z ddlZddlZddlZddlmZmZ ddlmZ dZ dZ
dZd d
� Zdd� Z
G d
d� 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 jj| �rt| j� jd�rtt jj| �rXt jj| t j� �}t jj|�sP|jt j �rT| S |} | d d� j
dd�j
dd�S | S )Nz.py� �\�.�/���)�os�path�isfile�lower�endswith�isabs�relpath�getcwd�
startswith�pardir�replace)�nameZrel_path� r �%/usr/lib64/python3.6/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 @ s� e Zd ZdZdZdZd Z Z Z Z Z
dZddddej
ddddddfdd�dd �Zdd
d�Zdd
� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� Zddd�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|jd�dd � D ]}
t| j|
�| _q(W n|| _|d krTtj}|| _|| _ | | _
|| _|
| _|| _
|d kr�tj r�d| _n|| _|| _|| _|| _tjj|d �| _| j|� | j� 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% r1 r) r2 r3 r* r- r+ r, r. r0 r �partr r r �__init__; s,
zTestProgram.__init__c C s4 |rt |� | jd kr| j� | j� tjd� d S )N� )�print�_discovery_parser�_initArgParsers�_print_helpr( r* )r8 �msgr r r � usageExita s
zTestProgram.usageExitc O sZ | j d kr6t| jj� � ttd| ji � | jj� n t| jj� � ttd| ji � d S )N�prog) r% r<