id'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 L/opt/cloudlinux/venv/lib/python3.11/site-packages/dill/tests/test_session.py _error_linersk    ! ! , , . .r 2 : :7CS MRUDU V VDD9Ddkkmmm TT__main__--childTruemodulec dD]}ddl}ddl}dD]}|rdSdS#t$r}t|||f|_d}~wwxYw)Njsonurl local_modsaxdomr)Calendarisleap)calendarcmathAssertionErrorrargs)rrr'r(rs r test_modulesr+!s A > > # " " " " " " "- O O > > > > >    %eS+>>@EJ  s A<A)r#)r%r&day_name)log)AliceBobCarolc |dzS)Nrxs rsquaredr6Rs q!t rc |dzS)Nrr3r4s rr8Ss !Q$rceZdZdZdS)Personc"||_||_dSN)nameage)selfr=r>s r__init__zPerson.__init__Us rN)__name__ __module__ __qualname__r@r3rrr:r:Ts#rr:ceZdZdZdS)CalendarSubclassc>d|DS)Nc(g|]}t|Sr3)r,).0is r z-CalendarSubclass.weekdays..[s999 999r) iterweekdaysr?s rweekdayszCalendarSubclass.weekdaysZs"99T%6%6%8%89999rN)rArBrCrMr3rrrErEYs#:::::rrEcXeZdZeZdZdZdZdS) TestNamespacec ||_dSr<)extra)r?rQs rr@zTestNamespace.__init__bs  rc(t|_tt|jt|j|Sr<)globalscopybackupclearupdate test_globalsrQrLs r __enter__zTestNamespace.__enter__dseiinn&&   *+++ $$$ rctt|jdSr<)rSrVrWrU)r?exc_infos r__exit__zTestNamespace.__exit__js6  %%%%%rN) rArBrCrSrTrXr@rYr\r3rrrOrO`sV799>>##L &&&&&rrOc|jddddz}t|dr|jn|}tjtj|jd}tj|ftj |ffD]<\}}tt5||dddn #1swxYwY=dS)N.rrz.pyc __cached__ __pycache__) __file__splithasattrr_ospathjoindirnameremove removedirsrOSError)rcachedpycacherhfiles r_clean_up_cachernns _ " "3 * *1 - 6F")&,"?"? KV  VFgll27??6?;;]KKG)V,r}g.FG  g     F4LLL               s5 C  C C c tj}dD]}dD]}dD]}dS#t$r}t|||f|_d}~wwxYw)Nr)r5emptynames)r6cubed)r__dict__r)rr*)main globals_copyr main_dictrrs r _test_objectsrwxs% > I ICC+ 7 7CC( = =CC = = !%k::<  s AAAc 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)flagsryr)pythonshellspr)r|Nrrrwr3)sysryrOdill dump_module session_filedill.tests.__main__r{r|r}callrastrexitrrjrdrhrseek load_modulerUr) r extra_objectsrynsr{r|r}rsession_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!cLddltjt_djD}t}tj ||D] }j|= | dtj |dS)z8test dump/load_module() for a module other than __main__rNc<g|]}|d|S)__) startswith)rHrs rrJz&test_session_other..s*VVVCPTAUAUVCVVVr) test_classdefatexitregisterrnselfrefrskeysrrrrr) dict_objectsrrrs @rtest_session_otherrs"""" OOV,,,FNVV6?#7#7#9#9VVVLYYN^V,,,!! OC ^V,,,,,rcddlm}d}||}d|_tj|}||ur-t d|j|j|j tj t}tj ||d|}||}tjt|| }|dtjt|}dS) Nr) ModuleType __runtime__*z:There are objects to save by referenece that shouldn't be:)rmT)rrr)typesrr5rsession_stash_modulesprint__dill_imported__dill_imported_as__dill_imported_top_levelr~stderrrrgetvaluerr)rmodnameruntimemodr session_dump return_vals rtest_runtime_modulers      Gj!!GGI , % %g . .C ' J!3#93;X:    YYN^GFFFF!**,,Lj!!G!',"7"7HHHJw|4455GGGrcddl}ddl}ddl}ddl}|dx}t jd<|jdt_ |j |_ |j |_tj |_t!}tj||d|dtj|}t jd=dS)Nr__test__r) max_workersTrz) collectionsconcurrent.futuresrtypingrr~modulesfuturesThreadPoolExecutorrexecutorUserDictDictAsyncContextManagerAsyncCM thread_execrrrload)r concurrentrrrrs rtest_refimported_imported_asrsLLLMMM$)$4$4Z$@$@@C#+j !&99a9HHDM#CH,CKmCOYYN^Sd;;;; )N # #C Jrc4t5t}tj|dxaabt}| dtj |}ddddS#1swxYwYdS)Nr) rOrrrr5yrprSrTrload_module_asdict)r globals_state main_varss rtest_load_module_asdictrs $$  ((( A  (( A+N;; $$$$$$$$$$$$$$$$$$sA1B  BBFrzT):rrdr~r contextlibriorrrerfrgrarrrAlenargvrrr+rr urllibr!xmlr#xml.dom.minidomr$minidomtest_dictviewsr"r'r%r&r,r(r- complex_logr5rprqr6rrr:personrEcalrrOrnrrwrrrrrr3rrrsf  w||BGOOH557STT UUU  zcc#(mmq00SXa[I5M5M8A;&(KD\K/ CCCC2L CHJJJ """"0/////////$$$$$$ !!! a!  :::::x:::  & & & & & & & &+++:EEE4$$$& / / /D.$$$. z%(((($''''  """ r