a ze; @sddlZddlZddlmZddlmZddlZddlZeddgdZedddgd d Z e ed Gd d d ej Z e ed Gdddej Z e ed ejGdddej Ze ed ejGdddej ZddZedkredS)N)support)import_fresh_modulezxml.etree.ElementTree _elementtree)freshzxml.etree.cElementTreez xml.etreeT)rZ deprecatedzrequires _elementtreec@speZdZejejddddddZddZd d Zd d Z d dZ ej ddZ ddZ ddZddZdS) MiscTestsdF)sizeZmemusedry_runcCs4d|}t}z|t|j|Wd}nd}0dS)Nx)cET XMLParser assertRaises OverflowErrorfeed)selfr dataparserrI/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_xml_etree_c.pytest_length_overflows zMiscTests.test_length_overflowcCstd}d|_|t|`Wdn1s40Y||jd|t|`Wdn1sp0Y||jd|_|t|`Wdn1s0Y||jd|t|`Wdn1s0Y||jd|_|t|`Wdn1s.0Y||jd|t|` Wdn1sl0Y||j iddd|_ |t|` Wdn1s0Y||j ddddS)NtagZTAGZTEXTZTAILBD)AC) r ElementrrAttributeError assertEqualtext assertIsNonetailattrib)relementrrrtest_del_attributes4  " "  " "  $ $  $zMiscTests.test_del_attributecCs8td}}tdD]}t|d}q~~tdS)Nrooti@ x)r rrange SubElementr gc_collect)rer%irrr test_trashcan<s  zMiscTests.test_trashcancCsdd}|tdS)Nc Ss>t}ztWn(ty8}z|}WYd}~n d}~00dSN)r r ValueError)rexcerrrrrparser_ref_cycleJs z9MiscTests.test_parser_ref_cycle..parser_ref_cycle)rr))rr1rrrtest_parser_ref_cycleEs zMiscTests.test_parser_ref_cyclecstdGfddd}|_|_|_|_|_|_|_ddi|_ddidS)NelemcseZdZfddZdS)z#MiscTests.test_bpo_31728..XcsjjdSr-)rr!clearrr3rr__del___sz+MiscTests.test_bpo_31728..X.__del__N)__name__ __module__ __qualname__r7rr6rrX^sr;r*)r rrr4r! __setstate__)rr;rr6rtest_bpo_31728Ys" zMiscTests.test_bpo_31728cCsxtjtj}|t|j|t|jdGddd}|t|j||t|jd| |j | |j dS)Nfooc@seZdZddZdS)z5MiscTests.test_uninitialized_parser..MockFilecWsdS)Nr)argsrrrreadsz:MiscTests.test_uninitialized_parser..MockFile.readN)r8r9r:rBrrrrMockFilesrC) r r __new__rr.closerZ _parse_wholeZ _seteventsr Zentitytarget)rrrCrrrtest_uninitialized_parserys z#MiscTests.test_uninitialized_parserc Cstjtj}tdD]&}|ddditdgdddq||jd||jd||jd|t |j d g|t |d ||d jddS) Nrr?barr<childztext goes herezopposite of head)rr" _childrenrr!)rHr<rr) r rrDr'r=rrrr!listr"itemslen)rr3r+rrrtest_setstate_leakss    zMiscTests.test_setstate_leakscCs*d}tt|}t|~tdSNz )r Z iterparseioStringIOnextrr)rZXMLrrrrtest_iterparse_leakss zMiscTests.test_iterparse_leakscCs$d}t}||~tdSrO)r Z XMLPullParserrrr)rSrrrtest_xmlpullparser_leakss  z"MiscTests.test_xmlpullparser_leaksN)r8r9r:rZ bigmemtestZ_2Grr$r,r2r> cpython_onlyrGrNrTrUrrrrrs      rc@seZdZddZdS)TestAliasWorkingcCstd}||jddS)Nr?) cET_aliasrrrrr*rrrtest_alias_workings z#TestAliasWorking.test_alias_workingN)r8r9r:rZrrrrrWsrWc@s$eZdZddZddZddZdS)TestAcceleratorImportedcCs|tjjddSNr)rr r(r9r5rrrtest_correct_import_cETsz/TestAcceleratorImported.test_correct_import_cETcCs|tjjddSr\)rrXr(r9r5rrrtest_correct_import_cET_aliassz5TestAcceleratorImported.test_correct_import_cET_aliascCs|tjjtjdSr-)ZassertNotIsInstancer r__init__types FunctionTyper5rrrtest_parser_comes_from_Csz0TestAcceleratorImported.test_parser_comes_from_CN)r8r9r:r]r^rbrrrrr[sr[c@s2eZdZddZejZddZddZddZd S) SizeofTestcCstd|_td|_dS)NZ5PZPnnP4P)rZ calcobjsize elementsizestructcalcsizeextrar5rrrsetUps zSizeofTest.setUpcCstd}|||jdS)Na)r r check_sizeofrdrYrrr test_elements zSizeofTest.test_elementcCs&tjddd}|||j|jdS)Nrizabout:)Zhref)r rrjrdrgrYrrrtest_element_with_attribsz#SizeofTest.test_element_with_attribcCsFtd}tdD]}t|dq|||j|jtddS)NrispanZ8P) r rr'r(rjrdrgrerf)rr*r+rrrtest_element_with_childrens   z%SizeofTest.test_element_with_childrenN) r8r9r:rhrrjrkrlrorrrrrcs rccCs,ddlm}ttttt|jt ddS)Nrtest_xml_etree)module) testrqrZ run_unittestrrWr[rc test_mainr rprrrrts rt__main__)rPrersrZ test.supportrr`Zunittestr rXZ skipUnlessZTestCaserrWrVr[rcrtr8rrrrs4