idddlZddlZddlZddlmZddlmZddlmZddl m Z m Z m Z m Z ddlmZGddZGd d ZGd d Zd ZdZeje dGddZdS)N) TemporaryFile) exec_command) get_pythonexe)tempdirassert_ assert_warnsIS_WASM)StringIOc&eZdZdZddZdZdZdS)redirect_stdoutz9Context manager to redirect stdout for exec_command test.Nc,|p tj|_dSN)sysstdout_stdout)selfrs \/opt/cloudlinux/venv/lib/python3.11/site-packages/numpy/distutils/tests/test_exec_command.py__init__zredirect_stdout.__init__+ cJtj|_|jt_dSr)rr old_stdoutrrs r __enter__zredirect_stdout.__enter__*\ rc|j|jt_|jdSr)rflushrrrcloserexc_type exc_value tracebacks r__exit__zredirect_stdout.__exit__9 _  rr__name__ __module__ __qualname____doc__rrr#rrr r LCC,,,,"""rr c&eZdZdZddZdZdZdS)redirect_stderrz9Context manager to redirect stderr for exec_command test.Nc,|p tj|_dSr)rstderr_stderr)rr/s rrzredirect_stderr.__init__ rrcJtj|_|jt_dSr)rr/ old_stderrr0rs rrzredirect_stderr.__enter__#rrc|j|jt_|jdSr)r0rr2rr/rrs rr#zredirect_stderr.__exit__'r$rrr%r*rrr-r-r+rr-c&eZdZdZddZdZdZdS)emulate_nonposixz.Context manager to emulate os.name != 'posix' non-posixc||_dSr) _new_name)rosnames rrzemulate_nonposix.__init__/s rcJtj|_|jt_dSr)osname _old_namer8rs rrzemulate_nonposix.__enter__2s.rc(|jt_dSr)r=r;r<rs rr#zemulate_nonposix.__exit__6s.rN)r6r%r*rrr5r5-sL88    !!!!!!!!rr5c tt5tt5t t 5t jddddn #1swxYwYdddn #1swxYwYdddn #1swxYwYtjdkrt5tt5tt5t t 5t jddddn #1swxYwYdddn #1swxYwYdddn #1swxYwYddddS#1swxYwYdSdS)Ncd '.'posix) r r r-rrDeprecationWarningrr;r<r5r*rrtest_exec_command_stdoutrC:s  $ $44 ]__ - - 4 4011 4 4)(333 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4444444444444444  w'    < < ,, < <$]__55<<%&899<<$1(;;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < <sBB A." B.A2 2B5A2 6B9 BB B B BB #B E9!E!=E D3 ' E 3D7 7E :D7 ;E > E! E E!E E! E9!E% %E9(E% )E99E=E=c ttd5tt5t t 5t jddddn #1swxYwYdddn #1swxYwYdddn #1swxYwYtjdkrt5tt5tt5t t 5t jddddn #1swxYwYdddn #1swxYwYdddn #1swxYwYddddS#1swxYwYdSdS)Nzw+)moder@rA) r rr-r rrBrr;r<r5r*rrtest_exec_command_stderrrFRs D111 2 244 XZZ ( ( 4 4011 4 4)(333 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4444444444444444  w'    < < 11 < <$XZZ00<<%&899<<$1(;;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < <sBBA0$ B0A4 4B7A4 8B; BB BB BB"%B"E;#E#?E D5 ) E 5D9 9E <D9 =E  E# E E#E E# E;#E' 'E;*E' +E;;E?E?zCannot start subprocess)reasonc2eZdZdZdZdZdZdZdZdS)TestExecCommandc,t|_dSr)rpyexers r setup_methodzTestExecCommand.setup_methodds"__ rc tjd\}}t|dkt|dktjd|jz\}}t|dkt|dkdS)Nzcmd /C echo path=%path%rz3"%s" -c "import sys;sys.stderr.write(sys.platform)"win32)rrrKrkwssos rcheck_ntzTestExecCommand.check_ntgs()BCC1QR( > KMM1QW rc rtjdi|\}}t|dkt|dktjdi|\}}t|dkt|dktjdddi|\}}t|dkt|dktjdi|\}}t|dkt|dkd tjvrd tjd <tjdi|\}}t|dkt|d ktjdd d i|\}}t|dkt|d ktjdi|\}}t|dkt|d ktjd =tjdi|\}}t|dkt|dktjdi|\}}t|dkt|dktjdi|\}}t|dkt|dktjd|jzfi|\}}t|dkt|dkdS)N echo HellorHello echo $AAArN echo "$AAA"AAATereBBBHi echo "$BBB"Heythis_is_not_a_commandecho path=$PATHz1"%s" -c "import sys,os;sys.stderr.write(os.name)"rA)rV)rX)rY)r^)r`)ra)rrr;environrKrPs r check_posixzTestExecCommand.check_posixqs(====1QW (<<<<1QR(JJFJcJJ1QV (>>#>>1QR  " " $BJu ,BBcBBDAq AFOOO AI   ,MMMMMDAq AFOOO AJ   ,BBcBBDAq AFOOO AI    5!,BBcBBDAq AFOOO AG   (HHCHH1QR(BBcBB1QR( @ Z    1 QW rctjd|jzfi|\}}t|dkt|dktjd|jzfi|\}}t|dkt|dktjd|jzfi|\}}t|dkt|dktjd|jzfi|\}}t|dkt|d kdS) Nz"%s" -c "raise 'Ignore me.'"rrNzV"%s" -c "import sys;sys.stderr.write('0');sys.stderr.write('1');sys.stderr.write('2')"012z!"%s" -c "import sys;sys.exit(15)"z"%s" -c "print('Heipa'")Heipa)rrKrrPs r check_basiczTestExecCommand.check_basicsY(5 BKKFIKK1QR(@ Z    1 QU (4tzAJJEHJJ1RR(1DJ>GGBEGG1QW rc 2t5}d}tj||}t |d5}|ddddn #1swxYwYt jd|jd|dfi|\}}t|dkt|dkt jd|jd|d fd |i|\}}t|dkt|dkddddS#1swxYwYdS) NfilewrW"z" -c "f = open('z', 'r'); f.close()"rrNz$', 'r'); print(f.read()); f.close()" execute_in) rr;pathjoinopenwriterrKr)rrQtmpdirfntmpfilefrRrSs rcheck_execute_inz TestExecCommand.check_execute_ins YY "&Bgll62..Ggs## !q    ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ,,***bbb"**%(**DAq AFOOO AG   ,,%)ZZZ5PPAGPKNPPDAq AFOOO AL ! ! ! " " " " " " " " " " " " " " " " " "s63D A$ D $A( (D +A( ,BD  DDcvtt5tt5tt5t jdkr-|d|dnrs """"""((((((666666AAAAAAAAAAAA                  ! ! ! ! ! ! ! !<<<0 < < < G$=>>v5v5v5v5v5v5v5?>v5v5v5r