a  ze@sdZddlZddlZddlZddlZddlmZddlm Z ddl m Z ddl m Z ddlmZGdd d e je je jejZd d Zed kreedS) z)Tests for distutils.command.install_data.N) install_lib) Extension)support)DistutilsOptionError) run_unittestc@sBeZdZddZeejdddZddZ dd Z d d Z d S) InstallLibTestCasecCs|d}t|}|||jd||jdd|_|t|jd|_|t|jd|_|||jddS)Nrfoo42) create_distrZfinalize_options assertEqualcompileoptimizeZ assertRaisesr)selfdistcmdrT/opt/bitninja-python-dojo/embedded/lib/python3.9/distutils/tests/test_install_lib.pytest_finalize_optionss z(InstallLibTestCase.test_finalize_optionszbyte-compile disabledcCs|\}}t|t|}d|_|_tj|d}||d| |gt j j ddd}t j j d|jd}| tj|| tj|dS)Nrzfoo.pyz # python file) optimization)r oschdirrrrpathjoin write_file byte_compile importlibutilcache_from_sourceZ assertTrueexists)r project_dirrrfZpyc_fileZ pyc_opt_filerrrtest_byte_compile%s     z$InstallLibTestCase.test_byte_compilecCs|\}}t|tdt|}d|_|_||_tj |dd}| |dt ddgg|j _dg|j _d|j _|}|t|d|dS) Nspamr __init__.py# python packager xxxsetup.py)r rrmkdirrrrmkdtemp install_dirrrrr distribution ext_modulespackages script_nameZ get_outputsrlen)rr#rrr$Zoutputsrrrtest_get_outputs5s       z#InstallLibTestCase.test_get_outputscCs|\}}t|tdt|}d|_|_||_tj |dd}| |dt ddgg|j _dg|j _d|j _|}|t|d|dS) Nr&rr'r(r r)r*r )r rrr,rrrr-r.rrrrr/r0r1r2Z get_inputsrr3)rr#rrr$Zinputsrrrtest_get_inputsIs       z"InstallLibTestCase.test_get_inputscCsr|d}t|}d|_d|_tj}dt_z|gW|t_n|t_0|d|jdd|jdddS)NrTzbyte-compiling is disabledrr ) r rrrsysdont_write_bytecoderZassertInZlogs)rrrZold_dont_write_bytecoderrrtest_dont_write_bytecode]s  z+InstallLibTestCase.test_dont_write_bytecodeN) __name__ __module__ __qualname__runittestZskipIfr6r7r%r4r5r8rrrrrs   rcCs ttS)N)r<Z makeSuiterrrrr test_suiteosr=__main__)__doc__r6rimportlib.utilrr<Zdistutils.command.install_librZdistutils.extensionrZdistutils.testsrZdistutils.errorsrZ test.supportrZTempdirManagerZLoggingSilencerZ EnvironGuardZTestCaserr=r9rrrrs"     a