Sindbad~EG File Manager
a
��g�8 � @ sx d dl Z d dlZd dlZd dlZd dlZd dlmZ d dlmZ d dl m
Z
G dd� d�ZG dd� dej�Z
d d
� ZdS )� N)�
HTTPException)�support)�BytesIOc @ s� e Zd ZdZdZdZdZdZdZdZ dZ
dd� Zdd � Zd
d� Z
dd
� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� Zd d!� Zd"d#� Zd$d%� Zd&d'� Zd(d)� Zd*d+� ZdS ),�TestBase� N� r u �c C sX | j d u rt�| j�| _ | j j| _| j j| _| j j| _| j j| _ | j j
| _
| j j| _d S �N)�codec�codecs�lookup�encoding�encode�decode�streamreader�reader�streamwriter�writer�incrementalencoder�incrementaldecoder��self� r �7/usr/local/lib/python3.9/test/multibytecodec_support.py�setUp s
zTestBase.setUpc C s� g }| j D ].}|�d�}|�� }dd� |D �}|�|� q
t|� D ]D\}}| �|�d }| �||�d�� | jrB| �|| �|�d � qBd S )N�
c S s g | ]}|d �qS )r r )�.0�liner r r �
<listcomp>* � z-TestBase.test_chunkcoding.<locals>.<listcomp>r �utf-8) �tstring�split�pop�append�zipr �assertEqual�
roundtriptestr
)r Z
tstring_lines�b�lines�lastZnative�utf8�ur r r �test_chunkcoding$ s
zTestBase.test_chunkcodingc C s� | j D ]�\}}}t|t�r"| j}n| j}|r�|||�d }|| ju r|| �t|�tu t|�� | �||d|| j |||f � q�| �t|�tu t|�� | �||d|| j |||f � q| �
t|||� qd S )Nr �%a.decode(%r, %r)=%a != %a�%a.encode(%r, %r)=%a != %a)�
codectests�
isinstance�bytesr r
�
assertTrue�type�strr% r �assertRaises�UnicodeError�r �source�schemeZexpected�func�resultr r r �test_errorhandle2 s0
���
���zTestBase.test_errorhandlec C s0 | j r| �d� d}| �| �|d�d d� d S )N�$encoding contains full ISO 10646 mapu ଓଣୠ nd eggs�xmlcharrefreplacer s ଓଣୠ nd eggs)�has_iso10646�skipTestr% r
)r �sr r r �test_xmlcharrefreplaceI s
�zTestBase.test_xmlcharrefreplacec sj | j r| �d� ddlm� � fdd�}t�d|� | jrF| j\}}nd}d}| �| �|d�d |� d S ) Nr= r ��codepoint2namec sx t | t�std| ��g }| j| j| j� D ]:}t|�� v rT|�d� t|� � q,|�dt|� � q,d�|�| jfS )Nzdon't know how to handle %rz&%s;z&#%d;r ) r0 �UnicodeEncodeError� TypeError�object�start�end�ordr# �join)�exc�l�crC r r �xmlcharnamereplaceY s
z>TestBase.test_customreplace_encode.<locals>.xmlcharnamereplaceztest.xmlcharnamereplaceu «ℜ» = 〈ሴ〉s* «ℜ» = ⟨ሴ⟩) r? r@ Z
html.entitiesrD r
�register_error�xmlcharnametestr% r
)r rO �sinZsoutr rC r �test_customreplace_encodeS s
���z"TestBase.test_customreplace_encodec C s>