Sindbad~EG File Manager
�
(Μgn � � � d dl Z d dlZd dlmZ ej d� ZdZ G d� de j � Ze dk( r e j � yy)� N)�
import_helper� _testcapic � � e Zd Zd� Zd� Zd� Zd� Zd� Zd� Zd� Z d� Z
d � Zd
� Zd� Z
d� Zd
� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zy)�CAPITestc �� � t j }| j |dt � d� | j |dd� d� d}d}| j ||t � |� | j ||d� |� | j ||d� |j d� � | j t ||d� | j ||dd� d � | j |t |� t � |� | j |t |� d� |� | j t |dd
� | j t ||dd
� | j t |dt � | j t |dd� | j t |g t � | j t |g d� | j t |t t � | j t |t d� y )N� abc�abc�ascii�
a¡你😀�
a¡你😀�utf-8�latin1�replaceu a����������foo)r �unicode_fromencodedobject�assertEqual�NULL�decode�assertRaises�UnicodeDecodeError� bytearray�LookupError� TypeError�SystemError)�self�fromencodedobject�b�ss �7/usr/local/lib/python3.12/test/test_capi/test_codecs.py�test_fromencodedobjectzCAPITest.test_fromencodedobject s� � �0�%�?�?�����*�6�4�8�%�@����*�6�7�;�U�C�4��#�����*�1�d�3�Q�7����*�1�g�6��:����*�1�h�7����(�9K�L����,�.?��G�L����*�1�g�y�A�)� +����*�9�Q�<��>��B����*�9�Q�<��A�1�E����+�'8�&�%�H����+�'8�!�W�e�L����)�%6��t�D����)�%6��w�G����)�%6��D�A����)�%6��G�D����+�'8�$��E����+�'8�$��H� c � � t j }| j |dd� d� | j |dd� d� | j |ddd� d� | j t |dd� | j |ddd� d� | j |dt
� d� | j |dt
d� d� | j t |d d
� | j t |d dd
� y )Ns [€]r
u [€]s [�]z
iso8859-15�strictr u [�]� �r )r �unicode_decoder r r r r )r r s r �test_decodezCAPITest.test_decode5 s� � �%��)�)������ 1�7�;�Z�H����� �<�8�*�E����� �<��B�J�O����,�f�i��I����� �7�I�>�
�K����� 1�4�8�*�E����� �4��;�Z�H����+�v�w��>����+�v�w���Gr! c �� � t j }| j |dt � d� | j |dd� d� d}d}| j ||t � |� | j ||d� |� | j |dd� d � | j t
|dd� | j ||dd
� d� | j t |dd� | j t ||dd� | j t |dt � | j t |dd� | j t |g t � | j t |g d� y )
Nr r r
r r r
� ¡¢r � ��r s a???r )r �unicode_asencodedstringr r r �UnicodeEncodeErrorr r )r �asencodedstringr r s r �test_asencodedstringzCAPITest.test_asencodedstringG s5 � �.�#�;�;��������5�v�>�������8�&�A�#��4�������D�1�1�5������G�4�a�8������X�>��L����,�o�z�7�S������G�Y�?��I����+���u�E����+���7�E�J����)�_�f�d�C����)�_�f�g�F����)�_�b�$�?����)�_�b�'�Br! c � � t j }dD ]D }|j d� }| j ||� |� | j ||d� |� �F | j t
|d� | j t
|d� | j t
|d� | j t
|d� | j |dd� d � | j |d
d� d� | j t |dd
� y )N�r r( � 你好u a😀r
r# � �� �� �� a�r � a�� a�b� a�b� a�r )r �unicode_decodeutf8�encoder r r r )r �
decodeutf8r r s r �test_decodeutf8zCAPITest.test_decodeutf8^ s� � �)��1�1�
�C�A�����!�A����Z��]�A�.����Z��8�4�a�8� D�
���,�j�'�B����,�j�'�B����,�j�'�B����,�j�,�G�����L�)�<�i�H�����M�9�=�z�J����+�z�8�U�Cr! c �` � t j }dD ]Z }|j d� }| j ||� |t |� f� | j ||d� |t |� f� �\ | j t |d� | j t |d� | j t |d� | j |d� d� | j |dd � d� | j t |d
� | j |d
d � d� | j t |dd
� y )Nr/ r
r# r1 r2 r3 r4 )�a� r r6 )r7 � r8 r )r �unicode_decodeutf8statefulr: r �lenr r r )r �decodeutf8statefulr r s r �test_decodeutf8statefulz CAPITest.test_decodeutf8statefulr s � �1�&�A�A��C�A�����!�A����/��2�Q��A��K�@����/��8�<�q�#�a�&�k�J� D�
���,�.@�'�J����,�.@�'�J����,�.@�'�J����+�L�9�8�D����+�L�)�D�h�O����,�.@�-�P����+�M�9�E��W����+�'9�8�U�Kr! c � � t j }dD ]) }| j ||� |j d� � �+ | j t
|d� | j t |d� | j t |g � y )Nr/ r
� �r )r �unicode_asutf8stringr r: r r+ r )r �asutf8stringr s r �test_asutf8stringzCAPITest.test_asutf8string� sq � �+� �5�5��C�A����\�!�_�a�h�h�w�.?�@� D�
���,�l�H�E����)�\�6�:����)�\�2�6r! c �` � t j }t j dk( rdnd}dD ]� }|j d� }| j |d|� ||f� |j d� }| j |d|� d|f� | j |dd|z � d|f� |j d � }| j |d|� d|f� | j |dd
|z � d|f� �� | j
t |dd� | j
t |dd� | j
t |dd� | j
t |dd
� | j
t |dd� | j
t |dd� | j
t |dd� | j |ddd� d� | j |ddd� d� | j |ddd� d� | j |ddd� d� | j |ddd� d� | j
t |dd� | j
t |dd� | j
t |dd� | j |ddd� d� | j |ddd� d� | j |ddd� d� | j |ddd� d� | j |ddd� d� | j
t |ddd� | j
t |ddd� | j
t |ddd� y )N�little���r? r/ �utf-16r �utf-16le� ���utf-16be� ��� as ��as ��a� �� � � ��r �rL � ��r? rW �r rW � �� �� ��� s =�s �=s ��s ��=�s ���=r ) r �unicode_decodeutf16�sys� byteorderr: r r r r )r �decodeutf16�naturalbyteorderr r s r �test_decodeutf16zCAPITest.test_decodeutf16� s� � �*��3�3��!$���(�!:�2���C�A�����"�A����[��A�.�1A�1�0E�F�����$�A����[��Q�/�"�a��9����[��K��M�:�R��G�D�����$�A����[��A�.��A��7����[��K��M�:�Q��F�C� D�
���,�k�2�t�D����,�k�1�d�C����,�k�1�l�K����,�k�1�l�K����,�k�2�{�K����,�k�1�k�J����,�k�1�k�J�����R��i�@�.�Q�����Q��Y�?��O�����Q��Y�?��O�����Q�(;�Y�G��X�����Q�(;�Y�G��W����,�k�2�{�K����,�k�1�k�J����,�k�1�k�J�����R��i�@�.�Q�����Q��Y�?��O�����Q��Y�?��O�����Q�(;�Y�G��X�����Q�(;�Y�G��W����+�{�B��U�K����+�{�A�{�E�J����+�{�A�{�E�Jr! c �� � t j }t j dk( rdnd}dD ]� }|j d� }| j |d|� ||t
|� f� |j d� }| j |d|� d|t
|� f� | j |dd|z � d|t
|� d z f� |j d
� }| j |d|� d|t
|� f� | j |dd|z � d|t
|� d z f� �� | j |dd� d
� | j |dd� d
� | j |dd� d
� | j |dd� d� | j |dd� d� | j |dd� d� | j |dd� d� | j |dd� d� | j t |dd� | j t |dd� | j t |dd� | j |ddd� d� | j |ddd� d� | j |ddd� d� | j |ddd� d � | j |dd!d� d"� | j t |dd#� | j |dd#d� d$� | j t |dd%� | j |dd%d� d&� | j t |ddd'� | j t |ddd'� | j t |ddd'� y )(NrK rL r? r/ rM r rN rO � rP rQ s a =)rL r>