HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //usr/local/lib/python3.10/dist-packages/h11/tests/__pycache__/test_util.cpython-310.pyc
o

���g��@s�ddlZddlZddlZddlmZddlZddlmZmZm	Z	m
Z
mZmZddd�Z
ddd	�Zdd
d�Zddd
�Zddd�Zddd�ZdS)�N)�NoReturn�)�bytesify�LocalProtocolError�
ProtocolError�RemoteProtocolError�Sentinel�validate�returncCs8t�t��
td�Wd�dS1swYdS)Nzabstract base class)�pytest�raises�	TypeErrorr�rr�>/usr/local/lib/python3.10/dist-packages/h11/tests/test_util.py�test_ProtocolErrors
"�rc
Cs|ztd��ty%}zt|�dksJ�|jdksJ�WYd}~nd}~wwztddd��tyM}zt|�dks<J�|jdksCJ�WYd}~nd}~wwdtfdd�}z,z|�WWdSty�}zd�t�t��d	��}|�	�WYd}~WdSd}~wwt
y�}z0t|�t
us�J�|jd
ks�J�|jdks�J�d�t�t��d	��}|�
|�s�J�WYd}~dSd}~ww)N�fooi�i���error_status_hintr
cSstddd��)N�a�r)rrrrr�thunk$sz&test_LocalProtocolError.<locals>.thunk�r)rr)r�strrr�join�	traceback�	format_tb�sys�exc_info�!_reraise_as_remote_protocol_errorr�type�args�endswith)�er�exc1�orig_traceback�exc2�
new_tracebackrrr�test_LocalProtocolErrors>��������r'cCs�t�d�}t�t��
t|d�Wd�n1swYt|d�}|ddd�ks-J�t�t��
t|d�Wd�n1sBwYt�t��t|d�Wd�dS1s]wYdS)	Ns&(?P<group1>[0-9]+)\.(?P<group2>[0-9]+)s0.s0.1�0�1)�group1�group2s0.1xxs0.1
)�re�compilerrrr	)�my_re�groupsrrr�
test_validate5s
�
�"�r0cCs�t�d�}t�t��}t|dd�Wd�n1swYdt|j�vs)J�t�t��}t|dd�Wd�n1s?wYdt|j�vsMJ�t�t��}t|ddd�Wd�n1sdwYdt|j�vsrJ�dS)Nsfoo��oopszoops {}z
oops {} xx�
z
oops 10 xx)r,r-rrrr	r�value)r.�excinforrr�test_validate_formattingDs
���r6cCs�Gdd�dttd�}t|�dksJ�||ksJ�t|�jdks!J�||hvs(J�t|�|us0J�Gdd�dttd�}t|�dksBJ�||ksHJ�||hvsOJ�t|�t|�usYJ�dS)Nc@�eZdZdS)ztest_make_sentinel.<locals>.SN��__name__�
__module__�__qualname__rrrr�SU�r<)�	metaclassc@r7)ztest_make_sentinel.<locals>.S2Nr8rrrr�S2^r=r?)r�reprrr9)r<r?rrr�test_make_sentinelTsrAcCs�td�dksJ�ttd��dksJ�td�dksJ�t�t��td�Wd�n1s.wYt�t��
td�Wd�dS1sHwYdS)Ns123�123uሴr3)r�	bytearrayrr�UnicodeEncodeErrorr
rrrr�
test_bytesifygs
�
"�rE)r
N)r,rr�typingrr�_utilrrrrrr	rr'r0r6rArErrrr�<module>s