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

�KeH����dZddlZddlZddlZddlmZmZddlZddlmZGd�dej	��Z
e��Gd�dej	����Zed	krej
��dSdS)
zEUnittests for test.support.script_helper.  Who tests the test helper?�N)�
script_helper�requires_subprocess)�mockc��eZdZd�Zd�Zd�Zd�Zejd��d���Z	ejd��d���Z
dS)	�TestScriptHelperc�j�tjdd��}|�d|dd��dS)N�-c�import sys; sys.exit(0)rzreturn code was not 0)r�assert_python_ok�assertEqual)�self�ts  �A/usr/local/apps/python3/lib/python3.11/test/test_script_helper.py�test_assert_python_okz&TestScriptHelper.test_assert_python_ok
s8���*�4�1J�K�K������A�a�D�"9�:�:�:�:�:�c�f�tjdd��\}}}|�d|d��dS)Nr	�sys.exit(0)rzreturn code should not be 0)r�assert_python_failure�assertNotEqual)r
�rc�out�errs    r�test_assert_python_failurez+TestScriptHelper.test_assert_python_failures9��$�:�4��O�O���C�����A�r�#@�A�A�A�A�Arc��|�t��5}tjdd��ddd��n#1swxYwYt	|j��}|�d|��|�d|d���dS)Nr	rz
command line:zunexpected command line��msg)�assertRaises�AssertionErrorrr�str�	exception�assertIn�r
�
error_context�	error_msgs   r�test_assert_python_ok_raisesz-TestScriptHelper.test_assert_python_ok_raisess���
�
�
�~�
.�
.�	@�-��*�4��?�?�?�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@�	@����	@�	@�	@�	@��
�/�0�0�	��
�
�o�y�1�1�1��
�
�m�Y�4M�
�N�N�N�N�N��=�A�Ac��|�t��5}tjdd��ddd��n#1swxYwYt	|j��}|�d|��|�d|d���dS)Nr	r
zProcess return code is 0
zunexpected command line.r)rrrrrr r!r"s   r�!test_assert_python_failure_raisesz2TestScriptHelper.test_assert_python_failure_raisess���
�
�
�~�
.�
.�	Q�-��/��6O�P�P�P�	Q�	Q�	Q�	Q�	Q�	Q�	Q�	Q�	Q�	Q�	Q����	Q�	Q�	Q�	Q��
�/�0�0�	��
�
�2�I�>�>�>��
�
�/��4�	�	6�	6�	6�	6�	6r&zsubprocess.Popenc��tj�tdd���5}t	d��|_	tjddd��n8#t$r+}|�d|jd��Yd}~nd}~wwxYw|�d	|j	��|�d	|j	��|j
dd}|�tj|d��|�
d|��|�
d
|��|�d|��ddd��dS#1swxYwYdS)N� interpreter_requires_environmentF��return_value�bail out of unittestTr	�Noner��-I�-E)r�patch�objectr�RuntimeError�side_effect�_assert_pythonr�args�
call_count�	call_args�sys�
executabler!�assertNotIn�r
�
mock_popen�
mock_ire_funcr�
popen_commands     r�1test_assert_python_isolated_when_env_not_requiredzBTestScriptHelper.test_assert_python_isolated_when_env_not_required&s���
�Z�
�
�}�A�,1��3�3�	2�6C�%1�2H�%I�%I�J�"�
F��,�T�4��@�@�@�@���
F�
F�
F�� � �!7���!��E�E�E�E�E�E�E�E�����
F�������Q�
� 5�6�6�6����Q�
� 8�9�9�9�&�0��3�A�6�M����S�^�]�1�-=�>�>�>��M�M�&�-�0�0�0��M�M�$�
�.�.�.����T�=�1�1�1�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2����	2�	2�	2�	2�	2�	2s;�E�A�E�
B
�!B�E�B
�
B4E�E�Ec���tj�tdd���5}t	d��|_	tjddd��n8#t$r+}|�d|jd��Yd}~nd}~wwxYw|j	dd}|�
d	|��|�
d
|��ddd��dS#1swxYwYdS)z>Ensure that -I is not passed when the environment is required.r*Tr+r-r	r.rNr0r1)rr2r3rr4r5r6rr7r9r<r=s     r�4test_assert_python_not_isolated_when_env_is_requiredzETestScriptHelper.test_assert_python_not_isolated_when_env_is_required8sG���Z�
�
�}�A�,0��2�2�
	2�5B�%1�2H�%I�%I�J�"�
F��,�T�4��@�@�@�@���
F�
F�
F�� � �!7���!��E�E�E�E�E�E�E�E�����
F����&�0��3�A�6�M����T�=�1�1�1����T�=�1�1�1�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2�
	2����
	2�
	2�
	2�
	2�
	2�
	2s;�C�A�C�
B
�!B�C�B
�
AC�C� CN)�__name__�
__module__�__qualname__rrr%r(rr2rArC�rrrrs�������;�;�;�B�B�B�
O�O�O�6�6�6��T�Z�"�#�#�2�2�$�#�2�"�T�Z�"�#�#�2�2�$�#�2�2�2rrc���eZdZdZd�Zd�Zejd��d���Zejd��d���Z	ejd��d���Z
ejd��d���Zd	S)
�TestScriptHelperEnvironmentz5Code coverage for interpreter_requires_environment().c�t�|�ttd����dtjd<dS�N�$__cached_interp_requires_environment)�
assertTrue�hasattrr�__dict__�r
s r�setUpz!TestScriptHelperEnvironment.setUpLsA������M�#I�J�J�	L�	L�	L�JN�
��E�F�F�Frc�$�dtjd<dSrK)rrOrPs r�tearDownz$TestScriptHelperEnvironment.tearDownRs��IM�
��E�F�F�Frzsubprocess.check_callc���tj�tj��5tj�dd��t
jdd��|_|�	tj����|�	tj����|�d|j
��ddd��dS#1swxYwYdS)N�
PYTHONHOME�r/)rr2�dict�os�environ�pop�
subprocess�CalledProcessErrorr5rMrr*rr8�r
�mock_check_calls  r�*test_interpreter_requires_environment_truezFTestScriptHelperEnvironment.test_interpreter_requires_environment_trueVs���
�Z�_�_�R�Z�
(�
(�	<�	<��J�N�N�<��.�.�.�*4�*G��B�*O�*O�O�'��O�O�M�J�L�L�M�M�M��O�O�M�J�L�L�M�M�M����Q�� :�;�;�;�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<����	<�	<�	<�	<�	<�	<s�B"C�C� Cc�r�tj�tj��5tj�dd��t
j��|�t
j����|�	d|j
��ddd��dS#1swxYwYdS)NrUr/)rr2rWrXrYrZrr*�assertFalserr8r]s  r�+test_interpreter_requires_environment_falsezGTestScriptHelperEnvironment.test_interpreter_requires_environment_false_s���
�Z�_�_�R�Z�
(�
(�	<�	<��J�N�N�<��.�.�.��:�<�<�<����]�K�M�M�N�N�N����Q�� :�;�;�;�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<����	<�	<�	<�	<�	<�	<s�A5B,�,B0�3B0c�\�tj�tj��5tj�dd��t
j��|�t
j����|�t
j����|�	d|j
��|jdd}|�	tj
|d��|�d|��ddd��dS#1swxYwYdS)NrUr/rr1)rr2rWrXrYrZrr*rarr8r9r:r;r!)r
r^�check_call_commands   r�-test_interpreter_requires_environment_detailszITestScriptHelperEnvironment.test_interpreter_requires_environment_detailshs:��
�Z�_�_�R�Z�
(�
(�	4�	4��J�N�N�<��.�.�.��:�<�<�<����]�K�M�M�N�N�N����]�K�M�M�N�N�N����Q�� :�;�;�;�!0�!:�1�!=�a�!@�����S�^�-?��-B�C�C�C��M�M�$� 2�3�3�3�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4����	4�	4�	4�	4�	4�	4s�C*D!�!D%�(D%c�v�tj�tj��5dtjd<|�t
j����|�t
j����|�d|j	��ddd��dS#1swxYwYdS)N�
MockedHomerUr)
rr2rWrXrYrMrr*rr8r]s  r�5test_interpreter_requires_environment_with_pythonhomezQTestScriptHelperEnvironment.test_interpreter_requires_environment_with_pythonhomets���
�Z�_�_�R�Z�
(�
(�	<�	<�'3�B�J�|�$��O�O�M�J�L�L�M�M�M��O�O�M�J�L�L�M�M�M����Q�� :�;�;�;�		<�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<�	<����	<�	<�	<�	<�	<�	<s�A7B.�.B2�5B2N)rDrErF�__doc__rQrSrr2r_rbrerhrGrrrIrIHs�������?�?�N�N�N�N�N�N��T�Z�'�(�(�<�<�)�(�<��T�Z�'�(�(�<�<�)�(�<��T�Z�'�(�(�	4�	4�)�(�	4��T�Z�'�(�(�<�<�)�(�<�<�<rrI�__main__)rir[r:rX�test.supportrr�unittestr�TestCaserrIrD�mainrGrr�<module>ros���K�K�����
�
�
�
�	�	�	�	�;�;�;�;�;�;�;�;�����������:2�:2�:2�:2�:2�x�(�:2�:2�:2�z����1<�1<�1<�1<�1<�(�"3�1<�1<���1<�h�z����H�M�O�O�O�O�O��r