idd>ddlmZGddejZGddeZGddejZGdd eZGd d eZdd Zedkr edSdS))supportceZdZdZdS)TestCasectj||jj|_t |jjdf}g|_|jjj |_ |j |j||_ |jj |_ |jj|_|j j|_dS)N _NyHeapDefs_)rrsetUpguppysetsgetattrsetscrootheapyheapycHeapViewhv immnodesetnodeset mutnodeset NodeGraph nodegraph)selfheapdefss Q/opt/cloudlinux/venv/lib/python3.11/site-packages/guppy/heapy/test/test_heapyc.pyrzTestCase.setUpst$$$JO 49?N;;< j&- +&&ty(;;y+ )..N)__name__ __module__ __qualname__rrrrrs# / / / / /rrc2eZdZdZdZdZdZdZdZdS) TestHeapViewc|jj}g}||g}|||fg}||j|g||g||j|g||g||_||j|g|g||_||j|g|gg|j_||j|g||dg||j|g||dgdSN)r _hiding_tag_rraseqrelimgr)r hiding_tagansngs rtest_hiding_tagzTestHeapView.test_hiding_tagsW)  __aS ! ! ^^aVH % % $'.."&& aS(9(9::: $'.."&& aS(9(9:::$ $'.."&& R(8(8999$ $'.."&& R(8(8999! $'.."&& aY(?(?@@@ $'.."&& aY(?(?@@@@@rcz|jjjjd}|gGfdd}dS)NxceZdZfdZdS)7TestHeapView.test_inheritance_from_heapview..HVc2dS)Nr)__new__)rHVrnewroots rr0z?TestHeapView.test_inheritance_from_heapview..HV.__new__0s''GR888rN)rrrr0)r1rr2srr1r./s8 9 9 9 9 9 9 9 9 9rr1)r rrr)rr,rr1rr2s @@@rtest_inheritance_from_heapviewz+TestHeapView.test_inheritance_from_heapview'sr:#*3 # 9 9 9 9 9 9 9 9 9 9 9 9RTTrc njg_jj}jj}t |fD]}Gdd|}Gdd|}|}|}g|_|}g|_g|_t td} | D]A} | | | | | | B |g}  |g}  |g} | | cxko| knc  |g||   |g|| ||jgz  |g|| ||j|jgzfd} ||| d||| d ||| d||| d |||j|||j|||jdS)NceZdZdZdS);TestHeapView.test_inheritance_from_special_types..T)tNrrr __slots__rrrTr6E rr:ceZdZdZdS);TestHeapView.test_inheritance_from_special_types..U)uNr8rrrUr=Hr;rr?c||}|dt|zk|S)N)r)relate assertTruelen)srctgtrrrs rrelz=TestHeapView.test_inheritance_from_special_types..relgs<IIc3''U3q66\ 1222r)rr#r rrlistr7r>rangeappend indisize_sumrCr$r%)rrrbaser:r?r'r7r>datar,zaztzurHrs` @r#test_inheritance_from_special_typesz0TestHeapView.test_inheritance_from_special_types6sWY) Y) :&, , D ! ! ! ! !D ! ! ! ! ! ! ! !A ! ! !AAACAACACb ??D     !%%B!%%B!%%B OOBLLLLbLLLL ) ) ) IIbiinnjj&6&6 7 7 7 IIbiinnjjq!#h&?&? @ @ @ IIbiinnjjq!#qsm1C&D&D E E E       IIcc!T!Wooss1d1g 7 7 7 IIcc!T!Wooss1d1g 7 7 7 IIcc!QSkk33q!#;; / / / C13KKKKY, , rcdSr"rrs rtest_nodeset_circularityz%TestHeapView.test_nodeset_circularityqs  rc|j}Gddt}Gdd|}|||}|}|}g}g}g} ||_||_||_| |_|j|||g|j||j||j||} |j|_|j|_|} g} | |_|} dS)NceZdZdZdS)0TestHeapView.test_registered_hiding..Setsomer#otherNr8rrrSetrY}7IIIrr]ceZdZdS)0TestHeapView.test_registered_hiding..DerNrrrrrrDerr` Drrb) robjectregister__hiding_tag__typer[r\r rLheapr#) rrr]rbsdr7r[r\dotherr,hes rtest_registered_hidingz#TestHeapView.test_registered_hidingzsl W 8 8 8 8 8& 8 8 8     #    %%c*** CEE CEE CEE !Q###    GGII GGII GGIIrcddlm}|j}g}|g}|jd|gz|jt t d|}|}||z }td|dt|Gddt}Gdd |} | ||} |j | _ | }|j |_ d | |gz|jdd <|}|}||z } td | dt|dS) Nr) process_timeielapsed0zlen(x)ceZdZdZdS)%TestHeapView.test_timing..SetrZNr8rrrr]rpr^rr]ceZdZdS)%TestHeapView.test_timing..DerNrarrrrbrrrcrrbiaiPelapsed1) timermrr extendrJrKrfprintrDrdrer#) rclockrrhhstartr,rnr]rbrgrss r test_timingzTestHeapView.test_timings /..... W  C $$$ eFmm,,--- GGII577U? j(Hc!ff555 8 8 8 8 8& 8 8 8     #    %%c*** CEE CEE"Aq6\ !E' GGII577U? j(Hc!ff55555rN) rrrr*r3rSrVrkrzrrrr r ssAAA* 7 7 7999v   :::x&6&6&6&6&6rr ceZdZdZdZdS)TestLeakc ddl}ddlmtj||jj}t|j df}g}|jj j }|j }|j }Gddt}Gdd|} Gdd t} ||} | g} | | g} g}g}|}g}| |_||_||_| }| |_||_| |_| }||_d t,fD} || | |||||| | | |t,g }fd |D}| |t-t/d d zz} ||fd|D}|d|D}d}||| |||_|||}|||}||_|}~~~| |d}|fd|D}|||g|dd<| fd|D}|||dS)Nr getrefcountrceZdZdZdS)TestLeak.test_1..T)r'r#tonlyNr8rrrr:rs4I Drr:ceZdZdZdS)TestLeak.test_1..U)bNr8rrrr?rsI Drr?ceZdZdZdS)TestLeak.test_1..VcNr8rrrVrsIIIrrcg|]}|Srr.0r,s r z#TestLeak.test_1..s   1Q   rc&g|] }|Srrrr,grcs rrz#TestLeak.test_1..!$$$AQ$$$ri'i'c&g|] }|Srrrs rrz#TestLeak.test_1..s!###1A###rcg|]}|Srrrs rrz#TestLeak.test_1..soooQqooorc&g|] }|Srrrs rrz#TestLeak.test_1..4rrc&g|] }|Srrrs rrz#TestLeak.test_1..:s!%%%Q##a&&%%%r) gcsysrrrrr r r r rrrrrdcollectrLr'r#rrrrJrKruaddrrerfdiscardr$clear)rrr rr rrrr:r?rr(r'rrjrr7rr>vlircli0rclirecr,rrxnrclinrcli0rs @rtest_1zTestLeak.test_1sP ******t$$$z4:~667!(/$                          WYY D     ACC ACC ACC     !Q1aAq!R$ ?$$$$$$$ b4eU++,,,, B#######goo"ooo&&  3 s  __T8 , , %%a((( GGII GGII  3 $$$$$$$ $QQQ  %%%%"%%% %     rcddl}ddlm}tj||jj}t|j df}g}|jj j }|j }|j }|g|} Gfddt} Gdd| } | | _| } | } || || |||}|}d}dx} x} x} } g|dd<||}||| dS)Nrr~rceZdZZdS)TestLeak.test_weaky..TN)rrrr,)probesrr:rUsAAArr:ceZdZdS)TestLeak.test_weaky..UNrarrrr?rXrcrr?)rrrrrrr r r r rrNodeSetrrrdr?rLrrfr$)rrrr rr rrrrcprober:r?r7r>rr,nrcprobers @r test_weakyzTestLeak.test_weaky>s  ******t$$$z4:~667!(,$  #e**                   ACC ACC A A __T8 , , GGII AAQQQ 3u:: (G$$$$$rN)rrrrrrrrr|r|s6W!W!W!r/%/%/%/%/%rr|ceZdZdZdZdS) TestNodeGraphc|}|dd|ddgdt|}||}||}|ddt|}|t|}||ddg}t|}|| t|}|| } t| } | | ddg| d g} t| d} | d | d<t| d} | | |d g}|d }|dd|d }|d gd |d gd |d gd |d d gfD]}d|d<|}|dd|dd|ddS)NrI)r)r)r )rr)rIrT is_mappingF)iterabler)rr)radd_edge add_edges_n1rJsort as_flat_listcopy__iter__domain_restrictedinvertinvertedupdateupdatedr) rr)lngflcplng1lcprnglrnginglinguingtgtss rtest_constructor_and_methodsz*TestNodeGraph.test_constructor_and_methodsqs^^   Aq A"""2hh  __    WWYY AqBKKMM"" 2hh  ""Aq6**Cyy Cyy kkmmCyy FF#$$${{F8$$ DG}} QDG}}   ^^VH % % ^^t^ , , Aq^^u^ - - >>6(D11>>F8>EE>>6(t><<>>TVH>EE  BBqEE ^^   Aq Aq 1rc Gdd|jj}|dd|ddddg}|_|Gfdd d }t |}|t |}|t |}dS) NceZdZdZdZdS))TestNodeGraph.test_inheritance..Tr,cLt|}||Sr")rJr)rr's ras_sorted_listz8TestNodeGraph.test_inheritance..T.as_sorted_listsJJrN)rrrr9rrrrr:rs(I     rr:rIrr)rr)rrc,eZdZdZfdZdZdZdS))TestNodeGraph.test_inheritance..R)stopcd}|tt|d||_|S)NrIrr)r0rrJrKr)rrrGRr:s rr0z1TestNodeGraph.test_inheritance..R.__new__sFIIaAI..tE$KK00!444rcDt|Sr")rJ get_domainrUs rkeysz.TestNodeGraph.test_inheritance..R.keyssDOO--...rc^fdtDS)Nc g|] }| Srr)rkrs rrzDTestNodeGraph.test_inheritance..R.values.. s;;;AQ;;;r)rJrrUs`rvaluesz0TestNodeGraph.test_inheritance..R.values s-;;;;diikk):):;;;;rN)rrrr9r0rr)rr:srrrsVI        / / / < < < < .str_inrel..#s+JJJ11AFFFAIII>JJJr)rJrjoinrs r str_inrelz-TestClassifiers.test_inrel..str_inrel s;QA FFHHH99JJJJJKK Krz(2, 0)rz.(2, 0), (2, 1), (2, 2), (2, 3), (2, 4), (2, 5)) rrr cli_inrelclassifyr$rKrLstr) rrrrgr,yclirirGs r test_inrelzTestClassifiers.test_inrels, L L L W ^^    C Aqll2r2&& LLOO ))A,,)))q  A HHQKKKK LLOO ))A,, PQQQq  AQ A KK1     LLOOrc|j}||fi}|d|d}}|||k|||k|||kp||k|||ko||k|||kp||k|||ko||k|d|d}}|||k|||k|||kp||k|||ko||k|||kp||k|||ko||kdS)NrIr)rcli_andcli_idrrC assertFalse)rrrr'rs rtest_nodetuple_richcomparez*TestClassifiers.test_nodetuple_richcompare8s Wjj"))++,,||A Q1 Q a    Q(!q&))) a*AF+++ AQ''' Q1q5)))||A Q1 a    Q Q(!q&))) Q)16*** Q!a%((( Q1q5)))))rN)rrrrrrrrrrs22*****rrFctjt|tjt|tjt|tjt |dSr")r run_unittestrrr|r )debugs r test_mainrPsT %000 ... 5))) u-----r__main__N)F) guppy.heapy.testrrr r|rrrrrrrrsC$$$$$$ / / / / /w / / /K6K6K6K6K68K6K6K6dJ%J%J%J%J%wJ%J%J%Zh h h h h Hh h h V2*2*2*2*2*h2*2*2*j.... z IKKKKKr