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

�Ke����ddlZddlZddlZddlmZmZGd�dej��ZGd�dej��Ze	dkrej
��dSdS)�N)�	swap_item�	swap_attrc�R�eZdZ	d�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
dS)
�RebindBuiltinsTestsc��	dS�N�)�self�func�argss   �;/usr/local/apps/python3/lib/python3.11/test/test_dynamic.py�configure_funcz"RebindBuiltinsTests.configure_funcs��	�	
��c��d�}|�|��|�|��d��tt��dd���5|�|��d��ddd��dS#1swxYwYdS)Nc�$�tgd���S�N)�����lenr	rr
�fooz=RebindBuiltinsTests.test_globals_shadow_builtins.<locals>.foo����y�y�y�>�>�!rrrc��dS�N�r	��xs r
�<lambda>zBRebindBuiltinsTests.test_globals_shadow_builtins.<locals>.<lambda>$s��1�rr�r�assertEqualr�globals�r
rs  r
�test_globals_shadow_builtinsz0RebindBuiltinsTests.test_globals_shadow_builtinss���	"�	"�	"����C� � � ���������"�"�"�
�w�y�y�%���
5�
5�	'�	'����S�S�U�U�A�&�&�&�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'����	'�	'�	'�	'�	'�	's�B�B�Bc��d�}|�|��|�|��d��ttdd���5|�|��d��ddd��dS#1swxYwYdS)Nc�$�tgd���Srrr	rr
rz5RebindBuiltinsTests.test_modify_builtins.<locals>.foo)rrrrc��dSrr	rs r
rz:RebindBuiltinsTests.test_modify_builtins.<locals>.<lambda>.���!�rr)rr!r�builtinsr#s  r
�test_modify_builtinsz(RebindBuiltinsTests.test_modify_builtins's���	"�	"�	"����C� � � ���������"�"�"�
�x����
4�
4�	'�	'����S�S�U�U�A�&�&�&�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'����	'�	'�	'�	'�	'�	's�A:�:A>�A>c�6�d�}|�|��|��}|�t|��d��ttdd���5|�t|��d��ddd��dS#1swxYwYdS)Nc3�lK�td��}t|��V�t|��V�dS�Nr��rangerrs r
rzLRebindBuiltinsTests.test_modify_builtins_while_generator_active.<locals>.foo3�3�����a���A��a�&�&�L�L�L��a�&�&�L�L�L�L�Lrrrc��dSrr	rs r
rzQRebindBuiltinsTests.test_modify_builtins_while_generator_active.<locals>.<lambda>;r(rr)rr!�nextrr)�r
r�gs   r
�+test_modify_builtins_while_generator_activez?RebindBuiltinsTests.test_modify_builtins_while_generator_active1s���	�	�	�	
���C� � � ��C�E�E������a���!�$�$�$�
�x����
4�
4�	)�	)����T�!�W�W�a�(�(�(�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)����	)�	)�	)�	)�	)�	)s�$B�B�Bc���ttdt��5d�}d�}|�|d���|�||��ddg��ddd��dS#1swxYwYdS)Nrc� �d�t_dS)Nc��dS)N�r	rs r
rzZRebindBuiltinsTests.test_modify_builtins_from_leaf_function.<locals>.bar.<locals>.<lambda>C����r)r)rr	rr
�barzHRebindBuiltinsTests.test_modify_builtins_from_leaf_function.<locals>.barBs��*�{����rc���g}|�ttd������|��|�ttd������|Sr)�appendrr/)�modifier�ls  r
rzHRebindBuiltinsTests.test_modify_builtins_from_leaf_function.<locals>.fooEsS��������U�1�X�X���'�'�'���
�
�
�����U�1�X�X���'�'�'��rc��dSrr	r	rr
rzMRebindBuiltinsTests.test_modify_builtins_from_leaf_function.<locals>.<lambda>Ks��T�rrr9)rr)rrr!)r
r;rs   r
�'test_modify_builtins_from_leaf_functionz;RebindBuiltinsTests.test_modify_builtins_from_leaf_function>s����x���
,�
,�	/�	/�
+�
+�
+�
�
�
�
����\�\�2�2�2����S�S��X�X��1�v�.�.�.�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/����	/�	/�	/�	/�	/�	/s�?A(�(A,�/A,c���d�}|�|��dd�i}||d�d�}|�td|��d��|�tdd|i��d��dS)	Nc�$�tgd���Srrr	rr
rzQRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_eval.<locals>.fooPrrrc��dSrr	rs r
rzVRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_eval.<locals>.<lambda>U���!�rc��dS�N�r	rs r
rzVRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_eval.<locals>.<lambda>Wr:r�r�__builtins__rzfoo()rr)rr!�eval)r
r�
builtins_dict�globals_dicts    r
�0test_cannot_change_globals_or_builtins_with_evalzDRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_evalOs���	"�	"�	"����C� � � ����,�
�"�M�*�{�,�,������g�|�4�4�a�8�8�8�����g��s�|�4�4�a�8�8�8�8�8rc��d�}|�|��d|i}td|��|�|dd��dd�i}||d�d	�}td|��|�|dd��dS)
Nc�$�tgd���Srrr	rr
rzQRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_exec.<locals>.foo]rrrz	x = foo()rrrc��dSrr	rs r
rzVRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_exec.<locals>.<lambda>frErc��dSrGr	rs r
rzVRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_exec.<locals>.<lambda>hr:rrI)r�execr!)r
rrMrLs    r
�0test_cannot_change_globals_or_builtins_with_execzDRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_exec\s���	"�	"�	"����C� � � ��s�|���[�,�'�'�'�����c�*�A�.�.�.����,�
�"�M�*�{�,�,��	
�[�,�'�'�'�����c�*�A�.�.�.�.�.rc�H�d�}|�|��|��}|�t|��d��tt	��ddd�i��5|�t|��d��ddd��dS#1swxYwYdS)Nc3�lK�td��}t|��V�t|��V�dSr-r.rs r
rzORebindBuiltinsTests.test_cannot_replace_builtins_dict_while_active.<locals>.foonr0rrrJrc��dSrr	rs r
rzTRebindBuiltinsTests.test_cannot_replace_builtins_dict_while_active.<locals>.<lambda>v���A�r)rr!r2rr"r3s   r
�.test_cannot_replace_builtins_dict_while_activezBRebindBuiltinsTests.test_cannot_replace_builtins_dict_while_activems���	�	�	�	
���C� � � ��C�E�E������a���!�$�$�$�
�w�y�y�.�5�+�+�2F�
G�
G�	)�	)����T�!�W�W�a�(�(�(�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)����	)�	)�	)�	)�	)�	)s�&$B�B�Bc� �d�}|�|��|�|��d��tt��ddd�i��5|�|��d��ddd��dS#1swxYwYdS)Nc�$�tgd���Srrr	rr
rzPRebindBuiltinsTests.test_cannot_replace_builtins_dict_between_calls.<locals>.foozrrrrJrc��dSrr	rs r
rzURebindBuiltinsTests.test_cannot_replace_builtins_dict_between_calls.<locals>.<lambda>rXrr r#s  r
�/test_cannot_replace_builtins_dict_between_callszCRebindBuiltinsTests.test_cannot_replace_builtins_dict_between_callsys���	"�	"�	"����C� � � ���������"�"�"�
�w�y�y�.�5�+�+�2F�
G�
G�	'�	'����S�S�U�U�A�&�&�&�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'����	'�	'�	'�	'�	'�	's�B�B�
Bc��dd�i}td|��}|�|��|�|��d��dS)Nrc��dSrr	rs r
rzKRebindBuiltinsTests.test_eval_gives_lambda_custom_globals.<locals>.<lambda>�r:rzlambda: len([])r)rKrr!)r
rMrs   r
�%test_eval_gives_lambda_custom_globalsz9RebindBuiltinsTests.test_eval_gives_lambda_custom_globals�sT���{�{�+���$�l�3�3�����C� � � ���������"�"�"�"�"rc�R�Gd�dt��}dd�d�td��D����z}t||����}t	td����}td��D] }|�|��|���!dS)Nc��eZdZd�ZdS)�ZRebindBuiltinsTests.test_load_global_specialization_failure_keeps_oparg.<locals>.MyGlobalsc�F�t|�d����S)N�_number_)�int�removeprefix)r
�keys  r
�__missing__zfRebindBuiltinsTests.test_load_global_specialization_failure_keeps_oparg.<locals>.MyGlobals.__missing__�s���3�+�+�J�7�7�8�8�8rN)�__name__�
__module__�__qualname__rir	rr
�	MyGlobalsrc�s#������
9�
9�
9�
9�
9rrmzlambda: �+c3� K�|]	}d|��V��
dS)reNr	)�.0�is  r
�	<genexpr>zZRebindBuiltinsTests.test_load_global_specialization_failure_keeps_oparg.<locals>.<genexpr>�s(����$I�$I��^��^�^�$I�$I�$I�$I�$I�$Iri��)�dict�joinr/rK�sumr!)r
rm�code�sum_1000�expected�_s      r
�3test_load_global_specialization_failure_keeps_opargzGRebindBuiltinsTests.test_load_global_specialization_failure_keeps_oparg�s���	9�	9�	9�	9�	9��	9�	9�	9��C�H�H�$I�$I�U�4�[�[�$I�$I�$I�I�I�I����i�i�k�k�*�*���u�T�{�{�#�#���r���	3�	3�A����X�X�Z�Z��2�2�2�2�	3�	3rN)rjrkrlrr$r*r5rArNrTrYr]r`r{r	rr
rr
s�������G�

�

�

�'�'�'�'�'�'�)�)�)�/�/�/�"9�9�9�/�/�/�"
)�
)�
)�'�'�'�#�#�#�3�3�3�3�3rrc��eZdZd�Zd�ZdS)�TestTracingc��|�tjtj����tjd��dSr)�
addCleanup�sys�settrace�gettrace)r
s r
�setUpzTestTracing.setUp�s4�������c�l�n�n�5�5�5���T�����rc�H�����fd��d�G��fd�d����fd�}�fd�}�fd�}|||fD]r}|�|j��5td��D]}|���
d	�|��tjd��d�ddd��n#1swxYwY�sdS)
Nc����Srr	)�frame�event�arg�traces   �r
r�z4TestTracing.test_after_specialization.<locals>.trace�s����LrFc�"��eZdZd�Z��fd�ZdS)�0TestTracing.test_after_specialization.<locals>.Cc��||_dSrr)r
rs  r
�__init__z9TestTracing.test_after_specialization.<locals>.C.__init__�s
������rc�8���rtj���dSdSr)r�r�)r
r��
turn_on_traces ��r
�__del__z8TestTracing.test_after_specialization.<locals>.C.__del__�s+��� �(��L��'�'�'�'�'�(�(rN)rjrkrlr�r�)r�r�s��r
�Cr��sB�������
�
�
�
(�
(�
(�
(�
(�
(�
(�
(rr�c�6���d��jtfdS�Nr)rr�r�s�r
�fz0TestTracing.test_after_specialization.<locals>.f�s���
�A�a�D�D�F�C�K�K�K�Krc�6��dg�d��jdSr�rr�s�r
r4z0TestTracing.test_after_specialization.<locals>.g�s���
�C���!����K�K�K�Krc�.��d�d��jzdSr�rr�s�r
�hz0TestTracing.test_after_specialization.<locals>.h�s���
���!����J�J�J�Jr�:T)�subTestrjr/r�r�)	r
r�r4r�rrzr�r�r�s	      @@@r
�test_after_specializationz%TestTracing.test_after_specialization�sy�����	�	�	�	�	��
�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	(�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	���1�I�	&�	&�D����d�m�,�,�
&�
&��r�����A��D�F�F�F�F� $�
��������T�"�"�"� %�
�

&�
&�
&�
&�
&�
&�
&�
&�
&�
&�
&����
&�
&�
&�
&��	&�	&s�?B�B	�B	N)rjrkrlr�r�r	rr
r}r}�s2���������!&�!&�!&�!&�!&rr}�__main__)r)r��unittest�test.supportrr�TestCaserr}rj�mainr	rr
�<module>r�s�������
�
�
�
�����-�-�-�-�-�-�-�-�J3�J3�J3�J3�J3�(�+�J3�J3�J3�Z'&�'&�'&�'&�'&�(�#�'&�'&�'&�T�z����H�M�O�O�O�O�O��r