Sindbad~EG File Manager

Current Path : /proc/2568807/root/usr/local/lib/python3.12/test/__pycache__/
Upload File :
Current File : //proc/2568807/root/usr/local/lib/python3.12/test/__pycache__/test_utf8_mode.cpython-312.opt-2.pyc

�

'Μg?)����	ddlZddlZddlZddlZddlZddlmZddlmZm	Z	ddl
mZmZdZ
ejdk(ZGd�dej �Zed	k(rej&�yy)
�N)�support)�assert_python_ok�assert_python_failure)�	os_helper�
MS_WINDOWS)�C�POSIX�vxworksc�,�eZdZdddd�Zd�Zdd�d�Zejed�d	��Z	d
�Z
d�Zd�Zd
�Z
d�Zdd�Zd�Zd�Zd�Zd�Zejed�d��Zd�Zejed�ej.�d���Zy)�
UTF8ModeTests��0)�
PYTHONUTF8�PYTHONLEGACYWINDOWSFSENCODING�PYTHONCOERCECLOCALEc�Z�tjtjd�}|tvS)N)�locale�	setlocale�LC_CTYPE�
POSIX_LOCALES)�self�locs  �0/usr/local/lib/python3.12/test/test_utf8_mode.py�posix_localezUTF8ModeTests.posix_locales#�����v����5���}�$�%�F)�failurec��t|jfi|��}|rt|i|��}|d}nt|i|��}|d}|j	�jd�S)N��z

)�dict�DEFAULT_ENVrr�decode�rstrip)rr�args�kw�outs     r�
get_outputzUTF8ModeTests.get_outputsa��
�$�"�"�
)�b�
)���'��4��4�C��a�&�C�"�D�/�B�/�C��a�&�C��z�z�|�"�"�6�*�*rzWindows has no POSIX localec��d}tD]C}|j|��5|jd||��}|j|d�ddd��Ey#1swY�PxYw)N�&import sys; print(sys.flags.utf8_mode)��LC_ALL�-c�1)r�subTestr'�assertEqual)r�coderr&s    r�test_posix_localezUTF8ModeTests.test_posix_locale'sR��7�� �C����S��)��o�o�d�D��o�=��� � ��c�*�*�)�!�)�)�s�'A�A	c�J�d}|jddd|�}|j|d�|jddd|�}|j|d�|jddd|�}|j|d�tr)|jddd|d�	�}|j|d�yy)
Nr)�-X�utf8r,r-zutf8=1�utf8=0r)r)r'r/r�rr0r&s   r�test_xoptionzUTF8ModeTests.test_xoption0s���7���o�o�d�F�D�$�7������c�"��o�o�d�H�d�D�9������c�"��o�o�d�H�d�D�9������c�"���/�/�$���d�@C�"�E�C����S�#�&�rc�&�d}|jd|d��}|j|d�|jd|d��}|j|d�|jddd|d��}|j|d�tr)|jddd|dd�	�}|j|d�|j�s'|jd
d|d��}|j|d�|jd|dd�
�}|j	d|j��y)Nr)r,r-�rrr3r5r4�rr�-E�xxxT)rrz-invalid PYTHONUTF8 environment variable value)r'r/rr�assertInr#r6s   r�test_env_varzUTF8ModeTests.test_env_varDs��7���o�o�d�D�S�o�9������c�"��o�o�d�D�S�o�9������c�"��o�o�d�H�d�D�S�o�I������c�"���/�/�$���d�s�@C�"�E�C����S�#�&�� � �"��/�/�$��d�s�/�C�C����S�#�&��o�o�d�D�U�D�o�I���
�
�E��j�j�l�	$rc���tjd�}trd}nd}|jddd|�}|j	||�tr*|jddd|dd�	�}|j	|d
�yy)Nz�
            import sys
            print("{}/{}".format(sys.getfilesystemencoding(),
                                 sys.getfilesystemencodeerrors()))
        zutf-8/surrogatepasszutf-8/surrogateescaper3r4r,�strictr-r:zmbcs/replace)�textwrap�dedentrr'r/)rr0�expectedr&s    r�test_filesystemencodingz%UTF8ModeTests.test_filesystemencodingds������ �
���,�H�.�H��o�o�d�F�D�$�7������h�'���/�/�$���d�-5�@C�"�E�C�
���S�.�1�
rc�~�tjd�}|jddd|d��}|j|j	�gd��|jddd|d��}|j|j	�gd	��|jddd|d
��}|j|j	�gd��y)Nz�
            import sys
            print(f"stdin: {sys.stdin.encoding}/{sys.stdin.errors}")
            print(f"stdout: {sys.stdout.encoding}/{sys.stdout.errors}")
            print(f"stderr: {sys.stderr.encoding}/{sys.stderr.errors}")
        r3r4r,r
)�PYTHONIOENCODING)zstdin: utf-8/surrogateescapezstdout: utf-8/surrogateescape�stderr: utf-8/backslashreplace�latin1)zstdin: iso8859-1/strictzstdout: iso8859-1/strictz"stderr: iso8859-1/backslashreplacez:namereplace)zstdin: utf-8/namereplacezstdout: utf-8/namereplacerG)rArBr'r/�
splitlinesr6s   r�
test_stdiozUTF8ModeTests.test_stdio{s������ �
���o�o�d�F�D�$�/1��3��������)�<�	=��o�o�d�F�D�$�/7��9��������)�@�	A�
�o�o�d�F�D�$�/=��?��������)�<�	=rc��tjd�}t}|jd||d��}|j	|j�d�y)Nz�
            import sys
            filename = sys.argv[1]
            with open(filename) as fp:
                print(f"{fp.encoding}/{fp.errors}")
        r,r-r9zutf-8/strict)rArB�__file__r'r/�lower)rr0�filenamer&s    r�test_iozUTF8ModeTests.test_io�sH����� �
�����o�o�d�D�(�s�o�C���������n�5rNc�B�t}g}|r|jd|���|r|jd|���tjd�|dj	|�fz}|jd||d��}|sd}|sd	}|j
|j�|�d
|���y)Nz	encoding=zerrors=z�
            import sys
            from %s import open
            filename = sys.argv[1]
            with open(filename, %s) as fp:
                print(f"{fp.encoding}/{fp.errors}")
        z, r,r-r9�utf-8r@�/)rL�appendrArB�joinr'r/rM)r�module�encoding�errorsrNr$r0r&s        r�_check_io_encodingz UTF8ModeTests._check_io_encoding�s���������K�K�)�H�<�0�1���K�K�'�&��,�-���� �
���	�	�$��(�
)���o�o�d�D�(�),��.����H���F���������
�!�F�8�&<�=rc�x�|j|d��|j|d��|j|dd��y)NrH�rV�namereplace)rW)rVrW)rX)rrUs  r�check_io_encodingzUTF8ModeTests.check_io_encoding�sC��������:�����}��=�����)1�-�	 �	Irc�&�|jd�y)N�io�r\�rs r�test_io_encodingzUTF8ModeTests.test_io_encoding�s�����t�$rc�&�|jd�y)N�_pyior_r`s r�test_pyio_encodingz UTF8ModeTests.test_pyio_encoding�s�����w�'rc	��d}|jddd|�}|j|d�tD]E}|j|��5|jddd||��}|j|d�ddd��Gy#1swY�RxYw)Nz[import locale; print(locale.getpreferredencoding(False), locale.getpreferredencoding(True))r3r4r,zutf-8 utf-8r*)r'r/rr.)rr0r&rs    r� test_locale_getpreferredencodingz.UTF8ModeTests.test_locale_getpreferredencoding�sz��l���o�o�d�F�D�$�7������m�,� �C����S��)��o�o�d�F�D�$�s�o�K��� � ��m�4�*�)�!�)�)�s�)A8�8B	ztest specific to Unixc�N����djd���jd�}�jdd�}d����fd�}|d|g�tD])}�j|��5|d|g|��ddd��+tj
d	k(stjstr|}n3tj
jd
�r�jd�}n|}tD])}�j|��5|d|g|��ddd��+y#1swY��xYw#1swY�BxYw)
Nuhé€rQ�ascii�surrogateescapezYimport locale, sys; print("%s:%s" % (locale.getpreferredencoding(), ascii(sys.argv[1:])))c����jd|d��fi|��}|jd�dj�}�j|t	|�|�y)Nr3r,�:r)r'�	partitionr#r/rh)�utf8_optrCr%r&r$�argr0rs     ���r�checkz*UTF8ModeTests.test_cmd_line.<locals>.check�sR���!�$�/�/�$��$��c�H�R�H�C��=�=��%�a�(�/�/�1�D����T�5��?�C�8rr4r*�darwin�aixz
iso-8859-1r5)
�encoder"rr.�sys�platformr�
is_android�VXWORKS�
startswith)r�arg_utf8�	arg_asciiror�c_argrnr0s`     @@r�
test_cmd_linezUTF8ModeTests.test_cmd_line�s�����"�"�7�+���:�:�g�&���J�J�w�(9�:�	�j��	9�
	�f�x�j�!� �C����S��)��f�x�j��5�*�)�!��<�<�8�#�w�'9�'9�W��E�
�\�\�
$�
$�U�
+��J�J�|�,�E��E� �C����S��)��h����4�*�)�!�*�)��*�)�s�&
D�7
D�D	�D$	c��d}|jdddd|�}|j|d�|jdddd|�}|j|d�d	}|jddd
d|�}|j|d�y)Nz%import sys; print(sys.flags.optimize)r3r4z-Or,r-z-OO�2z/import sys; print(sys.flags.ignore_environment)r;)r'r/r6s   r�test_optim_levelzUTF8ModeTests.test_optim_level�s���
7���o�o�d�F�D�$��=������c�"��o�o�d�F�E�4��>������c�"�@���o�o�d�F�D�$��=������c�"rz@os.device_encoding() doesn't implement the UTF-8 Mode on Windowsc���tjj�s|jd�d}|j	t
j|�d|�d�}tjddd|g}tj|d�	�}|j|jd
|�t|d��5}|j�j�}ddd�|jd�y#1swY�xYw)
Nzsys.stdout is not a TTYzout.txtz5import os, sys; fd = sys.stdout.fileno(); out = open(z], "w", encoding="utf-8"); print(os.isatty(fd), os.device_encoding(fd), file=out); out.close()r3r4r,T)�textrrZz
True utf-8)rs�stdout�isatty�skipTest�
addCleanupr�unlink�
executable�
subprocess�runr/�
returncode�open�readr#)rrNr0�cmd�proc�fpr&s       r�test_device_encodingz"UTF8ModeTests.test_device_encoding�s����z�z� � �"��M�M�3�4������	�(�(�(�3��&�\�*����~�~�t�V�T�4�8���~�~�c��-��������!�T�2��(�V�
,���'�'�)�"�"�$�C�-�����l�+�-�
,�s�.C(�(C1)NN)�__name__�
__module__�__qualname__r!rr'�unittest�skipIfrr1r7r>rDrJrOrXr\rardrfr{r~r�requires_subprocessr��rrrrs����)+�"��K�&�).�+��X�_�_�Z�!>�?�+�@�+�'�($�@2�.=�<
6�>�2I�%�(�5��X�_�_�Z�!8�9�5�:�5�4
#��X�_�_�Z�1�2�!�W� � �"�,�#�2�,rr�__main__)rr�rsrAr��testr�test.support.script_helperrr�test.supportrrrrtrv�TestCaserr��mainr�rr�<module>r�sh�����
����N�.��
��<�<�9�$��D,�H�%�%�D,�N�z���H�M�M�O�r

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