ó
    Ö›‘h˜)  ã                  óˆ   • S SK Jr  S SKJr  S SKJr  S SKJr   " S S\R                  5      r	 " S S\R                  5      rg	)
é    )Úannotations)Úprotocol)Úrawudp)Úunittestc                  ó(   • \ rS rSrSS jrSS jrSrg)Ú
MyProtocolé   c                ó$   • [        U5      U l        g )N)ÚlistÚ	expecting)Úselfr   s     ÚaC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\twisted/pair/test/test_rawudp.pyÚ__init__ÚMyProtocol.__init__   s   € Ü˜i›ˆ�ó    c                ó
  • Uu  p4U R                   (       d   S5       eU R                   R                  S5      u  pVnXQ:X  d   SR                  XQ5      5       eXc:X  d   SR                  Xc5      5       eXt:X  d   SUUUU4-  5       eg )Nz(Got a packet when not expecting anymore.r   zExpected data {!r}, got {!r}zExpected 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   ÚdatagramReceivedÚMyProtocol.datagramReceived   s­   € Ø‰ˆØ�~�~ÐIÐIÓIˆ~Ø-1¯^©^×-?Ñ-?ÀÓ-BÑ*ˆ
 
àÓ!ð 	
Ð#A×#HÑ#HØó$
ó 	
Ð!ð Ó!ð 	
Ð#A×#HÑ#HØó$
ó 	
Ð!ð Ó!ð 	
Ð#KØØØØð	O
ñ $
ó 	
Ñ!r   )r   N)r   zlist[tuple[bytes, bytes, int]]ÚreturnÚNone)r   Úbytesr   ztuple[bytes, int]r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   Ú__static_attributes__© r   r   r   r      s   † ô)÷
r   r   c                  ón   • \ rS rSrSS jrSS jrSS jrSS jrSS jrSS jr	SS jr
SS	 jrSS
 jrSrg)ÚRawUDPTestsé#   c                óì   • [         R                  " 5       n[        S/5      nUR                  SU5        UR	                  SSSSSSSSSSSSSSS9  UR
                  (       a   SUR
                  -  5       eg ©	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   ÚaddProtor   r   ©r   ÚprotoÚp1s      r   ÚtestPacketParsingÚRawUDPTests.testPacketParsing$   s—   € Ü×%Ò%Ó'ˆÜà0ðó
ˆð
 	�‰�v˜rÔ"à×Ñðð
 ØØØØØØØØ Ø$Ø"Ø#Øð% 	ñ 	
ð* —<—<ð 	
ØCÀbÇlÁlÑRó	
Ð�<r   c                ó&  • [         R                  " 5       n[        SS/5      nUR                  SU5        UR	                  SSSSSSSSSSSSSSS9  UR	                  S	SSS
SSSSSSSSSSS9  UR
                  (       a   SUR
                  -  5       eg )Nr,   ©ó   quuxó	   otherHostiþ3  r/   r0   r   r1   r.   r2   ó   3þð Þ­quuxrK   r?   r@   rC   s      r   ÚtestMultiplePacketsÚRawUDPTests.testMultiplePacketsF   sÝ   € Ü×%Ò%Ó'ˆÜà0Ø/ðó
ˆð 	�‰�v˜rÔ"Ø×Ñðð
 ØØØØØØØØ Ø$Ø"Ø#Øð% 	ñ 	
ð( 	×Ñðð
 ØØØØØØØØ Ø$Ø"Ø#Øð% 	ñ 	
ð* —<—<ð 	
ØCÀbÇlÁlÑRó	
Ð�<r   c                ór  • [         R                  " 5       n[        S/5      n[        S/5      nUR                  SU5        UR                  SU5        UR	                  SSSSSSSSSSSSSSS9  UR
                  (       a   SUR
                  -  5       eUR
                  (       a   SUR
                  -  5       eg r+   r@   ©r   rD   rE   Úp2s       r   ÚtestMultipleSameProtosÚ"RawUDPTests.testMultipleSameProtos|   sÛ   € Ü×%Ò%Ó'ˆÜà0ðó
ˆô à0ðó
ˆð 	�‰�v˜rÔ"Ø�‰�v˜rÔ"à×Ñðð
 ØØØØØØØØ Ø$Ø"Ø#Øð% 	ñ 	
ð* —<—<ð 	
ØCÀbÇlÁlÑRó	
Ðð —<—<ð 	
ØCÀbÇlÁlÑRó	
Ð�<r   c                ó    • [         R                  " 5       n[        / 5      nUR                  SU5        UR	                  SSSSSSSSSSSSSSS9  g )Né   r0   r   r1   r.   r2   )r   rA   r   rB   r   rC   s      r   ÚtestWrongProtoNotSeenÚ!RawUDPTests.testWrongProtoNotSeen©   sh   € Ü×%Ò%Ó'ˆÜ˜‹^ˆØ�‰�q˜"Ôà×Ñðð
 ØØØØØØØØ Ø$Ø"Ø#Øð% 	ò 	
r   c                ó  • [         R                  " 5       n[        SS/5      nUR                  SU5        [        SS/5      nUR                  SU5        UR	                  SSS	S
S	S	S	S	S	S	S	S	S	S	S9  UR	                  SSS	SS	S	S	S	S	S	S	S	S	S	S9  UR	                  SSS	S
S	S	S	S	S	S	S	S	S	S	S9  UR	                  SSS	SS	S	S	S	S	S	S	S	S	S	S9  UR
                  (       a   SUR
                  -  5       eUR
                  (       a   SUR
                  -  5       eg )Nr,   rI   r/   )rJ   rK   i¤  )r-   r.   i£  iP°  s   ¤°P Þ­quuxr   r1   rK   r2   r0   r.   rL   s   £°P Þ­foobarr?   r@   rP   s       r   ÚtestDemuxingÚRawUDPTests.testDemuxingÃ   sª  € Ü×%Ò%Ó'ˆÜà0Ø/ðó
ˆð 	�‰�v˜rÔ"äà/Ø0ðó
ˆð 	�‰�v˜rÔ"à×Ñðð
 ØØØØØØØØ Ø$Ø"Ø#Øð% 	ñ 	
ð( 	×Ñðð
 ØØØØØØØØ Ø$Ø"Ø#Øð% 	ñ 	
ð( 	×Ñðð
 ØØØØØØØØ Ø$Ø"Ø#Øð% 	ñ 	
ð( 	×Ñðð
 ØØØØØØØØ Ø$Ø"Ø#Øð% 	ñ 	
ð* —<—<ð 	
ØCÀbÇlÁlÑRó	
Ðð —<—<ð 	
ØCÀbÇlÁlÑRó	
Ð�<r   c                ó¸   • [         R                  " 5       n UR                  SS5        [        S5      e! [         a  nUR
                  S:X  a   SnAge SnAff = f)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)r   rA   rB   ÚAssertionErrorÚ	TypeErrorÚargs©r   Úes     r   ÚtestAddingBadProtos_WrongLevelÚ*RawUDPTests.testAddingBadProtos_WrongLevel-  sW   € ä×!Ò!Ó#ˆð	WØ�J‰J�r˜;Ô'ô !Ð!UÓVÐVøô ó 	Ø�v‰vÐTÓTÜàûð		ús   —4 ´
A¾AÁAÁAc                óÞ   • [         R                  " 5       n UR                  S[        R                  " 5       5        [        S5      e! [         a  nUR                  S:X  a   SnAge SnAff = f)z=Adding a protocol with a negative number raises an exception.éÿÿÿÿr^   )z'Added protocol must be positive or zeroN©r   rA   rB   r   ÚDatagramProtocolr_   r`   ra   rb   s     r   ÚtestAddingBadProtos_TooSmallÚ(RawUDPTests.testAddingBadProtos_TooSmall:  s`   € ä×!Ò!Ó#ˆð	WØ�J‰J�rœ8×4Ò4Ó6Ô7ô !Ð!UÓVÐVøô ó 	Ø�v‰vÐEÓEÜàûð		úó   —%A Á
A,ÁA'Á&A'Á'A,c                óÞ   • [         R                  " 5       n UR                  S[        R                  " 5       5        [        S5      e! [         a  nUR                  S:X  a   SnAge SnAff = f)ú<Adding a protocol with a number >=2**16 raises an exception.i   r^   ©z"Added protocol must fit in 16 bitsNrh   rb   s     r   ÚtestAddingBadProtos_TooBigÚ&RawUDPTests.testAddingBadProtos_TooBigG  s`   € ä×!Ò!Ó#ˆð	WØ�J‰J�uœh×7Ò7Ó9Ô:ô !Ð!UÓVÐVøô ó 	Ø�v‰vÐ@Ó@Üàûð		úrl   c                óÞ   • [         R                  " 5       n UR                  S[        R                  " 5       5        [        S5      e! [         a  nUR                  S:X  a   SnAge SnAff = f)rn   i  r^   ro   Nrh   rb   s     r   ÚtestAddingBadProtos_TooBig2Ú'RawUDPTests.testAddingBadProtos_TooBig2T  s`   € ä×!Ò!Ó#ˆð	WØ�J‰J�y¤(×";Ò";Ó"=Ô>ô !Ð!UÓVÐVøô ó 	Ø�v‰vÐ@Ó@Üàûð		úrl   r&   N)r   r   )r!   r"   r#   r$   rF   rM   rR   rV   rY   rd   rj   rp   rs   r%   r&   r   r   r(   r(   #   s8   † ô 
ôD4
ôl+
ôZ
ô4h
ôTWôWôW÷Wr   r(   N)Ú
__future__r   Útwisted.internetr   Útwisted.pairr   Útwisted.trialr   ri   r   ÚTestCaser(   r&   r   r   Ú<module>rz      s=   ðõ #å %Ý õ #ô
�×*Ñ*ô 
ô.|W�(×#Ñ#õ |Wr   