o t[ @shddlZddlTdZddZddZdd Zd d Zd d ZddZddZ Gddde Z ddZ dS)N)*slmo/org/freedesktop/DBussorg.freedesktop.DBussHellosorg.freedesktop.DBuscCs*ttd}|jjtjdksJdS)NrHello)ParserfeedHELLO_METHOD_CALLheaderfields HeaderFieldsmembermsgr >/usr/lib/python3/dist-packages/jeepney/tests/test_low_level.pytest_parser_simple srccs@d}|t|kr||}|||V|}|t|ks dSdSNr)len)srcsizeposendr r rchunkss rcCsdt}tttd}|ddD] }||gksJq||dd}|jjtjdks0JdS)Nrr) rlistrrrrrr r )pchunkedcr r r rtest_parser_chunkss rcCsDttd}t|dksJ|D] }|jjtjdksJqdS)Nr)rrrrrrr r )msgsr r r r test_multiples r cCs$ttd}|tksJdSr)rrr serialiser r r rtest_roundtrip$sr"cCsRddd}td}tt||g}t||dtj||dtjdks'JdS)Nbf)adesrs&abdef) simple_typesArray DictEntryprintr! Endiannesslittle)data string_typesigr r rtest_serialise_dict(s r1c Cshttd}t||ttttdtgttdttdttdtdgtdgks2JdS)Nz(a{sv}(oayays)b)r'oyr#)parse_signaturerr+Structr)r*r(Variant)r0r r rtest_parse_signature9s   r7cs,eZdZfddZddZddZZS) fake_listcst||_dSN)super__init___n)selfn __class__r rr;Hs  zfake_list.__init__cCs|jSr9)r<r=r r r__len__Lszfake_list.__len__cCstt|jSr9)iterranger<rAr r r__iter__Oszfake_list.__iter__)__name__ __module__ __qualname__r;rBrE __classcell__r r r?rr8Gs r8cCsfttdd}|tddtjtt|tddtjWddS1s,wYdS)NQdri) r) FixedTyper!r8r,r-pytestraisesSizeLimitError)r%r r rtest_array_limitRs  "rQ) rNjeepney.low_levelrrrrr r"r1r7rr8rQr r r rs