Current File : //usr/local/apps/python3/lib/python3.11/test/__pycache__/test_pkg.cpython-311.opt-2.pyc
�

�Ke`&���ddlZddlZddlZddlZddlZd�Zd�ZGd�dej��Ze	dkrej
��dSdS)�Nc�d�tj|��}|D]�}tj�||��}tj�|��r/tj�|��st
|���ptj|����tj|��dS�N)	�os�listdir�path�join�isdir�islink�cleanout�remove�rmdir)�root�names�name�fullnames    �7/usr/local/apps/python3/lib/python3.11/test/test_pkg.pyrrs����J�t���E�� � ���7�<�<��d�+�+��
�7�=�=��"�"�	 �2�7�>�>�(�+C�+C�	 ��X������I�h������H�T�N�N�N�N�N�c�j�d|vr|�d��d|vr|�d��|S)N�__builtins__�__initializing__)r)�lsts r�fixdirrsB�������
�
�>�"�"�"��S� � ��
�
�%�&�&�&��Jrc��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
ejejjdkd
��d���ZdS)�TestPkgc��d|_d|_ttj��|_t
��|_dSr)r�pkgname�list�sysr�syspath�set�modules_to_cleanup)�selfs r�setUpz
TestPkg.setUp0s1����	�����C�H�~�~���"%�%�%����rc����jtjdd�<�jD]}|tjvr
tj|=��jrt
�j���jr*�fd�tjD��}|D]}tj|=�dSdS)Nc�L��g|] }�j|�d��v�|��!S)�.)r�split)�.0rr"s  �r�
<listcomp>z$TestPkg.tearDown.<locals>.<listcomp>@s9���;�;�;���,�$�*�*�S�/�/�9�9��9�9�9r)rrrr!�modulesrrr)r"�
modulenamer*rs`   r�tearDownzTestPkg.tearDown6s�����l��������1�	,�	,�J��S�[�(�(��K�
�+���9�	 ��T�Y�����<�	&�;�;�;�;���;�;�;�G��
&�
&���K��%�%�		&�	&�
&�
&rc�h�ttj|��t��d|i��dS)Nr")�exec�textwrap�dedent�globals)r"�codes  r�run_codezTestPkg.run_codeEs,���X�_�T�
"�
"�G�I�I���~�>�>�>�>�>rc���tj��}tj�d|��t
j�|��stj|��|D]�\}}|���}|j	�
d�|����|}|D]"}t
j�||��}�#|�tj|����t|d��5}|�
|��|�d��s|�
d��ddd��n#1swxYwY��||_|dd|_dS)Nrr&�w�
)�tempfile�mkdtemprr�insertrr	�mkdirr'r!�addr�open�write�endswithrr)	r"�descrrr�contents�compsr�c�fs	         r�mkhierzTestPkg.mkhierHs�����!�!�������4� � � ��w�}�}�T�"�"�	��H�T�N�N�N�#�	&�	&�N�D�(��J�J�L�L�E��#�'�'�������8�8�8��H��
5�
5���7�<�<��!�4�4��������"�"�"�"��(�C�(�(�&�A��G�G�H�%�%�%�#�,�,�T�2�2�&�����
�
�
�&�&�&�&�&�&�&�&�&�&�&����&�&�&�&����	��Q�x��{����s�=AE	�	E
	�E
	c�@�ddg}|�|��ddl}dS)N)�t1N)zt1 __init__.py�r)rDrF)r"�hierrFs   r�test_1zTestPkg.test_1^s,���4�5�����D�����	�	�	�	�	rc�d�gd�}|�|��ddl}ddl}|�|jd��|�|jjd��|�|jjjd��d}|�|��ddlm}ddlm}dd	lm	}|�|jd��|�|jd��|�|jjd��d
D]-}|�
t��dd|z���.ddl}ddl}|�|jd��|�|jjd��|�|jjjd��d
}|�|��dS)N))�t2N)zt2 __init__.pyz'doc for t2')zt2 subN)zt2 sub __init__.pyrG)z
t2 sub subsubN)zt2 sub subsub __init__.py�spam = 1rrKzt2.subz
t2.sub.subsubz{
            import t2
            from t2 import *
            self.assertEqual(dir(), ['self', 'sub', 't2'])
            ��sub��subsub��spam)rRrNrPrKrzFailed to import %sz_
            from t2 import *
            self.assertEqual(dir(), ['self', 'sub'])
            )rD�t2.sub�
t2.sub.subsub�assertEqual�__name__rNrPr3rKrR�
assertTrue�locals)r"rHrK�srNrPrRrs        r�test_2zTestPkg.test_2cs���
�
�
��	
���D�����
�
�
����������d�+�+�+�������(�3�3�3�������/��A�A�A�
��
	
�
�
�a����������!�!�!�!�!�!�&�&�&�&�&�&������x�0�0�0������/�:�:�:������,�o�>�>�>�3�	L�	L�D��O�O�F�H�H�V�,�.C�d�.J�K�K�K�K��
�
�
����������d�+�+�+�������(�3�3�3�������/��A�A�A�
��	
�
�
�a�����rc��gd�}|�|��ddl}|�|jd��|�|jjd��|�|jjjd��dS)N))�t3N)zt3 __init__.pyrG)zt3 subN)zt3 sub __init__.pyrG)z
t3 sub subsubN)zt3 sub subsub __init__.pyrLrr\zt3.subz
t3.sub.subsub)rD�
t3.sub.subsubrUrVrNrP)r"rHr\s   r�test_3zTestPkg.test_3�s�������	
���D�������������d�+�+�+�������(�3�3�3�������/��A�A�A�A�Arc�f�gd�}|�|��d}|�|��dS)N)	)zt4.pyz)raise RuntimeError('Shouldnt load t4.py'))�t4N)zt4 __init__.pyrG)z	t4 sub.py�*raise RuntimeError('Shouldnt load sub.py'))zt4 subN)zt4 sub __init__.pyrG)zt4 sub subsub.py�-raise RuntimeError('Shouldnt load subsub.py'))z
t4 sub subsubN)zt4 sub subsub __init__.pyrLz[
            from t4.sub.subsub import *
            self.assertEqual(spam, 1)
            )rDr3)r"rHrYs   r�test_4zTestPkg.test_4�sH������	
���D����
��	
�
�
�a�����rc��gd�}|�|��ddl}d}|�|��ddl}|�t	t|����gd���|�t	t|j����gd���|�t	t|j����gd���dS)N))�t5N)zt5 __init__.pyz
import t5.foo)zt5 string.pyrL)z	t5 foo.pyz-from . import string; assert string.spam == 1rzo
            from t5 import *
            self.assertEqual(dir(), ['foo', 'self', 'string', 't5'])
            )�
__cached__�__doc__�__file__�
__loader__rV�__package__�__path__�__spec__�foo�stringre)rfrgrhrirVrjrlrn)rfrgrhrirVrjrlrR)rDrer3rUr�dirrmrn)r"rHrerYs    r�test_5zTestPkg.test_5�s������	
���D�����	�	�	�
��	
�
�
�a�����	�	�	������B�����1�1�1�	2�	2�	2�	
�����B�F���,�,�K�K�K�	L�	L�	L�	
�����B�I���/�/�I�I�I�	J�	J�	J�	J�	Jrc���gd�}|�|��ddl}|�tt	|����gd���d}|�|��dS)N))�t6N)zt6 __init__.pyz!__all__ = ['spam', 'ham', 'eggs'])z
t6 spam.pyrG)z	t6 ham.pyrG)z
t6 eggs.pyrGr)	�__all__rfrgrhrirVrjrkrla�
            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'])
            )rDrrrUrror3)r"rHrrrYs    r�test_6zTestPkg.test_6�s�������	
���D�����	�	�	������B�����&�&�&�	'�	'�	'�
��	
�
�
�a�����rc�B�gd�}|�|��d\}}}ddl}|�tt	|����gd���|�|��ddlm}|�tt	|����gd���|�|��|�|��ddlm}|�tt	|����gd���|�|��|�|��|�|��ddl	m
}|�|d	��|�|��|�|��|�|��dS)
N)	)zt7.pyrG)�t7N)zt7 __init__.pyrG)z	t7 sub.pyra)zt7 subN)zt7 sub __init__.pyrG)z
t7 sub .pyrb)z
t7 sub subsubN)zt7 sub subsub __init__.pyrL)NNNr)rfrgrhrirVrjrkrlrMrO)	rfrgrhrirVrjrkrlrRrQ�)rDrvrUrro�assertFalserN�t7.subrP�
t7.sub.subsubrR)	r"rHrvrNrP�tas�subpar�	subsubsub�hams	         r�test_7zTestPkg.test_7�s���
�
�
��	
���D����+���C�����������C���)�)�M�M�M�	N�	N�	N�	
�������$�$�$�$�$�$������F���,�,�M�M�M�	N�	N�	N�	
��������������.�.�.�.�.�.������I���/�/�"�"�"�	#�	#�	#�	
������������������ � � �-�-�-�-�-�-�����a� � � ������������������� � � � � r�z)Docstrings are omitted with -O2 and abovec��ddtjzdzdfg}|�|��ddl}|�|jd��dS)N)�t8Nzt8 __init__�pyz'doc for t8'rz
doc for t8)r�extseprDr�rUrg)r"rHr�s   r�test_8zTestPkg.test_8s]����r�y�(��-�~�>���	
���D�����	�	�	������\�2�2�2�2�2rN)rV�
__module__�__qualname__r#r,r3rDrIrZr^rcrprtr�unittest�skipIfr�flags�optimizer��rrrr.s������(�(�(�
&�
&�
&�?�?�?�#�#�#�,���
-�-�-�^B�B�B� ���*J�J�J�:���6*!�*!�*!�X�X�_�S�Y�'�1�,�@�B�B�3�3�B�B�3�3�3rr�__main__)rrr7r/r�rr�TestCaserrV�mainr�rr�<module>r�s����
�
�
�	�	�	�	�������������
������0w3�w3�w3�w3�w3�h��w3�w3�w3�r�z����H�M�O�O�O�O�O��r