Ϫf)ddlmZddlmZddlmZddlmZGddejZ GddejZ y ) ) annotations)protocol)rawudp)unittestceZdZddZddZy) MyProtocolc$t||_y)N)list expecting)selfr s ?/usr/lib/python3/dist-packages/twisted/pair/test/test_rawudp.py__init__zMyProtocol.__init__ s ic|\}}|jsJd|jjd\}}}||k(sJdj||||k(sJdj||||k(sJd||||fzy)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 popformat)r datapeerhostport expectData expectHost expectPorts r datagramReceivedzMyProtocol.datagramReceiveds t~~III~-1^^-?-?-B* J T! #A#H#H $  !T! #A#H#H $  !T! #K     O $  !rN)r zlist[tuple[bytes, bytes, int]]returnNone)rbytesrztuple[bytes, int]rr)__name__ __module__ __qualname__rrrr rr s ) rrcTeZdZd dZd dZd dZd dZd dZd dZd dZ d dZ d d Z y ) RawUDPTestsctj}tdg}|jd||j dddddddddddddd|j rJd|j zy NfoobartestHostiCCޭfoobarrdummyr( partialdestsourcerversionihltostot_len fragment_idfragment_offset dont_fragmentmore_fragmentsttl5Should not expect any more packets, but still want %rrRawUDPProtocolraddProtorr r protop1s r testPacketParsingzRawUDPTests.testPacketParsing$s%%' 0   vr"    $"#%  *<< Cbll R r?p2s r testMultipleSameProtosz"RawUDPTests.testMultipleSameProtos|s%%' 0   0   vr" vr"    $"#%  *<< Cbll R << Cbll R =2**16 raises an exception.irSz"Added protocol must fit in 16 bitsNr\rWs r testAddingBadProtos_TooBigz&RawUDPTests.testAddingBadProtos_TooBigGse  ! ! # W JJuh779 :!!UV V  vv@@ r_ctj} |jdtjt d#t $r}|jdk(rnYd}~yd}~wwxYw)rairSrbNr\rWs r testAddingBadProtos_TooBig2z'RawUDPTests.testAddingBadProtos_TooBig2Tse  ! ! # W JJy(";";"= >!!UV V  vv@@ r_N)rr) rrr r@rFrJrMrOrYr^rcrer!rr r#r##s8  D4 l+ Z 4h T W W W Wrr#N) __future__rtwisted.internetr twisted.pairr twisted.trialrr]rTestCaser#r!rr rks=#%# ** .|W(##|Wr