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

�Ke{6���dZddlZddlZddlZddlZddlZddlmZddlZej	ej�
d��d��Gd�dej����Ze
dkrej��dSdS)	z=
Test suite for _osx_support: shared OS X support functions.
�N)�	os_helper�darwinz
requires OS Xc�z�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�ZdS)�Test_OSXSupportc�2�d|_d|_tj�tj����|_|�tj	����|_
dD]%}||j
vr|j
�|���&dS)N�bogus_program_xxxx)
�CFLAGS�LDFLAGS�CPPFLAGS�
BASECFLAGS�	BLDSHARED�LDSHARED�CC�CXX�	PY_CFLAGS�
PY_LDFLAGS�PY_CPPFLAGS�PY_CORE_CFLAGS�PY_CORE_LDFLAGS)�maxDiff�	prog_name�os�path�abspath�getcwd�
temp_path_dir�enterContextr�EnvironmentVarGuard�env�unset)�self�cvs  �@/usr/local/apps/python3/lib/python3.11/test/test__osx_support.py�setUpzTest_OSXSupport.setUps������-����W�_�_�R�Y�[�[�9�9����$�$�Y�%B�%D�%D�E�E���A�	#�	#�B��T�X�~�~�����r�"�"�"��	#�	#�c�N�������fd��D����dS)Nc3�V�K�|]#}�|�|k�d|z�|fV��$dS)�_OSX_SUPPORT_INITIAL_N�)�.0�k�config_vars�
expected_varss  ��r#�	<genexpr>zDTest_OSXSupport.add_expected_saved_initial_values.<locals>.<genexpr>!sT�����;�;�$%�"�1�~��q�)9�9�9�6�q�8��A�� �9�9�9�9�;�;r%)�update�r!r,r-s ``r#�!add_expected_saved_initial_valuesz1Test_OSXSupport.add_expected_saved_initial_valuessS����	���;�;�;�;�;�)4�;�;�;�	;�	;�	;�	;�	;r%c���|jdr|jddz|jd<|jdtj�|j��z|jd<tj|j��|�tj
|j����|�t
j|j��t|jd��5}|�
d��ddd��n#1swxYwYtj|jtj��|�|jtj
|j����dS)N�PATH�:�wz#!/bin/sh
/bin/echo OK
)rrrrrr�unlinkr�assertIsNone�_osx_support�_find_executable�
addCleanup�open�write�chmod�stat�S_IRWXU�assertEqual�r!�fs  r#�test__find_executablez%Test_OSXSupport.test__find_executable%sg���8�F��	6�#�x��/�#�5�D�H�V���8�F�+�b�g�o�o�d�>P�.Q�.Q�Q���������(�(�(����,�7���G�G�H�H�H����	�(�$�.�9�9�9�
�$�.�#�
&�
&�	1�!�
�G�G�/�0�0�0�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1�	1����	1�	1�	1�	1�
������.�.�.������(�9�$�.�I�I�	K�	K�	K�	K�	Ks�D�D�Dc�f�|jdr|jddz|jd<|jdtj�|j��z|jd<tj|j��|�t
j|j��t|jd��5}|�
d��ddd��n#1swxYwYtj|jtj
��|�dtj|j����dS)Nr3r4r5z##!/bin/sh
/bin/echo ExpectedOutput
�ExpectedOutput)rrrrrrr6rr:r;r<r=r>r?r@r8�_read_outputrAs  r#�test__read_outputz!Test_OSXSupport.test__read_output2sE���8�F��	6�#�x��/�#�5�D�H�V���8�F�+�b�g�o�o�d�>P�.Q�.Q�Q���������(�(�(����	�(�$�.�9�9�9�
�$�.�#�
&�
&�	=�!�
�G�G�;�<�<�<�	=�	=�	=�	=�	=�	=�	=�	=�	=�	=�	=����	=�	=�	=�	=�
������.�.�.����)�(�5�d�n�E�E�	G�	G�	G�	G�	Gs�3C�C�Cc��tjd��}|�tj�|��d��dS)N�ccz!cc not found - check xcode-select)r8�_find_build_tool�
assertTruerr�isfile)r!�outs  r#�test__find_build_toolz%Test_OSXSupport.test__find_build_tool>sJ���+�D�1�1���������s�+�+�?�	A�	A�	A�	A�	Ar%c��|�tj��d�t	j������dS)Nr)rK�platform�mac_ver�
startswithr8�_get_system_version)r!s r#�test__get_system_versionz(Test_OSXSupport.test__get_system_versionCsU������(�*�*�1�-�8�8�$0�$D�$F�$F�H�H�	I�	I�	I�	I�	Ir%c���ddi}ddi}d}d}tj|||��|�||��tj|��|�||��dS�Nr�gcc-test -pthreads�clang -pthreads)r8�_save_modified_value�assertNotEqual�_remove_original_valuesr@�r!r,r-r"�newvalues     r#�test__remove_original_valuesz,Test_OSXSupport.test__remove_original_valuesGs����"�
��	
��
�
���$���)�+�r�8�D�D�D����M�;�7�7�7��,�[�9�9�9������4�4�4�4�4r%c��ddi}ddi}|�||��d}d}tj|||��|�||��dSrV)r1r8rYr@r\s     r#�test__save_modified_valuez)Test_OSXSupport.test__save_modified_valueUsq���"�
��	
��
�
�	
�.�.�{�M�J�J�J�
��$���)�+�r�8�D�D�D������4�4�4�4�4r%c��ddi}|���}d}d}tj|||��|�||��dS)NrrW)�copyr8rYr@r\s     r#�#test__save_modified_value_unchangedz3Test_OSXSupport.test__save_modified_value_unchangedbs]���"�
��$�(�(�*�*�
�
��'���)�+�r�8�D�D�D������4�4�4�4�4r%c���ddl}td�|j��d�d��dd�D����}|�|dktj����dS)Nrc3�4K�|]}t|��V��dS)N)�int)r*�is  r#r.zBTest_OSXSupport.test__supports_universal_builds.<locals>.<genexpr>ns@����C�C��c�!�f�f�C�C�C�C�C�Cr%�.�)�
�)rP�tuplerQ�splitr@r8�_supports_universal_builds)r!rP�
mac_ver_tuples   r#�test__supports_universal_buildsz/Test_OSXSupport.test__supports_universal_buildsls��������C�C�,�H�,�.�.�q�1�7�7��<�<�Q�q�S�A�C�C�C�C�C�
�����'�1�(�C�E�E�	G�	G�	G�	G�	Gr%c��d}dddddddd	�}d
dddddd
d	�}|�||��|jdrd|jdznd}tj�|j��|z|jd<|D]�\}}t
j|��|�tj|��t|d��5}|�
d|z��ddd��n#1swxYwYtj|tj
����|�|tj|����dS)N))zgcc-testz i686-apple-darwin11-llvm-gcc-4.2)�clangzclang version 3.1rWz	cc++-test�3-fno-strict-aliasing  -g -O3 -arch ppc -arch i386  �-arch ppc -arch i386   -g�--I. -isysroot /Developer/SDKs/MacOSX10.4u.sdkz(gcc-test -bundle -arch ppc -arch i386 -gzRgcc-test -bundle -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -g)rrr	r
rr
rrXzclang++z%clang -bundle -arch ppc -arch i386 -gzOclang -bundle -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -gr3r4�r5z#!/bin/sh
/bin/echo )r1rrrrrrr6r:r;r<r=r>r?r@r8�_find_appropriate_compiler)r!�	compilersr,r-�suffix�c_name�c_outputrBs        r#�test__find_appropriate_compilerz/Test_OSXSupport.test__find_appropriate_compilerss����	�
#��G�.�C�?�G�	
�	
�� ��G�.�C�<�G�	
�	
�
�	
�.�.�{�M�J�J�J�-1�X�f�-=�E�#����(�(�(�2���7�?�?�4�+=�>�>��G����� )�	+�	+��F�H���V�$�$�$��O�O�I�,�f�5�5�5��f�c�"�"�
<�a����/�(�:�;�;�;�
<�
<�
<�
<�
<�
<�
<�
<�
<�
<�
<����
<�
<�
<�
<��H�V�T�\�*�*�*�*�����(�C�$/�1�1�	2�	2�	2�	2�	2s�C+�+C/	�2C/	c��dddddd�}ddd	d
dd�}|�||��|�|tj|����dS)Nrsrtru�(gcc-4.0 -bundle  -arch ppc -arch i386 -g�Rgcc-4.0 -bundle  -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -g�r	r
rr
r� -fno-strict-aliasing  -g -O3    �    -g�-I.  �gcc-4.0 -bundle    -g�gcc-4.0 -bundle      -g�r1r@r8�_remove_universal_flagsr0s   r#�test__remove_universal_flagsz,Test_OSXSupport.test__remove_universal_flags�s���G�.�C�?�G�
�
��5���,�-�
�
�
�	
�.�.�{�M�J�J�J�����(�@�$/�1�1�	2�	2�	2�	2�	2r%c��dddddd�}ddd	d
dd�}|�||��|�|tj|����dS)Nrsrtz,-I. -isysroot/Developer/SDKs/MacOSX10.4u.sdkr~zQgcc-4.0 -bundle  -arch ppc -arch i386 -isysroot/Developer/SDKs/MacOSX10.4u.sdk -gr�r�r�r�r�r�r�r0s   r#�&test__remove_universal_flags_alternatez6Test_OSXSupport.test__remove_universal_flags_alternate�s���H�.�B�?�F�
�
��5���,�-�
�
�
�	
�.�.�{�M�J�J�J�����(�@�$/�1�1�	2�	2�	2�	2�	2r%c�f�ddddddd�}ddd	dd
dd�}|�||��|jdrd
|jdznd}tj�|j��|z|jd<d}t
j|��|�tj|��t|d��5}|�
d��ddd��n#1swxYwYtj|tj
��|�|tj|����dS)Nrrrsrtrur~r�rr	r
rr
rz*-fno-strict-aliasing  -g -O3  -arch i386  z -arch i386   -gzgcc-4.0 -bundle   -arch i386 -gzIgcc-4.0 -bundle   -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -gr3r4rvr5z#!/bin/sh
exit 255)r1rrrrrrr6r:r;r<r=r>r?r@r8�_remove_unsupported_archs)r!r,r-ryrzrBs      r#�test__remove_unsupported_archsz.Test_OSXSupport.test__remove_unsupported_archs�s����G�.�C�?�G�

�
���>�%�C�6�G�

�
�
�	
�.�.�{�M�J�J�J�-1�X�f�-=�E�#����(�(�(�2���7�?�?�4�+=�>�>��G���������� � � ����	�(�&�1�1�1�
�&�#�
�
�	+�!�
�G�G�)�*�*�*�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+�
�����&�&�&�����(�B�$/�1�1�	2�	2�	2�	2�	2s�=C�C#�&C#c��d|jd<ddddddd	�}dd
dddd
d	�}|�||��|�|tj|����dS)Nz-arch x86_64�	ARCHFLAGSrrrsrtrur~zQgcc-4.0 -bundle -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -gr�z--fno-strict-aliasing  -g -O3     -arch x86_64z    -g -arch x86_64z"gcc-4.0 -bundle    -g -arch x86_64zKgcc-4.0 -bundle   -isysroot /Developer/SDKs/MacOSX10.4u.sdk -g -arch x86_64)rr1r@r8�_override_all_archsr0s   r#�test__override_all_archsz(Test_OSXSupport.test__override_all_archs�s��� .������G�.�C�?�G�

�
���A�(�C�9�J�

�
�
�	
�.�.�{�M�J�J�J�����(�<�$/�1�1�	2�	2�	2�	2�	2r%c��ddddddd�}dddd	dd
d�}|�||��|�|tj|����dS)Nrr�[-fno-strict-aliasing  -g -O3 -arch ppc -arch i386  -isysroot /Developer/SDKs/MacOSX10.1.sdkrtz,-I. -isysroot /Developer/SDKs/MacOSX10.1.sdkr~zQgcc-4.0 -bundle  -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.1.sdk -gr��4-fno-strict-aliasing  -g -O3 -arch ppc -arch i386   r��)gcc-4.0 -bundle  -arch ppc -arch i386  -g�r1r@r8�_check_for_unavailable_sdkr0s   r#�test__check_for_unavailable_sdkz/Test_OSXSupport.test__check_for_unavailable_sdks����C�.�B�?�F�	
�	
����.��?��	
�	
�
�	
�.�.�{�M�J�J�J�����(�C�$/�1�1�	2�	2�	2�	2�	2r%c��ddddddd�}dddd	dd
d�}|�||��|�|tj|����dS)NrrzZ-fno-strict-aliasing  -g -O3 -arch ppc -arch i386  -isysroot/Developer/SDKs/MacOSX10.1.sdkrtz+-I. -isysroot/Developer/SDKs/MacOSX10.1.sdkr~zPgcc-4.0 -bundle  -arch ppc -arch i386 -isysroot/Developer/SDKs/MacOSX10.1.sdk -gr�r�r�r�r�r0s   r#�)test__check_for_unavailable_sdk_alternatez9Test_OSXSupport.test__check_for_unavailable_sdk_alternates����B�.�A�?�E�	
�	
����.��?��	
�	
�
�	
�.�.�{�M�J�J�J�����(�C�$/�1�1�	2�	2�	2�	2�	2r%c�j�ddd�}tj|ddd��}|�d|��dS)Nr��10.6)r	�MACOSX_DEPLOYMENT_TARGET� )�macosxr��fat)r8�get_platform_osxr@)r!r,�results   r#�test_get_platform_osxz%Test_OSXSupport.test_get_platform_osx:sL��C�$*�
�
��
�.�{�C��c�J�J�����2�F�;�;�;�;�;r%N)�__name__�
__module__�__qualname__r$r1rCrGrNrTr^r`rcrpr|r�r�r�r�r�r�r�r)r%r#rrs3������
#�
#�
#�;�;�;�K�K�K�
G�
G�
G�A�A�A�
I�I�I�5�5�5�5�5�5�5�5�5�G�G�G�%2�%2�%2�N2�2�2�,2�2�2�. 2� 2� 2�D2�2�2�42�2�2�62�2�2�8	<�	<�	<�	<�	<r%r�__main__)�__doc__rrPr>�sys�unittest�test.supportrr8�
skipUnlessrR�TestCaserr��mainr)r%r#�<module>r�s�����
�	�	�	���������
�
�
�
�����"�"�"�"�"�"��������S�\�,�,�X�6�6��H�H�s<�s<�s<�s<�s<�h�'�s<�s<�I�H�s<�j	�z����H�M�O�O�O�O�O��r%