Your IP : 216.73.216.85


Current Path : /opt/alt/python35/lib64/python3.5/test/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/test/__pycache__/test_pkg.cpython-35.opt-2.pyc



���]�%�@s�ddlZddlZddlZddlZddlZddlmZdd�Zdd�ZGdd�dej	�Z
ed	kr�ej�dS)
�N)�supportcCs�tj|�}xb|D]Z}tjj||�}tjj|�rctjj|�rct|�qtj|�qWtj|�dS)N)	�os�listdir�path�join�isdir�islink�cleanout�remove�rmdir)�root�names�name�fullname�r�-/opt/alt/python35/lib64/python3.5/test_pkg.pyr	
s
%
r	cCs6d|kr|jd�d|kr2|jd�|S)N�__builtins__�__initializing__)r
)Zlstrrr�fixdirs


rc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
ejejjdkd�dd��ZdS)�TestPkgcCs7d|_d|_ttj�|_tj�|_dS)N)	r�pkgname�list�sysr�syspathrZ
modules_setup�modules_before)�selfrrr�setUp1s		z
TestPkg.setUpcs��jtjdd�<tj�j��jr<t�j��jr|�fdd�tj	D�}x|D]}tj	|=qhWdS)Ncs.g|]$}�j|jd�kr|�qS)�.)r�split)�.0r)rrr�
<listcomp>?s	z$TestPkg.tearDown.<locals>.<listcomp>)
rrrrZmodules_cleanuprrr	r�modules)rr!rr)rr�tearDown7s	
	
zTestPkg.tearDowncCs&ttj|�t�d|i�dS)Nr)�exec�textwrap�dedent�globals)r�coderrr�run_codeDszTestPkg.run_codec	Cstj�}tjjd|�tjj|�s>tj|�x�|D]�\}}|j�}|}x#|D]}tjj	||�}qjW|dkr�tj|�qEt
|d�}|j|�|r�|ddkr�|jd�|j�qEW||_
|dd|_dS)Nr�w��
���)�tempfile�mkdtemprr�insertrr�mkdirrr�open�write�closerr)	rZdescrrr�contents�compsr�c�frrr�mkhierGs$



	zTestPkg.mkhiercCs)ddg}|j|�ddl}dS)N�t1�t1 __init__.py�r)r9N)r:r;)r8r9)r�hierr9rrr�test_1]s
zTestPkg.test_1cCs�ddddddg}|j|�d
dl}d
dl}|j|jd�|j|jjd�|j|jjjd�d
}|j|�d
dlm}d
dlm}d
dlm	}|j|jd�|j|jd�|j|jjd�x5ddddgD]!}|j
t�dd|�qWd
dl}d
dl}|j|jd�|j|jjd�|j|jjjd�d}|j|�dS)N�t2�t2 __init__.py�'doc for t2'�t2 sub�t2 sub __init__.pyr;�
t2 sub subsub�t2 sub subsub __init__.py�spam = 1rzt2.subz
t2.sub.subsubz{
            import t2
            from t2 import *
            self.assertEqual(dir(), ['self', 'sub', 't2'])
            )�sub)�subsub)�spamrHrFrGrzFailed to import %sz^
            from t2 import *
            self.assertTrue(dir(), ['self', 'sub'])
            )r>N)r?r@)rAN)rBr;)rCN)rDrE)r8Zt2.subZ
t2.sub.subsub�assertEqual�__name__rFrGr(r>rHZ
assertTrue�locals)rr<r>�srFrGrHrrrr�test_2bs:	

zTestPkg.test_2cCswdd
ddddg}|j|�d	dl}|j|jd�|j|jjd
�|j|jjjd�dS)N�t3�t3 __init__.pyr;�t3 sub�t3 sub __init__.py�
t3 sub subsub�t3 sub subsub __init__.py�spam = 1rzt3.subz
t3.sub.subsub)rNN)rOr;)rPN)rQr;)rRN)rSrT)r8Z
t3.sub.subsubrIrJrFrG)rr<rNrrr�test_3�s	
zTestPkg.test_3c
CsEdddddddddg	}|j|�d}|j|�dS)N�t4.py�)raise RuntimeError('Shouldnt load t4.py')�t4�t4 __init__.pyr;�	t4 sub.py�*raise RuntimeError('Shouldnt load sub.py')�t4 sub�t4 sub __init__.py�t4 sub subsub.py�-raise RuntimeError('Shouldnt load subsub.py')�
t4 sub subsub�t4 sub subsub __init__.py�spam = 1z[
            from t4.sub.subsub import *
            self.assertEqual(spam, 1)
            )rVrW)rXN)rYr;)rZr[)r\N)r]r;)r^r_)r`N)rarb)r8r()rr<rLrrr�test_4�s	
zTestPkg.test_4c
Cs�ddddg}|j|�ddl}d	}|j|�ddl}|jtt|��d
ddd
dddddddg�|jtt|j��d
ddd
ddddg�|jtt|j��d
ddd
ddddg�dS)N�t5�t5 __init__.py�
import t5.foo�t5 string.py�spam = 1�	t5 foo.py�-from . import string; assert string.spam == 1rzo
            from t5 import *
            self.assertEqual(dir(), ['foo', 'self', 'string', 't5'])
            �
__cached__�__doc__�__file__�
__loader__rJ�__package__�__path__�__spec__�foo�stringrH)rdN)rerf)rgrh)rirj)r8rdr(rIr�dirrrrs)rr<rdrLrrr�test_5�s(	

zTestPkg.test_5cCs|dddddg}|j|�ddl}|jtt|��d	d
ddd
ddddg	�d}|j|�dS)N�t6�t6 __init__.py�!__all__ = ['spam', 'ham', 'eggs']�
t6 spam.pyr;�	t6 ham.py�
t6 eggs.pyr�__all__rkrlrmrnrJrorprqa�
            import t6
            from t6 import *
            self.assertEqual(fixdir(dir(t6)),
                             ['__all__', '__cached__', '__doc__', '__file__',
                              '__loader__', '__name__', '__package__',
                              '__path__', '__spec__', 'eggs', 'ham', 'spam'])
            self.assertEqual(dir(), ['eggs', 'ham', 'self', 'spam', 't6'])
            )rvN)rwrx)ryr;)rzr;)r{r;)r8rvrIrrtr()rr<rvrLrrr�test_6�s	

	zTestPkg.test_6c	Cs�ddddd d!d"d#d$g	}|j|�d%\}}}ddl}|jtt|��ddddddddg�|j|�ddlm}|jtt|��ddddddddg�|j|�|j|�ddlm}|jtt|��dddddddddg	�|j|�|j|�|j|�ddl	m
}|j|d�|j|�|j|�|j|�dS)&N�t7.pyr;�t7�t7 __init__.py�	t7 sub.py�*raise RuntimeError('Shouldnt load sub.py')�t7 sub�t7 sub __init__.py�
t7 sub .py�-raise RuntimeError('Shouldnt load subsub.py')�
t7 sub subsub�t7 sub subsub __init__.py�spam = 1rrkrlrmrnrJrorprq)rF)rGrH)rHr*)r~r;)rN)r�r;)r�r�)r�N)r�r;)r�r�)r�N)r�r�)NNN)r8rrIrrtZassertFalserFZt7.subrGZ
t7.sub.subsubrH)	rr<rrFrGZtasZsubparZ	subsubsubZhamrrr�test_7�sL	









zTestPkg.test_7�z)Docstrings are omitted with -O2 and abovecCsMddtjddfg}|j|�ddl}|j|jd�dS)N�t8zt8 __init__�pyz'doc for t8'rz
doc for t8)r�N)r�extsepr8r�rIrl)rr<r�rrr�test_8s

zTestPkg.test_8N)rJ�
__module__�__qualname__rr"r(r8r=rMrUrcrur}r��unittestZskipIfr�flags�optimizer�rrrrr/s
/,r�__main__)
rrr-r$r�Ztestrr	rZTestCaserrJ�mainrrrr�<module>s
�