Format: application/x-python-code
1 o
2
3 .'h~
4 � @ s~ d dl Z d dlmZ d dlZddlmZ ddd�Zej�dej d d
5 d�ej dd
6 d�ej ddd�g�dee
7 ddfdd��ZdS )� N)�Tuple� )�
8 ReceiveBuffer�returnc C s� t � } | rJ �t| �dksJ �t| �dksJ �| d7 } | sJ �t| �dks'J �t| �dks/J �t| �dks7J �| �d�dks@J �| sDJ �t| �dksLJ �t| �dksTJ �t| �dks\J �| �d �dkseJ �t| �dksmJ �| �d �d u svJ �| rzJ �| d
9 7 } | �� dks�J �t| �dks�J �| �� dks�J �t| �dks�J �| d
10 7 } | �� d u s�J �t| �d
11 ks�J �| d7 } | �� d u s�J �t| �dks�J �| d7 } | �� dks�J �| �� dks�J �| �� d u s�J �t| �dks�J �| d7 } | �� }|g d�ks�J �t| �dk�sJ �| �� d u �sJ �| d7 } | �� d u �sJ �| �d�dk�s#J �| �r(J �| d7 } | �� g k�s5J �t| �dk�s>J �d S )Nr � � 123� r s 12� � 3�
12 s 123
13 456
14 789
15 s 123
16 456
17 s 789
18 s 12
19 s 345
20
21 s 12
22 345
23
24 s
25
26 6789aaa123
27 s 12
28 345
29
30 s 6789aaa123
31 s 123
32 a: b
33 foo:bar
34
35 trailing)r s a: bs foo:bars trailings
36
37 �d s trailing
38
39 s
40
41 trailing)r �len�bytesZmaybe_extract_at_mostZmaybe_extract_next_line�maybe_extract_lines)�b�lines� r �RC:\Users\shubh\Videos\agent\nova\Lib\site-packages\h11/tests/test_receivebuffer.py�test_receivebuffer s\
42 r �data)s HTTP/1.1 200 OK
43 � Content-type: text/plain
44 s Connection: close
45 s
46 � Some bodyZwith_crlf_delimiter)�id)� HTTP/1.1 200 OK
47 s Content-type: text/plain
48 � Connection: close
49 �
50 r Zwith_lf_only_delimiter)r r r r r Zwith_mixed_crlf_and_lfc C sD t � }| D ]}||7 }q|�� }|g d�ksJ �t|�dks J �d S )N)s HTTP/1.1 200 OKs Content-type: text/plains Connection: closer )r r r )r r �liner r r r �(test_receivebuffer_for_invalid_delimiterW s $
51 r )r N)�re�typingr ZpytestZ_receivebufferr r �markZparametrize�paramr r r r r r �<module> s,
52 N�
53 �
54 ���#