a
    Zg                     @   s   d dl Z d dlZd dlZd dlmZ d dlZddlmZmZm	Z	m
Z
mZmZ ddddZdddd	Zddd
dZddddZddddZddddZdS )    N)NoReturn   )bytesifyLocalProtocolErrorProtocolErrorRemoteProtocolErrorSentinelvalidatereturnc                   C   s6   t t td W d    n1 s(0    Y  d S )Nzabstract base class)pytestraises	TypeErrorr    r   r   a/var/www/html/cobodadashboardai.evdpl.com/venv/lib/python3.9/site-packages/h11/tests/test_util.pytest_ProtocolError   s    r   c               
   C   s  zt dW nB t yN }  z*t| dks,J | jdks:J W Y d } ~ n
d } ~ 0 0 zt dddW nB t y }  z*t| dksJ | jdksJ W Y d } ~ n
d } ~ 0 0 tddd}zVz
|  W nF t y } z,dtt d	 }|	  W Y d }~n
d }~0 0 W n t
y } zft|t
u s,J |jd
ks<J |jdksLJ dtt d	 }||stJ W Y d }~n
d }~0 0 d S )NZfooi  i  error_status_hintr
   c                   S   s   t dddd S )Na  r   )r   r   r   r   r   thunk$   s    z&test_LocalProtocolError.<locals>.thunk r   )r   r   )r   strr   r   join	traceback	format_tbsysexc_infoZ!_reraise_as_remote_protocol_errorr   typeargsendswith)er   Zexc1Zorig_tracebackZexc2Znew_tracebackr   r   r   test_LocalProtocolError   s.    $$
"r"   c                  C   s   t d} tt t| d W d    n1 s40    Y  t| d}|dddksZJ tt t| d W d    n1 s0    Y  tt t| d W d    n1 s0    Y  d S )	Ns&   (?P<group1>[0-9]+)\.(?P<group2>[0-9]+)s   0.s   0.1   0   1)Zgroup1Zgroup2s   0.1xxs   0.1
)recompiler   r   r   r	   )my_regroupsr   r   r   test_validate5   s    
(
(r)   c                  C   s   t d} tt}t| dd W d    n1 s60    Y  dt|jv sRJ tt}t| dd W d    n1 s~0    Y  dt|jv sJ tt}t| ddd W d    n1 s0    Y  dt|jv sJ d S )Ns   foo    Zoopszoops {}z
oops {} xx
   z
oops 10 xx)r%   r&   r   r   r   r	   r   value)r'   excinfor   r   r   test_validate_formattingD   s    
**,r.   c                  C   s   G dd dt t d} t| dks$J | | ks0J t| jdksBJ | | hv sPJ t| | u s`J G dd dt t d}t|dksJ | |ksJ | |hvsJ t| t|usJ d S )Nc                   @   s   e Zd ZdS )ztest_make_sentinel.<locals>.SN__name__
__module____qualname__r   r   r   r   SU   s   r3   )	metaclassc                   @   s   e Zd ZdS )ztest_make_sentinel.<locals>.S2Nr/   r   r   r   r   S2^   s   r5   )r   reprr   r0   )r3   r5   r   r   r   test_make_sentinelT   s    r7   c                   C   s   t ddksJ t tddks$J t ddks4J tt t d W d    n1 s\0    Y  tt t d W d    n1 s0    Y  d S )Ns   123Z123u   ሴr+   )r   	bytearrayr   r   UnicodeEncodeErrorr   r   r   r   r   test_bytesifyg   s    &r:   )r%   r   r   typingr   r   Z_utilr   r   r   r   r   r	   r   r"   r)   r.   r7   r:   r   r   r   r   <module>   s    
