o
    .'hì  ã                   @   s^   d dl Z ddlmZ ddlmZmZmZmZmZ ddl	m
Z
 ddd„Zdd	d
„Zddd„ZdS )é    Né   )ÚRequest)Úget_comma_headerÚhas_expect_100_continueÚHeadersÚnormalize_and_validateÚset_comma_header)ÚLocalProtocolErrorÚreturnc                  C   s  t dgƒdgks
J ‚t dgƒdgksJ ‚t t¡� t dgƒ W d   ƒ n1 s)w   Y  t t¡� t dgƒ W d   ƒ n1 sCw   Y  t t¡�} t dgƒ W d   ƒ n1 s]w   Y  dt| jƒv skJ ‚t t¡� t dgƒ W d   ƒ n1 s€w   Y  t t¡� t dgƒ W d   ƒ n1 sšw   Y  t t¡� t d	gƒ W d   ƒ n1 s´w   Y  t t¡�} t d
gƒ W d   ƒ n1 sÎw   Y  dt| jƒv sÜJ ‚t t¡� t dgƒ W d   ƒ n1 sñw   Y  t t¡� t dgƒ W d   ƒ n	1 �sw   Y  t t¡� t dgƒ W d   ƒ n	1 �s'w   Y  t t¡� t dgƒ W d   ƒ n	1 �sBw   Y  t t¡� t dgƒ W d   ƒ n	1 �s]w   Y  t t¡� t dgƒ W d   ƒ n	1 �sxw   Y  t dgƒdgk�sˆJ ‚t t¡� t dgƒ W d   ƒ n	1 �sžw   Y  t t¡� t dgƒ W d   ƒ n	1 �s¹w   Y  t t¡� t ddgƒ W d   ƒ n	1 �sÕw   Y  t ddgƒdgk�sæJ ‚t dgƒdgk�sñJ ‚t t¡� t g d¢ƒ W d   ƒ n	1 �sw   Y  t t¡� t dgƒ W d   ƒ n	1 �s#w   Y  t dgƒdgk�s3J ‚t dgƒdgk�s>J ‚t t¡�} t dgƒ W d   ƒ n	1 �sTw   Y  | jjd k�sbJ ‚t t¡�} t ddgƒ W d   ƒ n	1 �syw   Y  | jjd k�s‡J ‚d S )!N)ÚfooÚbar)ó   fooó   bar)s   foo r   )s    foor   )s   foo baró   bazzfoo bar)s   foo barr   )s   fooÿbarr   )s   foobarr   )r   zbarbazzbar\rbaz)r   zbar
baz)r   zbar baz)r   zbarbaz  )r   z  barbaz)r   zbarbaz	)r   z	barbaz©úContent-LengthÚ1)ó   content-lengthó   1)r   Zasdf)r   Z1x©r   Ú2)r   Ú0)r   ó   0)r   z0 , 0)r   r   r   )r   z1 , 1,2)úTransfer-EncodingÚchunked)s   transfer-encodings   chunked)r   ZcHuNkEd)r   Úgzipiõ  )r   ÚpytestÚraisesr	   ÚstrÚvalueZerror_status_hint)Úexcinfo© r!   úLC:\Users\shubh\Videos\agent\nova\Lib\site-packages\h11/tests/test_headers.pyÚtest_normalize_and_validate   s®   ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
þÿÿÿÿÿÿÿÿÿr#   c                  C   sž   t g d¢ƒ} t| dƒg d¢ksJ ‚t| dddgƒ} t t¡� t| dddgƒ W d   ƒ n1 s1w   Y  | g d¢ks>J ‚t| d	d
gƒ} | g d¢ksMJ ‚d S )N))Ú
ConnectionÚclose)ZwhateverZ	something)Z
connectiONzfOo,, , BARó
   connection)ó   closer   r   ó   newthingÚaÚbz  a)©r&   r'   )ó   whatevers	   something©r&   s   fOo,, , BAR©r(   ó   a©r(   ó   br,   zdifferent thing)r+   r-   r.   r0   )r,   s   different thing)r   r   r   r   r   r	   )Úheadersr!   r!   r"   Útest_get_set_comma_header_   s   ÿÿr3   c                   C   sl   t tddddgd�ƒsJ ‚t tdddgd�ƒrJ ‚t tddddgd�ƒs&J ‚t tddddgdd�ƒr4J ‚d S )	NÚGETú/)ÚHostzexample.com)ÚExpectz100-continue)ÚmethodÚtargetr2   )r7   z100-Continuez1.0)r8   r9   r2   Úhttp_version)r   r   r!   r!   r!   r"   Útest_has_100_continue‚   s2   ýÿÿýÿüÿr;   )r
   N)r   Z_eventsr   Ú_headersr   r   r   r   r   Z_utilr	   r#   r3   r;   r!   r!   r!   r"   Ú<module>   s    

Q#