Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.12/test/test_importlib/source/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.12/test/test_importlib/source/__pycache__/test_file_loader.cpython-312.pyc

�

)Μg���ddlmZmZejd�Zejd�Zejd�Zejd�ZddlZddl	Z	ddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlZddlmZmZddlmZdd	lmZGd
�dej0�Zej4eeeee��\ZZGd
�deee��ZGd�deed��ZGd�d�ZGd�de�Z Gd�de�Z!Gd�d�Z"Gd�de"e �Z#ej4e#eeee��\Z$Z%Gd�de"e!�Z&ej4e&eeee��\Z'Z(Gd�d �Z)Gd!�d"e)e �Z*ej4e*eeee��\Z+Z,Gd#�d$e)e!�Z-ej4e-eeee��\Z.Z/e0d%k(rejb�yy)&�)�abc�util�	importlibz
importlib.abczimportlib.machineryzimportlib.utilN)�make_legacy_pyc�unload)�without_source_date_epoch)�SourceDateEpochTestMetac��eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zej$d��Zd�Zej$d��Zej$d��Zej$d��Zej$d��Zy)�
SimpleTestz�Should have no issue importing a source module [basic]. And if there is
    a syntax error, it should raise a SyntaxError [syntax error].

    c���d|_tjjd|jdz�|_|j
j
|j|j�|_y)N�spam�hamz.py)�name�os�path�join�filepath�	machinery�SourceFileLoader�loader��selfs �H/usr/local/lib/python3.12/test/test_importlib/source/test_file_loader.py�setUpzSimpleTest.setUp sH����	������U�D�I�I��,=�>��
��n�n�5�5�d�i�i����O���c�&�Gd�d|jj�}|dd�}|jtd�t	j
�5t	jdt�|j�}ddd�y#1swYyxYw)Nc��eZdZd�Zd�Zy)�/SimpleTest.test_load_module_API.<locals>.Testerc��y)Nz	attr = 42��r�_s  r�
get_sourcez:SimpleTest.test_load_module_API.<locals>.Tester.get_source's��Krc��y)NFr r!s  r�
is_packagez:SimpleTest.test_load_module_API.<locals>.Tester.is_package(s��ErN)�__name__�
__module__�__qualname__r#r%r rr�Testerr&s��7�1rr)�blahzblah.py�ignore)	r�
FileLoader�
addCleanupr�warnings�catch_warnings�simplefilter�DeprecationWarning�load_module)rr)r�modules    r�test_load_module_APIzSimpleTest.test_load_module_API%sk��	2�T�X�X�(�(�	2���	�*�������'�
�
$�
$�
&��!�!�(�,>�?��'�'�)�F�'�
&�
&�s�+B�Bc��Gd�d|jj�}d}d}|||�}|j||j|��|j||j��|j||jd��|j	t
�5|j|dz�ddd�y#1swYyxYw)Nc��eZdZd�Zd�Zd�Zy)�0SimpleTest.test_get_filename_API.<locals>.Testerc��y�Nr r!s  r�get_codez9SimpleTest.test_get_filename_API.<locals>.Tester.get_code3s��4rc��yr9r r!s  rr#z;SimpleTest.test_get_filename_API.<locals>.Tester.get_source4���Trc��yr9r r!s  rr%z;SimpleTest.test_get_filename_API.<locals>.Tester.is_package5r<rN)r&r'r(r:r#r%r rrr)r72s��'�)�)rr)�	some_path�	some_name�XXX)rr,�assertEqual�get_filename�assertRaises�ImportError)rr)rrrs     r�test_get_filename_APIz SimpleTest.test_get_filename_API0s���	*�T�X�X�(�(�	*�
������d�#������v�2�2�4�8�9�����v�2�2�4�5�����v�2�2�4�8�9�
�
�
�{�
+�����u��-�,�
+�
+�s�$C�Cc��|jj|j|j�}|j	|j
|�yr9)rrrrrAr�r�others  r�
test_equalityzSimpleTest.test_equality@s4�����/�/��	�	�4�=�=�I��������e�,rc��|jjd|jz|j�}|j	|j
|�y)Nr")rrrr�assertNotEqualrrGs  r�test_inequalityzSimpleTest.test_inequalityDs8�����/�/��d�i�i�����O�����D�K�K��/rc��tjd�5}|jjd|d�}t	j
�5t	jdt�|jd�}ddd�|jdtj�d|ddd�}|j�D]!\}}|jt|�|��#	ddd�y#1swY�pxYw#1swYyxYw)N�_tempr+��r&�__file__�__package__�r�create_modulesrrr.r/r0r1r2�assertIn�sys�modules�itemsrA�getattr�r�mappingrr3�check�attr�values       r�test_modulezSimpleTest.test_moduleIs���
�
 �
 ��
)�W��^�^�4�4�W�g�g�>N�O�F��(�(�*��%�%�h�0B�C��+�+�G�4��+�
�M�M�'�3�;�;�/�!(�g�g�6F�$&�(�E�$�{�{�}���e�� � ����!6��>� -�*�
)�*�*��*�
)�s$�4C1�
,C%�6A%C1�%C.	�*C1�1C:c�>�tjd�5}|jjd|d�}t	j
�5t	jdt�|jd�}ddd�|jdtj�d|dtjj|d�gdd�}|j�D]!\}}|j!t#|�|��#	ddd�y#1swY��xYw#1swYyxYw)N�
_pkg.__init__�_pkgr+)r&rQ�__path__rR)rrTrrr.r/r0r1r2rUrVrWrr�dirnamerXrArYrZs       r�test_packagezSimpleTest.test_packageUs���
�
 �
 ��
1�W��^�^�4�4�V�18��1I�K�F��(�(�*��%�%�h�0B�C��+�+�F�3��+�
�M�M�&�#�+�+�.�!'�W�_�5M�"$�'�'�/�/�'�/�2J�"K�!L�$*�,�E� %�{�{�}���e�� � ����!6��>� -�2�
1�+�*��2�
1�s$�4D�
,D�6BD�D	�D�Dc��tjdd�5}|jjd|d�}t	j
�5t	jdt�|jd�}ddd�|jdtj�d|ddd�}|j�D]!\}}|jt|�|��#	ddd�y#1swY�pxYw#1swYyxYw)Nraz_pkg.modr+rbrPrSrZs       r�test_lacking_parentzSimpleTest.test_lacking_parentds���
�
 �
 ��*�
=���^�^�4�4�Z�4;�J�4G�I�F��(�(�*��%�%�h�0B�C��+�+�J�7��+�
�M�M�*�c�k�k�2�!+���9L�$*�,�E�$�{�{�}���e�� � ����!6��>� -�>�
=�+�*��>�
=�s$�4C2�,C&�7A%C2�&C/	�+C2�2C;c����fd�S)z-Fake mtime to always be higher than expected.c����|�dzS)N�r )r�fxns �r�<lambda>z'SimpleTest.fake_mtime.<locals>.<lambda>ss
���C��I��Mrr )rrks `r�
fake_mtimezSimpleTest.fake_mtimeqs	���)�)rc��tjd�5}|jjd|d�}t	j
�5t	jdt�|jd�}ddd�t�}t|j�}t|ddd��5}|jd�ddd�t	j
�5t	jdt�|jd�}ddd�|jd|jdjt|jj!����|j#|t$j&d�|j#t|�|�|j#t|j�|�ddd�y#1swY��VxYw#1swY��xYw#1swY��xYw#1swYyxYw)	NrNr+�w�utf-8��encodingztesting_var = 42
�testing_varz'testing_var' not in {0})rrTrrr.r/r0r1r2�id�__dict__�open�writerU�format�list�keysrArVrW)rr[rr3�	module_id�module_dict_id�files       r�test_module_reusezSimpleTest.test_module_reuseusw��
�
 �
 ��
)�W��^�^�4�4�W�g�g�>N�O�F��(�(�*��%�%�h�0B�C��+�+�G�4��+��6�
�I�����0�N��g�g�&��g�>�$��
�
�/�0�?��(�(�*��%�%�h�0B�C��+�+�G�4��+�
�M�M�-����"�"(�&��f�o�o�.B�.B�.D�)E�"F�
H�
���V�S�[�[��%9�:����R��Z��3����R����0�.�A�#*�
)�*�*��
?�>��*�*��*�
)�sT�4G0�
,G
�69G0�/G�G0�,G$�	B8G0�
G	�G0�G!	�G0�$G-	�)G0�0G9c�d�d}d}d}tj|�5}tj|�}|D]}t	|||��t||dd��5}|j
d�ddd�|jjd|d�}|jt�5|j|�ddd�|D]}|jt||�|�� |jt�5tj�5tj dt"�|j%|�ddd�ddd�|D]}|jt||�|�� 	ddd�y#1swY��xYw#1swY��xYw#1swY�WxYw#1swY�[xYw#1swYyxYw)	N)rQrcrRz<test>rNrorprqz+++ bad syntax +++r+)rrT�types�
ModuleType�setattrrvrwrrrC�SyntaxError�exec_modulerArYr.r/r0r1r2)	r�
attributesr^rr[�orig_moduler]r}rs	         r�test_state_after_failurez#SimpleTest.test_state_after_failure�sc��<�
�����
�
 �
 ��
&�'��*�*�4�0�K�"����T�5�1�#��g�d�m�S�7�;�t��
�
�/�0�<��^�^�4�4�W�g�g�>N�O�F��"�"�;�/��"�"�;�/�0�"��� � ���d�!;�U�C�#��"�"�;�/��,�,�.��)�)�(�4F�G��&�&�t�,�/�0�#��� � ���d�!;�U�C�#�'�
&�<�;��0�/��
/�.��0�/��'�
&�sl�;F&�E5�)<F&�%F�7AF&�7F�,F�8F�+F&�5E?	�:F&�F	�F&�F�F�F#	�F&�&F/c�@�tjd�5}t|ddd��5}|jd�ddd�|jjd|d�}|j
t�5tj�5tjdt�|jd�ddd�ddd�|jdtj�ddd�y#1swY��xYw#1swY�FxYw#1swY�JxYw#1swYyxYw)NrNrorprq�=r+)rrTrvrwrrrCr�r.r/r0r1r2�assertNotInrVrW)rr[r}rs    r�test_bad_syntaxzSimpleTest.test_bad_syntax�s���
�
 �
 ��
)�W��g�g�&��g�>�$��
�
�3��?��^�^�4�4�W�g�g�>N�O�F��"�"�;�/��,�,�.��)�)�(�4F�G��&�&�w�/�/�0�
���W�c�k�k�2�*�
)�>�>��/�.��0�/��	*�
)�sQ�D�C0�<D�6D�,C<�7D�?(D�0C9	�5D�<D�D�D	�
D�Dc�\�d}t|dd��5}|jd�ddd�	tjd�5|jjd|�}t
j�5t
jdt�|jd�}ddd�|j|j�|j|jj|�|j�ddd�tj |�tj"j%|jj|��}tj"j'|�rt)j*|�yy#1swY��axYw#1swY��xYw#1swY��xYw#tj |�tj"j%|jj|��}tj"j'|�rt)j*|�wwxYw)Nz_temp.pyrorprqz# test file for importlibrNr+)rvrwr�uncacherrr.r/r0r1r2rArQ�cache_from_source�
__cached__r�unlinkrrd�exists�shutil�rmtree)r�	file_pathr}r�mod�pycaches      r�test_file_from_empty_string_dirz*SimpleTest.test_file_from_empty_string_dir�s���	�
�)�S�7�
3�t��J�J�2�3�4�
	'����g�&����8�8��)�L���,�,�.��)�)�(�4F�G� �,�,�W�5�C�/�� � ��C�L�L�9�� � ����!<�!<�Y�!G�!$���1�
'�
�I�I�i� ��g�g�o�o�d�i�i�&A�&A�)�&L�M�G��w�w�~�~�g�&��
�
�g�&�'�4�
3��
/�.��'�&��
�I�I�i� ��g�g�o�o�d�i�i�&A�&A�)�&L�M�G��w�w�~�~�g�&��
�
�g�&�'�sH�F�F'�1F�2,F�AF�7F'�F�F	�F�F$� F'�'BH+c��tjd�5}|d}|jj|�}t|dd��5}|j	d�ddd�	tj|d�|jjd|d�}tj d�}|jj#d|�|_|j'|�|j)|j*d
�|j-t
j.j1|��tj2|�t5j6�5t5j8dt:�|j=d�}ddd�|j)j>|�|j)|j*d
�|j-t
j.j1|��ddd�y#1swY���xYw#t$r|jd�Y���t$rJ}|jttdd�k7r�|jd	j|��Yd}~���d}~wwxYw#1swY��xYw#1swYyxYw)NrNrorprqzx = 5)���r�z-cannot set modification time to large integer�	EOVERFLOWz2cannot set modification time to large integer ({})�r+) rrTr�rvrwr�utime�
OverflowError�skipTest�OSError�errnorYrxrrr�r��spec_from_loader�__spec__r�rA�x�
assertTruerr�r�r.r/r0r1r2r�)	rr[�source�compiled�f�err3r�s	         r�test_timestamp_overflowz"SimpleTest.test_timestamp_overflow�s����
 �
 ��
)�W��W�%�F��y�y�2�2�6�:�H��f�c�G�4������ �5�
^�����!;�<��^�^�4�4�W�g�g�>N�O�F��%�%�g�.�F�"�i�i�8�8��&�I�F�O����v�&����V�X�X�q�)��O�O�B�G�G�N�N�8�4�5��I�I�h���(�(�*��%�%�h�0B�C��(�(��1��+�
���S�^�^�X�6����S�U�U�A�&��O�O�B�G�G�N�N�8�4�5�;*�
)�5�4��!�
O��
�
�M�N��
^��7�7�g�e�[�$�?�?���
�
�R�Y�Y�Z[�\�]�]��
^��+�*��-*�
)�ss�/I=�G2�I=� G?�6CI=�,I1�;A.I=�2G<	�7I=�?I.�I=�I.�$?I)�#I=�)I.�.I=�1I:	�6I=�=Jc��|jjdi�}tjd�}|jj	d|�|_|j
t�5|j|�ddd�|j
t�5tj�5tjdt�|jd�ddd�ddd�y#1swY�pxYw#1swY�xYw#1swYyxYw)Nz	good namezbad namer+)rrr�r��
ModuleSpecr�rCrDr�r.r/r0r1r2)rrr3s   r�test_unloadablezSimpleTest.test_unloadable�s������0�0��b�A���!�!�*�-���.�.�3�3�J��G���
�
�
�{�
+����v�&�,�
�
�
�{�
+��(�(�*��%�%�h�0B�C��"�"�:�.�+�,�
+�,�
+��+�*��,�
+�s0�(C)�D�,,C5�D�)C2�5C>	�:D�D
c��tjd�5}|d}|jj|�}t|d�5}|j	d�ddd�tj|d�tj|tjj��|jjd|�}tjd�}|jjd|�|_|j#|�|j%|j&d�t|d�5}|j	d�ddd�tj|d�|j#|�|j%|j&d�t|d	�5}|j)�}ddd�|j%t*j-d
dd�d
�|j%|jj/d�|dd�ddd�y#1swY���xYw#1swY��xYw#1swY��xYw#1swYyxYw)NrN�wb�
state = "old"��2r���invalidation_mode�old�
state = "new"�new�rb���little��)rrTr�rvrwrr��
py_compile�compile�PycInvalidationMode�CHECKED_HASHrrr�r�r�r�r�rA�state�read�int�
from_bytes�source_hash�rr[r��pyc�fprr��datas        r�test_checked_hash_based_pycz&SimpleTest.test_checked_hash_based_pyc�s���
�
 �
 ��
)�W��W�%�F��)�)�-�-�f�5�C��f�d�#�r����)�*�$��H�H�V�X�&�����",�"@�"@�"M�"M�
��^�^�4�4�W�f�E�F��"�"�7�+�C��9�9�5�5�g�v�F�C�L����s�#����S�Y�Y��.��f�d�#�r����)�*�$��H�H�V�X�&����s�#����S�Y�Y��.��c�4��B��w�w�y��!����S�^�^�D��1�I�x�@�$�G�����	�	�%�%�&6�7��Q�r�
�
�1*�
)�$�#��$�#��
!���+*�
)�sV�-H4�H�CH4�-H�?AH4�H(�'AH4�H	�H4�H%	�!H4�(H1	�-H4�4H=c���tjd�5}tjj	dd�5|d}|jj|�}t
|d�5}|jd�ddd�tj|d�tj|tjj��|jjd|�}t!j"d�}|jj%d|�|_|j)|�|j+|j,d�t
|d�5}|jd	�ddd�tj|d�|j)|�|j+|j,d�ddd�ddd�y#1swY��HxYw#1swY�jxYw#1swY�+xYw#1swYyxYw)
NrN�_imp.check_hash_based_pycs�neverr�r�r�r�r�r�)rrT�unittest�mock�patchr�rvrwrr�r�r�r�r�rrr�r�r�r�r�rAr�)rr[r�r�r�rr�s       r�&test_overridden_checked_hash_based_pycz1SimpleTest.test_overridden_checked_hash_based_pycst��
�
 �
 ��
)�W�
�]�]�
 �
 �!=�w�
G��W�%�F��)�)�-�-�f�5�C��f�d�#�r����)�*�$��H�H�V�X�&�����",�"@�"@�"M�"M�
��^�^�4�4�W�f�E�F��"�"�7�+�C��9�9�5�5�g�v�F�C�L����s�#����S�Y�Y��.��f�d�#�r����)�*�$��H�H�V�X�&����s�#����S�Y�Y��.�)H�*�
)�$�#��$�#��!H�
G��*�
)�sT�!G!�-G�$F<�6CG�G	� AG�+G!�<G�G�	G�G�G	�G!�!G*c�T�tjd�5}|d}|jj|�}t|d�5}|j	d�ddd�tj|d�tj|tjj��|jjd|�}tjd�}|jjd|�|_|j#|�|j%|j&d�t|d�5}|j	d�ddd�|j#|�|j%|j&d�t|d�5}|j)�}ddd�|j%t*j-d	d
d�d�|j%|jj/d�|d
d
�ddd�y#1swY���xYw#1swY��xYw#1swY��xYw#1swYyxYw)NrNr�r�r�r�r�r�r�r�r�r�rjr�)rrTr�rvrwrr�r�r�r��UNCHECKED_HASHrrr�r�r�r�r�rAr�r�r�r�r�r�s        r�test_unchecked_hash_based_pycz(SimpleTest.test_unchecked_hash_based_pyc's���
�
 �
 ��
)�W��W�%�F��)�)�-�-�f�5�C��f�d�#�r����)�*�$��H�H�V�X�&�����",�"@�"@�"O�"O�
��^�^�4�4�W�f�E�F��"�"�7�+�C��9�9�5�5�g�v�F�C�L����s�#����S�Y�Y��.��f�d�#�r����)�*�$����s�#����S�Y�Y��.��c�4��B��w�w�y��!����S�^�^�D��1�I�x�@�#�F�����	�	�%�%�&6�7��Q�r�
�
�/*�
)�$�#��$�#��!���)*�
)�sV�-H�G9�CH�-H�?AH�H�AH�9H	�>H�H	�H�H	�H�H'c	��tjd�5}tjj	dd�5|d}|jj|�}t
|d�5}|jd�ddd�tj|d�tj|tjj��|jjd|�}t!j"d�}|jj%d|�|_|j)|�|j+|j,d�t
|d�5}|jd	�ddd�|j)|�|j+|j,d
�t
|d�5}|j/�}ddd�|j+t0j3dd
d�d�|j+|jj5d	�|d
d�ddd�ddd�y#1swY���xYw#1swY��xYw#1swY��xYw#1swY�7xYw#1swYyxYw)NrNr��alwaysr�r�r�r�r�r�r�r�r�r�r�rjr�)rrTr�r�r�r�rvrwrr�r�r�r�r�rrr�r�r�r�r�rAr�r�r�r�r�r�s        r�(test_overridden_unchecked_hash_based_pycz3SimpleTest.test_overridden_unchecked_hash_based_pycEs���
�
 �
 ��
)�W�
�]�]�
 �
 �!=�x�
H��W�%�F��)�)�-�-�f�5�C��f�d�#�r����)�*�$��H�H�V�X�&�����",�"@�"@�"O�"O�
��^�^�4�4�W�f�E�F��"�"�7�+�C��9�9�5�5�g�v�F�C�L����s�#����S�Y�Y��.��f�d�#�r����)�*�$����s�#����S�Y�Y��.��c�4��B��w�w�y��!����S�^�^�D��1�I�x�@�#�F�����	�	�%�%�&6�7��Q�r�
�
�/I�*�
)�$�#��$�#��!���)I�
H��*�
)�sm�!I�-I�$H"�6CI�H/� AI�!H;�2AI�I�"H,�'I�/H8�4I�;I�I�I	�I�IN)r&r'r(�__doc__rr4rErIrLr_rergrmr~r�r�r�r�writes_bytecode_filesr�r�r�r�r�r�r rrrrs����
P�
	*�.� -�0�

?�?�?�*�B�(D�0	3�'�*
��� 6� � 6�D	/�
���� ��<
���/� �/�0
���� ��:
���� �rr)rrrrc��eZdZy)r	N�r&r'r(r rrr	r	k���rr	c��eZdZy)�SourceDateEpoch_SimpleTestNr�r rrr�r�ps��	rr�T)�	metaclass�source_date_epochc���eZdZd�Zdej
jd�d�Zdd�d�Ze	jdd�d��Zdd�d�Zdd�d	�Z
dd�d
�Zdd�d�Zdd�d�Zdd�d
�Zdd�d�Zdd�d�Zdd�d�Zy)�BadBytecodeTestc��t�r9)�NotImplementedError)rr}�module_names   r�import_zBadBytecodeTest.import_xs��!�!rF��
del_sourcer�c���	tjd=tj|||��|s|j
j
||�}n&tj||�t||�}|rWt|d�5}|j�}||�}	ddd�t|d�5}	�|j|	�ddd�|S|S#t$rY��wxYw#1swY�DxYw#1swY|SxYw)zwManipulate the bytecode of a module by passing it into a callable
        that returns what to use as the new bytecode.rNr�r�Nr�)
rVrW�KeyErrorr�r�rr�rr�rrvr�rw)
rrr[�manipulatorr�r��
bytecode_pathr}�bc�new_bcs
          r�manipulate_bytecodez#BadBytecodeTest.manipulate_bytecode{s���	����G�$�	���7�4�=�<M�N�� �I�I�7�7���
�F�M��I�I�g�d�m�$�+�G�D�M�:�M���m�T�*�d��Y�Y�[��$�R���+��m�T�*�d��%��J�J�v�&�+���}����	��	��+�*��+���s)�C�C�/C*�	C�C�C'�*C4�r�c��tjd�5}|jd|d�|��}|d||�ddd�y#1swYyxYw)NrNc��y)Nrr �r�s rrlz2BadBytecodeTest._test_empty_file.<locals>.<lambda>�s��3rr��rrTr��r�testr�r[�bc_paths     r�_test_empty_filez BadBytecodeTest._test_empty_file�sL��
�
 �
 ��
)�W��.�.�w��0>�;E�/�G�G�
��'�7�+�	*�
)�
)���!A�A	c��tjd�5}|jd|d�|��}|d||�ddd�y#1swYyxYw)NrNc��|ddS)Nr�r r�s rrlz5BadBytecodeTest._test_partial_magic.<locals>.<lambda>��
��2�b�q�6rr�r�r�s     r�_test_partial_magicz#BadBytecodeTest._test_partial_magic�sN���
 �
 ��
)�W��.�.�w��0A�;E�/�G�G�
��'�7�+�	*�
)�
)�r�c��tjd�5}|jd|d�|��}|d||�ddd�y#1swYyxYw)NrNc��|ddS)Nr�r r�s rrlz2BadBytecodeTest._test_magic_only.<locals>.<lambda>�r�rr�r�r�s     r�_test_magic_onlyz BadBytecodeTest._test_magic_only�sL��
�
 �
 ��
)�W��.�.�w��0A�;E�/�G�G�
��'�7�+�	*�
)�
)�r�c��tjd�5}|jd|d�|��}|d||�ddd�y#1swYyxYw)NrNc��|ddS)N�r r�s rrlz5BadBytecodeTest._test_partial_flags.<locals>.<lambda>�s
��"�R�a�&rr�r�r�s     r�_test_partial_flagsz#BadBytecodeTest._test_partial_flags�sL��
�
 �
 ��
)�W��.�.�w��/@�:D�/�F�G�
��'�7�+�	*�
)�
)�r�c��tjd�5}|jd|d�|tjj
��}|d||�ddd�tjd�5}|jd|d�|tjj��}|d||�ddd�y#1swY�axYw#1swYyxYw)NrNc��|ddS�N�
r r�s rrlz4BadBytecodeTest._test_partial_hash.<locals>.<lambda>��
��2�c�r�7rr�c��|ddSrr r�s rrlz4BadBytecodeTest._test_partial_hash.<locals>.<lambda>�r	r)rrTr�r�r�r�r�r�s     r�_test_partial_hashz"BadBytecodeTest._test_partial_hash�s���
�
 �
 ��
)�W��.�.���"�%�",�"@�"@�"M�"M�/��G�
��'�7�+�*��
 �
 ��
)�W��.�.���"�%�",�"@�"@�"O�"O�/��G�
��'�7�+�*�
)�*�
)��*�
)�s�:B0�-:B<�0B9�<Cc��tjd�5}|jd|d�|��}|d||�ddd�y#1swYyxYw)NrNc��|ddS)N�r r�s rrlz9BadBytecodeTest._test_partial_timestamp.<locals>.<lambda>��
��2�c�r�7rr�r�r�s     r�_test_partial_timestampz'BadBytecodeTest._test_partial_timestamp��L��
�
 �
 ��
)�W��.�.�w��0B�;E�/�G�G�
��'�7�+�	*�
)�
)�r�c��tjd�5}|jd|d�|��}|d||�ddd�y#1swYyxYw)NrNc��|ddS)N�r r�s rrlz4BadBytecodeTest._test_partial_size.<locals>.<lambda>�rrr�r�r�s     r�_test_partial_sizez"BadBytecodeTest._test_partial_size�rr�c��tjd�5}|jd|d�|��}|s|dn|}|jt�5|j|d�ddd�ddd�y#1swY�xYw#1swYyxYw)NrNc��|ddS)Nr�r r�s rrlz2BadBytecodeTest._test_no_marshal.<locals>.<lambda>�rrr��rrTr�rC�EOFErrorr�)rr�r[r�r�s     r�_test_no_marshalz BadBytecodeTest._test_no_marshal�s}��
�
 �
 ��
)�W��.�.�w��0B�;E�/�G�G�1;���(��I��"�"�8�,����Y��0�-�*�
)�
-�,��*�
)��#�5A;�A/�A;�/A8	�4A;�;Bc��tjd�5}|jd|d�|��}|s|dn|}|jt�5}|j|d�ddd�|j
jjd�|j
|jj|�ddd�y#1swY�^xYw#1swYyxYw)NrNc�8�|ddtjd�zS)Nr�sabcd)�marshal�dumpsr�s rrlz8BadBytecodeTest._test_non_code_marshal.<locals>.<lambda>�s��r�#�2�w����w�9O�/Orr�)
rrTr�rCrDr�rA�	exceptionrr)rr�r[r�r��cms      r�_test_non_code_marshalz&BadBytecodeTest._test_non_code_marshal�s���
�
 �
 ��
)�W� �4�4�W�g�$O�/9�5�;�M�1;���(�
�I��"�"�;�/�2����Y��0�0����R�\�\�.�.��8����R�\�\�.�.�
�>�*�
)�
0�/��*�
)�s$�5C�B;�AC�;C	�C�Cc��tjd�5}|jd|d�|��}|s|dn|}|jt�5|j|d�ddd�ddd�y#1swY�xYw#1swYyxYw)NrNc��|dddzS)Nr�s<test>r r�s rrlz3BadBytecodeTest._test_bad_marshal.<locals>.<lambda>�s��2�c�r�7�Y�;Nrr�r)rr�r[r�r�s     r�_test_bad_marshalz!BadBytecodeTest._test_bad_marshal�s}��
�
 �
 ��
)�W� �4�4�W�g�0N�;E�5�G�M�1;���(�
�I��"�"�8�,����Y��0�-�*�
)�
-�,��*�
)�rc��tjd�5}|jd|d��}|d||�ddd�y#1swYyxYw)NrNc��d|ddzS)N�r�r r�s rrlz1BadBytecodeTest._test_bad_magic.<locals>.<lambda>�s��/B�R���V�/Krr�r�s     r�_test_bad_magiczBadBytecodeTest._test_bad_magic�sB��
�
 �
 ��
)�W��.�.�w��$K�M�G���'�7�+�*�
)�
)�s	�>�AN)r&r'r(r�r�r��	TIMESTAMPr�r�rr�r�rrrrrrr"r%r)r rrr�r�vs���"�
(-�.8�.L�.L�.V�.V��249�,�
���6;�,� �,�49�,�7<�,�6;�,�(;@�,�6;�,�.3�1�49�	?�/4�1�38�,rr�c��eZdZd�Zy)�BadBytecodeTestPEP451c��|j||�}tj|�}|jj	||�|_|j
|�yr9)rr�r�rr�r�r��rr}r�rr3s     rr�zBadBytecodeTestPEP451.import_�sH�����[�$�/���!�!�+�.���)�)�4�4�[�&�I������6�"rN�r&r'r(r�r rrr,r,�s��#rr,c��eZdZd�Zy)�BadBytecodeTestPEP302c��|j||�}tj�5tjdt�|j|�}ddd�|j
|tj�y#1swY�*xYw)Nr+)	rr.r/r0r1r2rUrVrWr.s     rr�zBadBytecodeTestPEP302.import_sa�����[�$�/��
�
$�
$�
&��!�!�(�,>�?��'�'��4�F�'�	
�
�
�k�3�;�;�/�'�
&�s�,A<�<BNr/r rrr1r1s��0rr1c���eZdZed��Zejd��Zd�Zejd��Z	ejd��Z
ejd��Zejd��Zejd��Z
ejd	��Zejd
��Zejd��Zejd��Zejed
���Zejd��Zy)�SourceLoaderBadBytecodeTestc�:�|jj|_yr9)rrr��clss r�
setUpClassz&SourceLoaderBadBytecodeTest.setUpClasss���]�]�3�3��
rc�2���fd�}�j|�y)Nc�����j|||�t|d�5}�jt|j	��d�ddd�y#1swYyxYw�Nr�r��r�rv�
assertGreater�lenr��rr[r�r}rs    �rr�z9SourceLoaderBadBytecodeTest.test_empty_file.<locals>.test�H����L�L�����-��m�T�*�d��"�"�3�t�y�y�{�#3�R�8�+�*�*���*A�A�r��rr�s` r�test_empty_filez+SourceLoaderBadBytecodeTest.test_empty_file����	9�
	
���d�#rc�2���fd�}�j|�y)Nc�����j|||�t|d�5}�jt|j	��d�ddd�y#1swYyxYwr;r<r?s    �rr�z<SourceLoaderBadBytecodeTest.test_partial_magic.<locals>.testr@rA�r�rCs` r�test_partial_magicz.SourceLoaderBadBytecodeTest.test_partial_magics���	9�
	
� � ��&rc�2���fd�}�j|�y)Nc�����j|||�t|d�5}�jt|j	��d�ddd�y#1swYyxYwr;r<r?s    �rr�z9SourceLoaderBadBytecodeTest.test_magic_only.<locals>.test)r@rA�rrCs` r�test_magic_onlyz+SourceLoaderBadBytecodeTest.test_magic_only%rErc�2���fd�}�j|�y)Nc�����j|||�t|d�5}�j|jd��jj
�ddd�y#1swYyxYw)Nr�r�)r�rvrAr�r�MAGIC_NUMBER)rr[r��
bytecode_filers    �rr�z8SourceLoaderBadBytecodeTest.test_bad_magic.<locals>.test4sU����L�L�����-��m�T�*�m�� � ��!3�!3�A�!6�!%���!7�!7�9�+�*�*�s�6A"�"A+�r)rCs` r�test_bad_magicz*SourceLoaderBadBytecodeTest.test_bad_magic0s���	9�	
���T�"rc�2���fd�}�j|�y)Nc�����j|||�t|d�5}�jt|j	��d�ddd�y#1swYyxYwr;r<�rr[r�r}rs    �rr�z@SourceLoaderBadBytecodeTest.test_partial_timestamp.<locals>.test@�H����L�L�����-��g�t�$���"�"�3�t�y�y�{�#3�R�8�%�$�$�rA�rrCs` r�test_partial_timestampz2SourceLoaderBadBytecodeTest.test_partial_timestamp<s���	9�
	
�$�$�T�*rc�2���fd�}�j|�y)Nc�����j|||�t|d�5}�jt|j	��d�ddd�y#1swYyxYwr;r<rVs    �rr�z<SourceLoaderBadBytecodeTest.test_partial_flags.<locals>.testJrWrA�rrCs` r�test_partial_flagsz.SourceLoaderBadBytecodeTest.test_partial_flagsGs���	9�
	
� � ��&rc�2���fd�}�j|�y)Nc�����j|||�t|d�5}�jt|j	��d�ddd�y#1swYyxYwr;r<rVs    �rr�z;SourceLoaderBadBytecodeTest.test_partial_hash.<locals>.testTrWrA�rrCs` r�test_partial_hashz-SourceLoaderBadBytecodeTest.test_partial_hashQs���	9�
	
����%rc�2���fd�}�j|�y)Nc�����j|||�t|d�5}�jt|j	��d�ddd�y#1swYyxYwr;r<rVs    �rr�z;SourceLoaderBadBytecodeTest.test_partial_size.<locals>.test_rWrA�rrCs` r�test_partial_sizez-SourceLoaderBadBytecodeTest.test_partial_size[s���	9�
	
����%rc�$�|j�yr9�rrs r�test_no_marshalz+SourceLoaderBadBytecodeTest.test_no_marshalfs��	
���rc�$�|j�yr9�r"rs r�test_non_code_marshalz1SourceLoaderBadBytecodeTest.test_non_code_marshalks���#�#�%rc�$�|j�yr9)r%rs r�test_bad_marshalz,SourceLoaderBadBytecodeTest.test_bad_marshalqs��	
��� rc��d}tjd�5}tj|d�|jj	|d�}t|d�5}|j
d�|j|�ddd�|j|dd�tjj|d�}|jj|�}t|d�5}|j
d�|j|jd�|�ddd�ddd�y#1swY��xYw#1swY�xYw#1swYyxYw)Nr(rN�r+br�r�r�)rrTr�r�r�rv�seekrwr�rr�getmtimer�_pack_uint32rAr�)r�zerosr[r�rQ�source_mtime�source_timestamps       r�test_old_timestampz.SourceLoaderBadBytecodeTest.test_old_timestampws��
$��
�
 �
 ��
)�W����w�w�/�0� �I�I�7�7���8H�I�M��m�U�+�}��"�"�1�%��#�#�E�*�,�
�L�L���)�7�3��7�7�+�+�G�G�,<�=�L�#�~�~�:�:�<�H���m�T�*�m��"�"�1�%�� � ��!3�!3�A�!6�8H�I�+�*�
)�,�+��+�*��*�
)�s=�AE�#D(�>A&E�$3D4�E�(D1	�-E�4D=	�9E�E	c��tjd�5}tj|d�|jj	|d�}t|d�5}|j
d�|jd�ddd�tj|tjtjztjz�	|j|dd�tj|tj�	ddd�y#1swY��xYw#tj|tj�wxYw#1swYyxYw)NrNrorr()rrTr�r�r�rvrprwr�chmod�stat�S_IRUSR�S_IRGRP�S_IROTHr��S_IWUSR)rr[r�rQs    r�test_read_only_bytecodez3SourceLoaderBadBytecodeTest.test_read_only_bytecode�s����
 �
 ��
)�W����w�w�/�0� �I�I�7�7���8H�I�M��m�U�+�}��"�"�1�%��#�#�$7�8�,�
�H�H�]����t�|�|�3�d�l�l�B�
D�
6����W�W�-�w�7��������5�*�
)�,�+���������5��*�
)�s=�AE�#D�<AE�D� $E�D	�E�&E�E�EN)r&r'r(�classmethodr8rr�rDrIrMrSrYr]rarerhrkrmrrvr~r rrr4r4s[���4��4�
���$� �$�'�
���$� �$�
���	#� �	#�
���+� �+�
���'� �'�
���&� �&�
���&� �&�
��� � � �
���&� �&�

���!� �!�

����J�� �J�$
���6� �6rr4c��eZdZy)�!SourceLoaderBadBytecodeTestPEP451Nr�r rrr�r��r�rr�c��eZdZy)�!SourceLoaderBadBytecodeTestPEP302Nr�r rrr�r��r�rr�c�X�eZdZed��Zd�Zd�Zd�Zd�Zd�Z	d�Z
d�Zd	�Zd
�Z
d�Zy)
�SourcelessLoaderBadBytecodeTestc�:�|jj|_yr9)r�SourcelessFileLoaderrr6s rr8z*SourcelessLoaderBadBytecodeTest.setUpClass�s���]�]�7�7��
rc�6���fd�}�j|d��y)Nc����jt�5}�j||�ddd��jjj
|��j|jj|�y#1swY�VxYwr9�rCrDr�rAr rr�rr[r�r!rs    �rr�z=SourcelessLoaderBadBytecodeTest.test_empty_file.<locals>.test��c����"�"�;�/�2����]�D�1�0����R�\�\�.�.��5����R�\�\�.�.�
�>�0�/���A?�?BTr�rBrCs` rrDz/SourcelessLoaderBadBytecodeTest.test_empty_file�s���	?�	
���d�t��4rc�6���fd�}�j|d��y)Nc����jt�5}�j||�ddd��jjj
|��j|jj|�y#1swY�VxYwr9r�r�s    �rr�z@SourcelessLoaderBadBytecodeTest.test_partial_magic.<locals>.test�r�r�Tr�rHrCs` rrIz2SourcelessLoaderBadBytecodeTest.test_partial_magic�s���	?�
	
� � ��$� �7rc�6���fd�}�j|d��y)Nc�~���jt�5�j||�ddd�y#1swYyxYwr9�rCrr��rr[r�rs   �rr�z=SourcelessLoaderBadBytecodeTest.test_magic_only.<locals>.test��+����"�"�8�,����]�D�1�-�,�,���3�<Tr�rLrCs` rrMz/SourcelessLoaderBadBytecodeTest.test_magic_only�s���	2�	
���d�t��4rc�6���fd�}�j|d��y)Nc����jt�5}�j||�ddd��jjj
|��j|jj|�y#1swY�VxYwr9r�r�s    �rr�z<SourcelessLoaderBadBytecodeTest.test_bad_magic.<locals>.test�r�r�Tr�rRrCs` rrSz.SourcelessLoaderBadBytecodeTest.test_bad_magic�s���	?�	
���T�d��3rc�6���fd�}�j|d��y)Nc�~���jt�5�j||�ddd�y#1swYyxYwr9r�r�s   �rr�zDSourcelessLoaderBadBytecodeTest.test_partial_timestamp.<locals>.test�r�r�Tr�rXrCs` rrYz6SourcelessLoaderBadBytecodeTest.test_partial_timestamp�s���	2�	
�$�$�T�d�$�;rc�6���fd�}�j|d��y)Nc�~���jt�5�j||�ddd�y#1swYyxYwr9r�r�s   �rr�z@SourcelessLoaderBadBytecodeTest.test_partial_flags.<locals>.test�r�r�Tr�r\rCs` rr]z2SourcelessLoaderBadBytecodeTest.test_partial_flags�s���	2�	
� � ��$� �7rc�6���fd�}�j|d��y)Nc�~���jt�5�j||�ddd�y#1swYyxYwr9r�r�s   �rr�z?SourcelessLoaderBadBytecodeTest.test_partial_hash.<locals>.test�r�r�Tr�r`rCs` rraz1SourcelessLoaderBadBytecodeTest.test_partial_hash�����	2�	
������6rc�6���fd�}�j|d��y)Nc�~���jt�5�j||�ddd�y#1swYyxYwr9r�r�s   �rr�z?SourcelessLoaderBadBytecodeTest.test_partial_size.<locals>.test�r�r�Tr�rdrCs` rrez1SourcelessLoaderBadBytecodeTest.test_partial_size�r�rc�(�|jd��y�NTr�rgrs rrhz/SourcelessLoaderBadBytecodeTest.test_no_marshal�s�������.rc�(�|jd��yr�rjrs rrkz5SourcelessLoaderBadBytecodeTest.test_non_code_marshal�s���#�#�t�#�4rN)r&r'r(rr8rDrIrMrSrYr]rarerhrkr rrr�r��sF���8��8�5�8�5�4�<�8�7�7�/�5rr�c��eZdZy)�%SourcelessLoaderBadBytecodeTestPEP451Nr�r rrr�r�r�rr�c��eZdZy)�%SourcelessLoaderBadBytecodeTestPEP302Nr�r rrr�r�r�rr��__main__)2�test.test_importlibrr�import_importlibr�
importlib_abcr�importlib_utilr�rrr�r�ryrVr�r�r.�test.support.import_helperrr�test.test_py_compilerr	�LoaderTestsr�	test_both�Frozen_SimpleTest�Source_SimpleTest�typer�r�r,r1r4r��Frozen_SourceBadBytecodePEP451�Source_SourceBadBytecodePEP451r��Frozen_SourceBadBytecodePEP302�Source_SourceBadBytecodePEP302r�r��"Frozen_SourcelessBadBytecodePEP451�"Source_SourcelessBadBytecodePEP451r��"Frozen_SourcelessBadBytecodePEP302�"Source_SourcelessBadBytecodePEP302r&�mainr rr�<module>r�s��)�!�D�!�!�+�.�	�%��%�%�o�6�
�!�D�!�!�"7�8�	�&��&�&�'7�8����	��
��
����>�:�8�I����I�\
�T�^�^�J�)�y�%�N�<����
	�5�"�#4�5�	�
	�!2�+B�37�	�@,�@,�F#�O�#�0�O�0�Q6�Q6�h	�#�%:�	��T�^�^�5��'�]�'�)����	�#�%:�	��T�^�^�5��'�]�'�)����G5�G5�T	�,K��	��T�^�^�9�Y�'�]�'�)��#�#�	�,K��	��T�^�^�9�Y�'�]�'�)��#�#��z���H�M�M�O�r

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists