bg'ddlZddlZddlZddlZddlmZddlmZddlZej ej e dZ dZedkrheejdkrTejdd krCejd d kZeje ezd d ZeeejddlZddlZddlmZddlmcmZddlZddl m!a!m"Z"m#Z#ddl$m%Z&da'da(gda)dZ*dZ+Gdda,tYtRdtNa-GddtBa.t]a/ea0GddZ1dZ2ej3e2edZ4dZ5dZ6dZ7d Z8d!Z9edkrBe5d"#e5d$#e6e7e8e9dSdS)%N)suppress)BytesIOzsession-refimported-%s.pklcddl}|dddt |zdz}d|d|S)Nrz[obj][]z while testing (with refimported=z): ) traceback format_exc splitlinesreplacereprlstrip)errorobj refimportedr lines h/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/dill/tests/test_session.py _error_linersk    ! ! , , . .r 2 : :7CS MRUDU V VDD9Ddkkmmm TT__main__--childTruemodulec dD])}t|jtjvsJ*dtjvrdtjvsJddl}ddl}dD]5}t|tjdj|usJ6tjj dksJ|rtj|jusJtj |j usJdS#t$r}t|||f|_d}~wwxYw)Njsonurl local_modsaxdomcalendarcmathr)Calendarisleap)globals__name__sysmodulesr%r&__dict__rday_name __module__ complex_loglogAssertionErrorrargs)rrr%r&rs r test_modulesr4!s4 A > >yy~.#+=====,,CK1G1G1GG " " " " " " " "- O Oyy~Z)@)I#)NNNNNN$/:==== >(H,====='59444444   %eS+>>@EJ  sC C C8C33C8)r#)r'r(r.)r1)AliceBobCarolc |dzS)Nrxs rsquaredr=Rs q!t rc |dzS)Nrr:r;s rr?Ss !Q$rceZdZdZdS)Personc"||_||_dSN)nameage)selfrDrEs r__init__zPerson.__init__Us rN)r*r/ __qualname__rGr:rrrArATs#rrAceZdZdZdS)CalendarSubclassc>d|DS)Nc(g|]}t|Sr:)r.).0is r z-CalendarSubclass.weekdays..[s999 999r) iterweekdaysrFs rweekdayszCalendarSubclass.weekdaysZs"99T%6%6%8%89999rN)r*r/rHrRr:rrrJrJYs#:::::rrJcXeZdZeZdZdZdZdS) TestNamespacec ||_dSrC)extra)rFrVs rrGzTestNamespace.__init__bs  rc(t|_tt|jt|j|SrC)r)copybackupclearupdate test_globalsrVrQs r __enter__zTestNamespace.__enter__dseiinn&&   *+++ $$$ rctt|jdSrC)r)rZr[rY)rFexc_infos r__exit__zTestNamespace.__exit__js6  %%%%%rN) r*r/rHr)rXr\rGr]r`r:rrrTrT`sV799>>##L &&&&&rrTc|jddddz}t|dr|jn|}tjtj|jd}tj|ftj |ffD]<\}}tt5||dddn #1swxYwY=dS)N.rrz.pyc __cached__ __pycache__) __file__splithasattrrcospathjoindirnameremove removedirsrOSError)rcachedpycacherlfiles r_clean_up_cacherrns _ " "3 * *1 - 6F")&,"?"? KV  VFgll27??6?;;]KKG)V,r}g.FG  g     F4LLL               s5 C  C C c$ tj}dD],}t|j||jksJ-dD]}||||ksJdD]9}||j|usJ||d||dksJ:t jtjksJttt sJtj |dj ksJtttsJtttsJt|dksJttusJdS#t $r}t#|||f|_d}~wwxYw)Nr)r<emptynames)r=cubedrpersoncal)rr-r)r* __globals__rAr/ isinstancerwrE issubclassrJr'rxrRselfrefr2rr3)main globals_copyr main_dictrrs r _test_objectsrxs% > I IC99S>*l3.?.HHHHHH* 7 7CS>\#%666666' = =CS>-::::!9S>!$$(9 S(9!(<(<<<<<< H$55555&&)))))z\(377777*H55555#/00000||~~e!4!=!=!?!?????("""""" !%k::<  sE$E(( F2F  Fc Ti}|r ddlm}||d<td i|5} tjt |z|ddlm}m}m }| |tdt|g|}|rtj |tt5t!jt |zdddn #1swxYwYnM#tt5t!jt |zdddw#1swxYwYwxYwt%}tj|||dtj|d |jd t,|j|ddddS#1swxYwYdS) zNtest dump/load_module() for __main__, both in this process and in a subprocessr)flagsrr)pythonshellspr)rNrrrr:)r+rrTdill dump_module session_filedill.tests.__main__rrrcallrestrexitrrnrhrlrseek load_modulerYr) r extra_objectsrnsrrrrsession_buffers rtest_session_mainrsM'!& g  ' ' ' 'E2 6  \K7[ Q Q Q Q = = = = = = = = = =GGVXy#k:J:JKSXGYYE %chuooo'"" 6 6 ,4555 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6'"" 6 6 ,4555 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6! [AAAAA  ;;;;" /"8RY DDD!EEEEEEEEEEEEEEEEEEsrFA+C FC: FC F C FD'D  DD DD DA4FF!$F!cddltjt_djD}t}tj ||D] }j|= | dtj |tfd|DsJjusJdS)z8test dump/load_module() for a module other than __main__rNc<g|]}|d|S)__) startswith)rMrs rrOz&test_session_other..s*VVVCPTAUAUVCVVVrc3*K|] }|jvVdSrC)r-)rMrrs r z%test_session_other..s*>>#sfo%>>>>>>r) test_classdefatexitregisterrrr|r-keysrrrrrall) dict_objectsrrrs @rtest_session_otherrs"""" OOV,,,FNVV6?#7#7#9#9VVVLYYN^V,,,!! OC ^V,,, >>>>>>> > >>> > >V # # # # # #rc ddlm}d}||}d|_tj|}||ur-t d|j|j|j tj t}tj ||d|}||}tjt|| }|J|j|ksJ|jdksJ|tjvsJ|dtjt|}|j|ksJ|jdksJ|tjvsJdS) Nr) ModuleType __runtime__*z:There are objects to save by referenece that shouldn't be:)rqT)rrr)typesrr<rsession_stash_modulesprint__dill_imported__dill_imported_as__dill_imported_top_levelr+stderrrrgetvaluerr*r,valuesr)rmodnameruntimemodr session_dump return_vals rtest_runtime_modulers      Gj!!GGI , % %g . .C ' J!3#93;X:    YYN^GFFFF!**,,Lj!!G!',"7"7HHHJ      w & & & & 9???? #+,,.. . . . .w|4455G  w & & & & 9???? #+,,.. . . . . . .rcddl}ddl}ddl}ddl}|dx}t jd<|jdt_ |j |_ |j |_tj |_t!}tj||d|dtj|}t jd=t)|jhdksJdS)Nr__test__r) max_workersTr>rexecutor thread_exectypingAsyncContextManagerAsyncCM collectionsUserDictDict)rconcurrent.futuresrrrr+r,futuresThreadPoolExecutorrrrrrrrrrrloadsetr)r concurrentrrrrs rtest_refimported_imported_asrs LLLMMM$)$4$4Z$@$@@C#+j !&99a9HHDM#CH,CKmCOYYN^Sd;;;; )N # #C J s% & &+++      rc$t5t}tj|dxaabt}| dtj |}|tusJt|ksJ|ddksJ|dtksJ|dtusJ|dtksJd|vsJd|vsJ ddddS#1swxYwYdS)Nrr*rrur<yrt) rTrrrr<rrtr)rXrload_module_asdictru)r globals_state main_varss rtest_load_module_asdictrsu $$  ((( A  (( A+N;;  ))))yyM))))$ 2222!U****!....~"""")####)#####)$$$$$$$$$$$$$$$$$$sC(DD  D FrT):rrhr+r contextlibriorrrirjrkrerrr*lenargvrrr4rr urllibr!xmlr#xml.dom.minidomr$minidomtest_dictviewsr"r%r'r(r.r&r1r0r<rtrur=rvrArwrJrxr|rTrrrrrrrrrr:rrrsf  w||BGOOH557STT UUU  zcc#(mmq00SXa[I5M5M8A;&(KD\K/ CCCC2L CHJJJ """"0/////////$$$$$$ !!! a!  :::::x:::  & & & & & & & &+++:EEE4$$$& / / /D.$$$. z%(((($''''  """ r