a  ze(.@sddlZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl m Z ddlmZzddlZddlZWneydZYn0GdddZdS)N)support) print_warningc@seZdZdZd|ddddZdZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ ddZddZddZddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd1d2Zd3d4Zd5d6Zd7d8Zd9d:Zd;d<Z d=d>Z!d?d@Z"dAdBZ#dCdDZ$dEdFZ%dGdHZ&dIdJZ'dKdLZ(dMdNZ)dOdPZ*dQdRZ+dSdTZ,dUdVZ-dWdXZ.dYdZZ/d[d\Z0d]d^Z1d_d`Z2dadbZ3dcddZ4dedfZ5dgdhZ6didjZ7dkdle8e9DZ:dmdnZ;dodpZdudvZ?dwdxZ@dydzZAd{S)}saved_test_environmentFr)pgocCs||_||_||_||_dSN)testnameverbosequietr)selfrrr rr M/opt/bitninja-python-dojo/embedded/lib/python3.9/test/libregrtest/save_env.py__init__,szsaved_test_environment.__init__)zsys.argvcwdz sys.stdinz sys.stdoutz sys.stderrz os.environzsys.pathzsys.path_hooks __import__zwarnings.filterszasyncore.socket_mapzlogging._handlerszlogging._handlerListz sys.gettracezsys.warnoptionsz!multiprocessing.process._danglingzthreading._danglingzsysconfig._CONFIG_VARSzsysconfig._INSTALL_SCHEMESfileslocalezwarnings.showwarningZshutil_archive_formatsZshutil_unpack_formatsz!asyncio.events._event_loop_policyzurllib.requests._url_tempfileszurllib.requests._openercCs ttjjSr)listurllibrequestZ_url_tempfilesr r r r "get_urllib_requests__url_tempfilesKsz9saved_test_environment.get_urllib_requests__url_tempfilescCs|D]}t|qdSr)runlink)r Z tempfilesfilenamer r r &restore_urllib_requests__url_tempfilesMsz=saved_test_environment.restore_urllib_requests__url_tempfilescCstjjSrrr_openerrr r r get_urllib_requests__openerQsz2saved_test_environment.get_urllib_requests__openercCs |tj_dSrr)r openerr r r restore_urllib_requests__openerSsz6saved_test_environment.restore_urllib_requests__openercCstSr)rZmaybe_get_event_loop_policyrr r r %get_asyncio_events__event_loop_policyVszr?r savedr r r restore_shutil_archive_formatss  z5saved_test_environment.restore_shutil_archive_formatscCstjtjfSr)r[_UNPACK_FORMATSrXrr r r get_shutil_unpack_formatssz0saved_test_environment.get_shutil_unpack_formatscCs(|dt_tjtj|ddSr^)r[rbr>r?r_r r r restore_shutil_unpack_formatss  z4saved_test_environment.restore_shutil_unpack_formatscCsttjtjtjfSr)r"logging _handlersrXrr r r get_logging__handlerssz,saved_test_environment.get_logging__handlerscCsdSrr )r Zsaved_handlersr r r restore_logging__handlerssz0saved_test_environment.restore_logging__handlerscCsttjtjtjddfSr)r"re _handlerListrr r r get_logging__handlerListsz/saved_test_environment.get_logging__handlerListcCsdSrr )r Zsaved_handlerListr r r restore_logging__handlerListsz3saved_test_environment.restore_logging__handlerListcCsttjtjtjddfSr)r"r# warnoptionsrr r r get_sys_warnoptionssz*saved_test_environment.get_sys_warnoptionscCs |dt_|dtjdd<dSr&)r#rl)r Z saved_optionsr r r restore_sys_warnoptionss z.saved_test_environment.restore_sys_warnoptionscCs tjSr) threading _danglingrXrr r r get_threading__danglingsz.saved_test_environment.get_threading__danglingcCstjtj|dSr)rorpr>r?r_r r r restore_threading__danglings z2saved_test_environment.restore_threading__danglingcCstsdStjtjjSr)multiprocessingprocess_cleanuprprXrr r r %get_multiprocessing_process__danglings zr?r_r r r )restore_multiprocessing_process__danglings z@saved_test_environment.restore_multiprocessing_process__danglingcCs"tdttjtjttjfS)Nprefix) sysconfigZget_config_varr" _CONFIG_VARSr<rr r r get_sysconfig__CONFIG_VARSs  z1saved_test_environment.get_sysconfig__CONFIG_VARScCs(|dt_tjtj|ddSr&)ryrzr>r?r_r r r restore_sysconfig__CONFIG_VARSs  z5saved_test_environment.restore_sysconfig__CONFIG_VARScCsttjtjtjfSr)r"ry_INSTALL_SCHEMESrXrr r r get_sysconfig__INSTALL_SCHEMESs z5saved_test_environment.get_sysconfig__INSTALL_SCHEMEScCs(|dt_tjtj|ddSr&)ryr}r>r?r_r r r "restore_sysconfig__INSTALL_SCHEMESs  z9saved_test_environment.restore_sysconfig__INSTALL_SCHEMEScCstddtDS)Ncss&|]}|tj|rdndVqdS)/N)r*rAisdir).0fnr r r sz3saved_test_environment.get_files..)sortedr*listdirrr r r get_filessz saved_test_environment.get_filescCsLtj}||vrH|d|vrHtj|r2t|ntj|rHt|dS)Nr)rZTESTFNr*rAisfilerrrmtree)r Z saved_valuerr r r restore_filess    z$saved_test_environment.restore_filescCs g|]}|drtt|qS)LC_) startswithgetattrr)rlcr r r s z!saved_test_environment.c CsJg}|jD]:}z||t|dfWq ttfyBYq Yq 0q |Sr)_lcappendr setlocale TypeError ValueError)r Zpairingsrr r r get_locales  z!saved_test_environment.get_localecCs|D]\}}t||qdSr)rr)r r`rZsettingr r r restore_locales z%saved_test_environment.restore_localecCstjSrrP showwarningrr r r get_warnings_showwarning sz/saved_test_environment.get_warnings_showwarningcCs |t_dSrr)r fxnr r r restore_warnings_showwarning sz3saved_test_environment.restore_warnings_showwarningccsD|jD]8}|dd}d|}d|}|t||t||fVqdS)N._Zget_Zrestore_) resourcesreplacer)r nameZ method_suffixget_nameZ restore_namer r r resource_infos   z$saved_test_environment.resource_infocCstdd|D|_|S)Ncss|]\}}}||fVqdSrr )rrrVrestorer r r rz3saved_test_environment.__enter__..)r<r saved_valuesrr r r __enter__s z saved_test_environment.__enter__c Cs|j}|`t|jtjO_|D]n\}}}|}||} || kr*d|_|| |js*|js*t |d|j t d| d|dt j ddq*dS)NTz was modified by z Before: z After:  )fileflushF)rr gc_collectchangedZenvironment_alteredrpopr rrrprintr#r4) r exc_typeexc_valexc_tbrrrVrcurrentZoriginalr r r __exit__s   zsaved_test_environment.__exit__N)rF)B__name__ __module__ __qualname__rr rrrrrrr!r%r)r,r.r1r2r5r6r9r:r=r@rBrCrErFrHrJrMrOrRrSrYrZr]rarcrdrgrhrjrkrmrnrqrrrvrwr{r|r~rrrdirrrrrrrrrrr r r r rszr)r rLrrer*r[r#ryroZurllib.requestrrPtestrZtest.libregrtest.utilsr_multiprocessingZmultiprocessing.processrs ImportErrorrr r r r s"