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

�Key"��&�ddlZddlZddlZddlZddlmZddlmZddlmZddl	m
Z
eddg���Zeddg�	��ZGd
�d��Z
Gd�d
e
ej��ZGd�de
ej��Zedkrej��dSdS)�N)�	os_helper)�
socket_helper)�import_fresh_module)�TESTFN�stat�_stat)�fresh)�blockedc��eZdZdZhd�Zhd�Zhd�Zddddd	d
ddd
dd�
Zidd�dd�dd�dd�dd�dd�dd�dd�dd�dd �d!d �d"d#�d$d%�d&d'�d(d
�d)d�d*d	�ddd+��Zid,d%�d-d�d.d �d/d'�d0d1�d2d�d3d4�d5d�d6d7�d8d9�d:d;�d<d�d=d�d>d�d?d	�d@d�dAdB�Z	dC�Z
e
ZedDfdE�Z
dF�ZejdG���ZejdH���ZejdI���ZejeedJ��dK��dL���ZejejdMkdN��dO���ZejdP���ZdQ�Zeje j!dRkdS��dT���Z"dS)U�TestFilemodeN>�	SF_APPEND�	UF_APPEND�	UF_HIDDEN�	UF_NODUMP�	UF_OPAQUE�SF_ARCHIVED�SF_NOUNLINK�SF_SNAPSHOT�UF_NOUNLINK�SF_IMMUTABLE�UF_IMMUTABLE�
UF_COMPRESSED>
�S_IFBLK�S_IFCHR�S_IFDIR�S_IFIFO�S_IFLNK�S_IFREG�S_IFWHT�S_IFDOOR�S_IFPORT�S_IFSOCK>
�S_ISBLK�S_ISCHR�S_ISDIR�S_ISLNK�S_ISREG�S_ISWHT�S_ISDOOR�S_ISFIFO�S_ISPORT�S_ISSOCKr���������	)
�ST_MODE�ST_INO�ST_DEV�ST_NLINK�ST_UID�ST_GID�ST_SIZE�ST_ATIME�ST_MTIME�ST_CTIME�S_ISUIDi�S_ISGIDi�S_ENFMT�S_ISVTXi�S_IRWXU��S_IRUSR��S_IREAD�S_IWUSR��S_IWRITE�S_IXUSR�@�S_IEXEC�S_IRWXG�8�S_IRGRP� �S_IWGRP��S_IXGRP�S_IRWXO�S_IROTH)�S_IWOTH�S_IXOTH�FILE_ATTRIBUTE_ARCHIVE�FILE_ATTRIBUTE_COMPRESSED�FILE_ATTRIBUTE_DEVICE�FILE_ATTRIBUTE_DIRECTORY�FILE_ATTRIBUTE_ENCRYPTEDi@�FILE_ATTRIBUTE_HIDDEN�FILE_ATTRIBUTE_INTEGRITY_STREAMi��FILE_ATTRIBUTE_NORMAL�"FILE_ATTRIBUTE_NOT_CONTENT_INDEXEDi �FILE_ATTRIBUTE_NO_SCRUB_DATAi�FILE_ATTRIBUTE_OFFLINEi�FILE_ATTRIBUTE_READONLY�FILE_ATTRIBUTE_REPARSE_POINT�FILE_ATTRIBUTE_SPARSE_FILE�FILE_ATTRIBUTE_SYSTEM�FILE_ATTRIBUTE_TEMPORARY�FILE_ATTRIBUTE_VIRTUALic��	tjt��dS#t$r0	tjt��YdS#t$rYYdSwxYwwxYw�N)�os�remover�OSError�rmdir)�selfs �8/usr/local/apps/python3/lib/python3.11/test/test_stat.py�setUpzTestFilemode.setUpQsz��	��I�f��������	�	�	�
���� � � � � � ���
�
�
�����
����	���s&��
A�A�
A�A�A�ATc��|rtj|��j}ntj|��j}|j�|��}||fSrl)rm�lstat�st_moder�statmod�filemode)rq�fnamerurv�modestrs     rr�get_modezTestFilemode.get_mode[sL���	-��h�u�o�o�-�G�G��g�e�n�n�,�G��,�'�'��0�0������c��t|jd|�d��z��}|�|j�|��|��d|z}|jD]s}t|j|d��}|�||krt
|����0||kr|�||�����U|�||�����tdS)N�S_IF�F�S_IS)	�getattrrw�lstrip�assertEqual�S_IFMT�format_funcs�
ValueError�
assertTrue�assertFalse)rq�name�mode�fmt�testname�funcname�funcs       rr�
assertS_ISzTestFilemode.assertS_IScs����d�l�F�T�[�[��-=�-=�$=�>�>�������,�,�T�2�2�C�8�8�8��D�=���)�		-�		-�H��4�<��4�8�8�D��|��x�'�'�$�X�.�.�.���8�#�#������T�
�
�+�+�+�+�� � ���d���,�,�,�,�		-�		-r|c�V�ttd��5	ddd��n#1swxYwYtjdk�rLtjtd��|���\}}|�|d��|�d|��|�|j�	|��|jj
��tjtd��|���\}}|�|d��|�d|��|�|j�	|��|jj��tjtd��|���\}}|�|d	��|�d|��|�|j�	|��|jj��tjtd
��|���\}}|�d|��|�|d��|�|j�	|��d
��dStjtd��|���\}}|�|dd�d
��|�d|��|�|j�
|��|jj��dS)N�w�posixrEz
-rwx------�REGrPz
----rwx---r3z
-------rwxi$z
-r--r--r--r/z-rw)�openrrmr��chmodr{r�r�rw�S_IMODErDrOrVr�r�rqrvrzs   rr�	test_modezTestFilemode.test_modets	��
�&�#�
�
�	�	��	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�
�7�g����H�V�U�#�#�#�#�}�}����G�W����W�l�3�3�3��O�O�E�7�+�+�+����T�\�1�1�'�:�:�!�\�1�
3�
3�
3�
�H�V�U�#�#�#�#�}�}����G�W����W�l�3�3�3��O�O�E�7�+�+�+����T�\�1�1�'�:�:�!�\�1�
3�
3�
3�
�H�V�U�#�#�#�#�}�}����G�W����W�l�3�3�3��O�O�E�7�+�+�+����T�\�1�1�'�:�:�!�\�1�
3�
3�
3�
�H�V�U�#�#�#�#�}�}����G�W��O�O�E�7�+�+�+����W�l�3�3�3����T�\�1�1�'�:�:�E�B�B�B�B�B��H�V�U�#�#�#�#�}�}����G�W����W�R�a�R�[�%�0�0�0��O�O�E�7�+�+�+����T�\�0�0��9�9�!�\�1�
3�
3�
3�
3�
3s�$�(�(c�N�tjt��tjtd��|���\}}|�d|��tjdkr|�|d��dS|�|dd��dS)NrE�DIRr�z
drwx------r�d)rm�mkdirrr�r{r�r�r�r�s   rr�test_directoryzTestFilemode.test_directory�s���
������
��������=�=�?�?��������w�'�'�'�
�7�g������W�l�3�3�3�3�3����W�Q�Z��-�-�-�-�-r|c�d�	tjtj��t��|���\}}|�|dd��|�d|��dS#ttf$r&}tj
t|�����d}~wwxYw)Nr�l�LNK)rm�symlink�getcwdrr{r�r�ro�NotImplementedError�unittest�SkipTest�str)rqrvrz�errs    rr�	test_linkzTestFilemode.test_link�s���	,��J�r�y�{�{�F�+�+�+� $�}�}����G�W����W�Q�Z��-�-�-��O�O�E�7�+�+�+�+�+���,�-�	.�	.�	.��#�C��H�H�-�-�-�����	.���s�+A8�8B/�	!B*�*B/�mkfifozos.mkfifo not availablec���tjdkr&tj�dt
��}nt
}|�tj|��	tj	|d��n/#t$r"}|�d|z��Yd}~nd}~wwxYw|�|��\}}|�
|d��|�d|��dS)N�vxworksz/fifos/rEzos.mkfifo(): %sz
prwx------�FIFO)�sys�platformrm�path�joinr�
addCleanupr�unlinkr��PermissionError�skipTestr{r�r�)rq�	fifo_path�ervrzs     rr�	test_fifozTestFilemode.test_fifo�s����<�9�$�$�����Y��7�7�I�I��I����	�(�)�4�4�4�	1��I�i��'�'�'�'���	1�	1�	1��M�M�+�a�/�0�0�0�0�0�0�0�0�����	1�����=�=��3�3��������,�/�/�/������(�(�(�(�(s�A5�5
B!�?B�B!r�zrequires Posixc���tj�tj��rV|�tjd���\}}|�|dd��|�d|��dD]p}tj�|��rO|�|d���\}}|�|dd��|�d|��dS�qdS)	NF)rur�c�CHR)z/dev/sdaz/dev/hda�b�BLK)rmr��exists�devnullr{r�r�)rqrvrz�blockdevs    rr�test_deviceszTestFilemode.test_devices�s���
�7�>�>�"�*�%�%�	,�#�}�}�R�Z�u�}�E�E��G�W����W�Q�Z��-�-�-��O�O�E�7�+�+�+�0�	�	�H��w�~�~�h�'�'�
�#'�=�=���=�#G�#G� ���� � ����S�1�1�1�����w�/�/�/����	
�	�	r|c�:�tjtj��5}|�t��|���\}}|�|dd��|�d|��ddd��dS#1swxYwYdS)Nr�s�SOCK)�socket�AF_UNIX�bindrr{r�r�)rqr�rvrzs    rr�test_socketzTestFilemode.test_socket�s���
�]�6�>�
*�
*�	-�a�
�F�F�6�N�N�N�#�}�}����G�W����W�Q�Z��-�-�-��O�O�F�G�,�,�,�		-�	-�	-�	-�	-�	-�	-�	-�	-�	-�	-�	-����	-�	-�	-�	-�	-�	-s�A$B�B�Bc���|j���D]1\}}t|j|��}|�|||���2|j���D]1\}}t|j|��}|�|||���2|jD]2}t|j|��}|�|t���3|j	D]2}t|j|��}|�|t���3|j
D]X}t|j|��}|�t|����|�|d��d���YdS)Nr)
�stat_struct�itemsr�rwr��permission_bits�
file_flags�assertIsInstance�int�formatsr�r��callable)rq�key�value�modvaluer�s     rr�test_module_attributesz#TestFilemode.test_module_attributes�sz���*�0�0�2�2�	3�	3�J�C���t�|�S�1�1�H����U�H�c�2�2�2�2��.�4�4�6�6�	3�	3�J�C���t�|�S�1�1�H����U�H�c�2�2�2�2��?�	1�	1�C��t�|�S�1�1�H��!�!�(�C�0�0�0�0��<�	1�	1�C��t�|�S�1�1�H��!�!�(�C�0�0�0�0��$�	)�	)�C��4�<��-�-�D��O�O�H�T�N�N�+�+�+����T�T�!�W�W�a�(�(�(�(�	)�	)r|�win32z-FILE_ATTRIBUTE_* constants are Win32 specificc��t|j�����D]Z\}}|�t	|j|��|��t
|j|��}|�|||���[dSrl)�sorted�file_attributesr�r��hasattrrwr�r�)rqr�r�r�s    rr�test_file_attribute_constantsz*TestFilemode.test_file_attribute_constants�s���!��!5�!;�!;�!=�!=�>�>�	3�	3�J�C���O�O�G�D�L�#�6�6��<�<�<��t�|�S�1�1�H����U�H�c�2�2�2�2�	3�	3r|)#�__name__�
__module__�__qualname__rwr�r�r�r�r�r�rs�tearDownrr{r�r�skip_unless_working_chmodr�r��skip_unless_symlinkr�r��
skipUnlessr�rmr�r�r�r�skip_unless_bind_unix_socketr�r�r�r�r��r|rrrrs��������G�K�K�K�J�I�I�I�G�N�N�N�L�����������
�
�K���6���6��	�6��	�6�	�
	�5��	�5�
�	�5��	�5��	�E��	�5��	�5��	�5��	�5��	�5��	�5�� 	�5�!�"	�5�#�$��'���O�,)� �"�)�#�T�)�	 ��)�	#�B�	)�
	#�E�)�	 ��
)�	*�5�)�	 ��)�	-�d�)�	'��)�	!�$�)�	"�1�)�	'��)�	%�c�)�	 ��)� 	#�C�!)�"	!�%�#)�O�&����H�#�4� � � � �-�-�-�"�(�$3�$3�)�(�$3�L�(�.�.�)�(�.��"�,�,�#�"�,��X�����X�.�.�0I�J�J�)�)�K�J�)��X����G�+�-=�>�>���?�>���/�-�-�0�/�-�)�)�)�$�X�����0�H�J�J�3�3�J�J�3�3�3r|rc��eZdZeZdS)�TestFilemodeCStatN)r�r�r��c_statrwr�r|rrr�r��s�������G�G�Gr|r�c��eZdZeZdS)�TestFilemodePyStatN)r�r�r��py_statrwr�r|rrr�r��s�������G�G�Gr|r��__main__)r�rmr�r��test.supportrr�test.support.import_helperr�test.support.os_helperrr�r�r�TestCaser�r�r��mainr�r|rr�<module>r�sV������	�	�	�	�
�
�
�
�
�
�
�
�"�"�"�"�"�"�&�&�&�&�&�&�:�:�:�:�:�:�)�)�)�)�)�)�
�	�V�G�9�	5�	5�	5��
�
�f�w�i�
8�
8�
8��`3�`3�`3�`3�`3�`3�`3�`3�F������h�&7����������x�'8�����z����H�M�O�O�O�O�O��r|