I4hSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSK r SSK r SSK r SSK J r SSKJrJrJr SSKJrJrJrJrJrJrJrJr \ R6r/SQrSr\4Sjr\S4S jr\ R@"S S \RB55r"S r#\$S :Xa\RJ"5 gg)N)support) import_helperis_apple os_helper)make_pkg make_script make_zip_pkgmake_zip_scriptassert_python_okassert_python_failure spawn_python kill_python)test1test2test3a# Script may be run with optimisation enabled, so don't rely on assert # statements being executed def assertEqual(lhs, rhs): if lhs != rhs: raise AssertionError('%r != %r' % (lhs, rhs)) def assertIdentical(lhs, rhs): if lhs is not rhs: raise AssertionError('%r is not %r' % (lhs, rhs)) # Check basic code execution result = ['Top level assignment'] def f(): result.append('Lower level reference') f() assertEqual(result, ['Top level assignment', 'Lower level reference']) # Check population of magic variables assertEqual(__name__, '__main__') from importlib.machinery import BuiltinImporter _loader = __loader__ if __loader__ is BuiltinImporter else type(__loader__) print('__loader__==%a' % _loader) print('__file__==%a' % __file__) print('__cached__==%a' % __cached__) print('__package__==%r' % __package__) # Check PEP 451 details import os.path if __package__ is not None: print('__main__ was located through the import system') assertIdentical(__spec__.loader, __loader__) expected_spec_name = os.path.splitext(os.path.basename(__file__))[0] if __package__: expected_spec_name = __package__ + "." + expected_spec_name assertEqual(__spec__.name, expected_spec_name) assertEqual(__spec__.parent, __package__) assertIdentical(__spec__.submodule_search_locations, None) assertEqual(__spec__.origin, __file__) if __spec__.cached is not None: assertEqual(__spec__.cached, __cached__) # Check the sys module import sys assertIdentical(globals(), sys.modules[__name__].__dict__) if __spec__ is not None: # XXX: We're not currently making __main__ available under its real name pass # assertIdentical(globals(), sys.modules[__spec__.name].__dict__) from test import test_cmd_line_script example_args_list = test_cmd_line_script.example_args assertEqual(sys.argv[1:], example_args_list) print('sys.argv[0]==%a' % sys.argv[0]) print('sys.path[0]==%a' % sys.path[0]) # Check the working directory import os print('cwd==%a' % os.getcwd()) cH[XU5n[R"5 U$N)r importlibinvalidate_caches) script_dirscript_basenamesource to_returns @/opt/alt/python313/lib64/python3.13/test/test_cmd_line_script.py_make_test_scriptrOs J@I ! cJ[XX#XE5n[R"5 U$r)r rr)zip_dir zip_basenamepkg_namerrdepthrs r_make_test_zip_pkgr#Ts%WH#,I ! rc\rSrSrSDSjrSS.SjrSS.SjrSrSr\ RSES j5r SES jr SES jr S rS rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!S r"S!r#S"r$S#r%S$r&S%r'\ RS&5r(S'r)S(r*S)r+S*r,S+r-S,r.S-r/S.r0S/r1S0r2S1r3S2r4S3r5S4r6S5r7S6r8S7r9S8r:S9r;S:rR~"\@RRS<5S=5\>R"\DRRS>5=(a9 \@R"S?5R\@R"S@5R:HSA5SB55rISCrJg)F CmdLineTest\Nc 8[S:a"[SU-5 [[U55 URUS5 SU-n SU-n SU-n SU-n SU-nU c[R "5n S U -n[S:a7[S 5 [U 5 [U 5 [U 5 [U5 UR U RS 5U5 UR U RS 5U5 UR U RS 5U5 UR U RS 5U5 [RR(d!UR URS 5U5 UR URS 5U5 g) NrzOutput from test script %r:rz__loader__==%az __file__==%az__package__==%rzsys.argv[0]==%azsys.path[0]==%azcwd==%azExpected output:utf-8) verboseprintrepr assertEqualosgetcwdassertInencodesysflags safe_path)self script_name exit_codedata expected_fileexpected_argv0expected_path0expected_packageexpected_loader expected_cwdprinted_loader printed_fileprinted_package printed_argv0 printed_path0 printed_cwds r _check_outputCmdLineTest._check_output^sV Q; /+= > $t*  A&)O;% 5 +.>>)N: )N:  99;L,. Q; $ % ,  / " - +  n++G4d; l))'2D9 o,,W5t< m**73T:yy"" MM-..w7 > k((148rcwdc [U[5(aU/n/[R"5QUQUQ[Qn [ U SUS.U D6upn UR XX-UX4XVU5 g)NF __isolated__cwd) isinstancestrr!optim_args_from_interpreter_flags example_argsr rD)r4script_exec_argsr8r9r:r;r<rGcmd_line_switchesenv_varsrun_argsrcouterrs r _check_scriptCmdLineTest._check_script}s & , , 01 JW>>@J&J)9J  +M)+c Crc0[U[5(aU4nO [U5nXA-n[USUS.UD6upxn [S:a2[ SU<S35 [ [ U 55 [ SU-5 URURS5U 5 g)NFrIrzOutput from test script zExpected output: %rr() rLrMtupler r)r*r+r/r0) r4rP expected_msgrGrQrRrSrTrUrVs r_check_import_errorCmdLineTest._check_import_errors & , , 02 $%56 $7, %s 6>  Q; ,-=,Aq,AB C $s)  ',6 7 l))'2C8rc[SS5upn[[RR5R S5nUR XB5 g)N-czprint(__loader__)r()r r+r machineryBuiltinImporterr0r/)r4rTrUrVexpecteds rtest_dash_c_loaderCmdLineTest.test_dash_c_loaders@'.AB  ++;;<CCGL h$rc@[5nURRS5 URR5 [ U5n[ [ RR5RS5nURX25 g![ U5nf=f)Nsprint(__loader__) r() r stdinwriteflushrr+rrarbr0r/)r4prUrcs rtest_stdin_loaderCmdLineTest.test_stdin_loadersq N ! GGMM0 1 GGMMOa.C ++;;<CCGL h$a.Cs 5B Bc## U(a%[S[RS9nURnO$[S[RS9nUR nUR S5nUS:XaOUR5 M*Uv [U5 UR5 g![U5 UR5 f=f7f)Nz-i)stderrs>>> ) r subprocessPIPErnSTDOUTstdoutreadreadlinerclose)r4separate_stderrrjrnr7s rinteractive_pythonCmdLineTest.interactive_pythons T*//:AXXFT**;*;%>%@ A6 5 5s A.B  BcBURU5nURRS5 URR5 U(a URO UR nUR SUR55 UR SUR55 UR SUR55 UR SUR55 UR SUR55 SSS5 g!,(df  g=f)Ns1/0 s Traceback sFile ""s1/0 ~^~sZeroDivisionError)rxrgrhrirnrsr/ru)r4rwrjrns rcheck_repl_stderr_flush#CmdLineTest.check_repl_stderr_flushs  $ $_ 5 GGMM( # GGMMO!0QXXahhF MM-): ; MM+V__-> ? MM&&//"3 4 MM*foo&7 8 MM.0A B6 5 5s C5D Dc$UR5 grr|r4s rtest_repl_stdout_flush"CmdLineTest.test_repl_stdout_flush $$&rc&URS5 gNTrrs r&test_repl_stdout_flush_separate_stderr2CmdLineTest.test_repl_stdout_flush_separate_stderr $$T*rc$UR5 grrrs rtest_repl_stderr_flush"CmdLineTest.test_repl_stderr_flushrrc&URS5 grrrs r&test_repl_stderr_flush_separate_stderr2CmdLineTest.test_repl_stderr_flush_separate_stderrrrc [R"5n[US5nURX"UUS[R R US9 SSS5 g!,(df  g=f)Nscript)r=rtemp_dirrrWrraSourceFileLoaderr4rr5s rtest_basic_scriptCmdLineTest.test_basic_scriptsV    !Z+JAK   {)4(22CC,6  8" ! !s 9A A&c p[R"5nUR[RR U5U5 [ US5n[RRU5nURX2UUS[RR5 SSS5 g!,(df  g=f)Nr) rtemp_cwd assertTruer-pathisabsrbasenamerWrrar)r4rr5 relative_names rtest_script_abspathCmdLineTest.test_script_abspaths   !Z OOBGGMM*5z B+JAKGG,,[9M   }=)4(22CC E " ! !s BB'' B5c T[R"5n[US5n[R"USS9 [ R "U5 [R"U5nURX3X1S[RR5 SSS5 g!,(df  g=f)NrTdoraise rrr py_compilecompiler-removermake_legacy_pycrWrraSourcelessFileLoaderr4rr5pyc_files rtest_script_compiled CmdLineTest.test_script_compiledsy    !Z+JAK   {D 9 IIk "$44[AH   x'T(22GG I " ! !s A:B B'c [R"5n[US5nURXUUS[R R 5 SSS5 g!,(df  g=f)N__main__rZrrs rtest_directoryCmdLineTest.test_directorysO    !Z+J CK   z )2(22CC E" ! !s :A A'c V[R"5n[US5n[R"USS9 [ R "U5 [R"U5nURXUUS[RR5 SSS5 g!,(df  g=f)NrTrrZrrs rtest_directory_compiled#CmdLineTest.test_directory_compileds{    !Z+J CK   {D 9 IIk "$44[AH   zZ)2(22GG I " ! !s A;B B(c[R"5nSU-nURX5 SSS5 g!,(df  g=f)N"can't find '__main__' module in %r)rrr])r4rmsgs rtest_directory_error CmdLineTest.test_directory_errors4    !Z6CC  $ $Z 5" ! !s 6 Ac [R"5n[US5n[USU5up4UR X4X3S[ R 5 SSS5 g!,(df  g=f)Nrtest_ziprZ)rrrr rW zipimport zipimporter)r4rr5zip_namerun_names r test_zipfileCmdLineTest.test_zipfilesV    !Z+J CK!0Z!U H   x8r(44 6" ! !s >A A+c 8[R"5n[US5n[R"US[R R S9n[USU5upEURXEXDS[R5 SSS5 g!,(df  g=fNrT)rinvalidation_moderrZ) rrrrrPycInvalidationMode TIMESTAMPr rWrrr4rr5 compiled_namerrs rtest_zipfile_compiled_timestamp+CmdLineTest.test_zipfile_compiled_timestamps}    !Z+J CK&..T","@"@"J"JLM"1Z!W H   x8r(44 6 " ! ! A,B  Bc 8[R"5n[US5n[R"US[R R S9n[USU5upEURXEXDS[R5 SSS5 g!,(df  g=fr) rrrrrr CHECKED_HASHr rWrrrs r"test_zipfile_compiled_checked_hash.CmdLineTest.test_zipfile_compiled_checked_hash$s}    !Z+J CK&..T","@"@"M"MOM"1Z!W H   x8r(44 6 " ! !rc 8[R"5n[US5n[R"US[R R S9n[USU5upEURXEXDS[R5 SSS5 g!,(df  g=fr) rrrrrrUNCHECKED_HASHr rWrrrs r$test_zipfile_compiled_unchecked_hash0CmdLineTest.test_zipfile_compiled_unchecked_hash.s}    !Z+J CK&..T","@"@"O"OQM"1Z!W H   x8r(44 6 " ! !rc[R"5n[US5n[USU5up4SU-nUR X55 SSS5 g!,(df  g=f)Nnot_mainrr)rrrr r])r4rr5rrrs rtest_zipfile_errorCmdLineTest.test_zipfile_error8sQ    !Z+J CK!0Z!U H6AC  $ $X 3 " ! !s 2A Ac ,[R"5n[RR US5n[ U5 [ US5nURSS/X3US[RRUS9 SSS5 g!,(df  g=f)Ntest_pkgr-mtest_pkg.scriptrF rrr-rjoinrrrWrrarr4rpkg_dirr5s rtest_module_in_package"CmdLineTest.test_module_in_package?sx    !Zggll:z:G W +GX>K   &78+):(22CC#-  / " ! ! A&B Bc [R"5n[USSS5up#URSS/X3US[R X!S9 SSS5 g!,(df  g=f)Nrrrrr PYTHONPATHrGrrr#rWrrr4rrrs r!test_module_in_package_in_zipfile-CmdLineTest.test_module_in_package_in_zipfileIs^    !Z!3J JX`!a H   &78():y7L7L*2  D" ! !s 5A A"c [R"5n[USSSSS9up#URSS/X3US[R X!S 9 SSS5 g!,(df  g=f) Nrrr)r"rztest_pkg.test_pkg.scriptztest_pkg.test_pkgrrrs r$test_module_in_subpackage_in_zipfile0CmdLineTest.test_module_in_subpackage_in_zipfilePsc    !Z!3J JX`hi!j H   &@A8)+>(44*2  D" ! !s 4A A!c ,[R"5n[RR US5n[ U5 [ US5nURSS/UX1S[RRUS9 SSS5 g!,(df  g=f)NrrrrFrrs r test_packageCmdLineTest.test_packageXsw    !Zggll:z:G W +GZ@K   j1;* (22CC#-  / " ! !rc [R"5n[RR US5n[ U5 [ US5n[R"USS9n[R"U5 [R"U5nURSS/UXQS[RRUS9 SSS5 g!,(df  g=f)NrrTrrrF)rrr-rrrrrrrrrrWrrar)r4rrr5rrs rtest_package_compiled!CmdLineTest.test_package_compiledbs    !Zggll:z:G W +GZ@K&..{DIM IIk "$44[AH   j18'Z(22GG#-  /" ! !s B'C Cc[R"5n[RR US5n[ U5 SnUR SS/X1S9 SSS5 g!,(df  g=f)Nrz7'test_pkg' is a package and cannot be directly executedrrFrrr-rrrr])r4rrrs rtest_package_errorCmdLineTest.test_package_errorosW    !Zggll:z:G W *C  $ $dJ%7 $ M " ! !s AA A-c6[R"5n[RR US5n[ U5 [RR US5n[ U5 SnUR SS/XAS9 SSS5 g!,(df  g=f)Nrrz^Cannot use package as __main__ module; 'test_pkg' is a package and cannot be directly executedrrFr)r4rrmain_dirrs rtest_package_recursion"CmdLineTest.test_package_recursionwsu    !Zggll:z:G W ww||GZ8H X *C  $ $dJ%7 $ M" ! !s A+B  Bc @[R"5n[R"US9 [RR US5n[ US5 [US5n[SS/[Q7SS06upEn[S :a[[U55 S S-nURURS 5U5 URX4UX3US[ R"R$5 SSS5 SSS5 g!,(df  N=f!,(df  g=f) Nrrz1import sys; print('init_argv0==%r' % sys.argv[0])rrrrJFrzinit_argv0==%rr()rr change_cwdr-rrrrr rOr)r*r+r/r0rDrrar)r4rrr5rTrUrVrcs rtest_issue8202CmdLineTest.test_issue8202s   !Z%%:6'',,z:>"UV/B /6Gi,ichi Q;$s)$+d2 hoog6<"";C#.Z#,#6#6#G#GI7" !66" !s#DCC>-D> D D Dc [R"5n[R"US9 [SSSS9nUR S5 [ SSSS 9up4n[ S :a[[U55 S S -nURURS5U5 SSS5 SSS5 SSS5 g!,(df  N=f!,(df  N(=f!,(df  g=f) Nrr`wr(encodingr7z2import sys; print("sys.path[0]==%r" % sys.path[0])F)rJrzsys.path[0]==%rrZ) rrropenrhr r)r*r+r/r0)r4rfrTrUrVrcs r"test_issue8202_dash_c_file_ignored.CmdLineTest.test_issue8202_dash_c_file_ignoreds   !Z%%:6$g6!GGFO#3DL#($*LBS{d3i(025HMM(//'":C@77" !6676" !s:C CA$B4C#C4 C >C C C C$c [R"5n[US5n[R"US9 [ SSSS9nUR S5 [ SS/[Q7SS 06upEnURX$UX"US [RR5 SSS5 SSS5 SSS5 g!,(df  N=f!,(df  N(=f!,(df  g=f) Notherrrrr(rr7rJFrZ) rrrrr rhr rOrDrrar)r4rr5r rTrUrVs r"test_issue8202_dash_m_file_ignored.CmdLineTest.test_issue8202_dash_m_file_ignoreds   !Z+J@K%%:6$g6!GGFO#3D'$FL$F?D$FLBS&&{&1 B&/&9&9&J&JL 77" !7676" !s;!C CAB3C"C3 C =C C C C#cZ[R"5n[RR US5n[ USSSS9nUR S5 UR S5 [S5HnUR S 5 M UR S5 SSS5 [R"US 9 [U5upVnSSS5 URS W5 URS W5 SSS5 g!,(df  Nf=f!,(df  NL=f!,(df  g=f) Nz issue20884.pyrlatin1 )rnewlinez#coding: iso-8859-1 z""" zQxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx rr) rrr-rrr rhrangerr r,)r4rr5r _rTrUrVs rtest_issue20884CmdLineTest.test_issue20884s   !Z'',,z?CKk34HA/0 rAGGM*# I%%:6/ < 7   S# &   S# &" !HH76" !s<-DAC:D6D ,D: D D D D D*c'&# [R"5n[R"US9 [RR US5n[ U/UQ76 Uv SSS5 SSS5 g!,(df  N=f!,(df  g=f7f)Nrr)rrrr-rrr)r4argsrrs rsetup_test_pkgCmdLineTest.setup_test_pkgsc    !Z$$*5ggll:z:G W $t $M6" !55" !s3BB1A/B& B/ A= 9B B Bc[S/UQ7SS06up#n[S:a[[U55 UR US5 U$)NrrJFr)r r)r*r+r,)r4rrTrUrVs rcheck_dash_m_failure CmdLineTest.check_dash_m_failuresB,TKDKUK  Q; $s)  Q rcUR5n[USS5nUR"S/[Q76nUR SU5 SSS5 g!,(df  g=f)Nrz+if __name__ == '__main__': raise ValueErrorztest_pkg.others ValueError)rrrrOr/)r4rr5rVs rtest_dash_m_error_code_is_one)CmdLineTest.test_dash_m_error_code_is_onesT "g+GW,Y[K++,<L|LC MM- - # " "s 7A AcSnUHcup#URU5 [SU5upEnURUS5 URXc5 UR SU5 SSS5 Me g!,(df  Mw=f)N))builtinssNo code object available)z builtins.xs=Error while finding module specification.*ModuleNotFoundError)z builtins.x.ys]Error while finding module specification.*ModuleNotFoundError.*No module named.*not a package)rs=No module named.*is a package and cannot be directly executed)zimportlib.nonexistentsNo module named)z .unittests#Relative module names not supportedrr Traceback)subTestr r, assertRegex assertNotIn)r4testsnameregexrTrrVs rtest_dash_m_errorsCmdLineTest.test_dash_m_errorssp  !KDd#24> s  Q'  ,  s3 $#!##s AA-- A< c[R"5n[R"US9 [R"S5 [ SS5 SSS5 UR S5nURUS5 URSU5 URSU5 SSS5 SSS5 g!,(df  Nf=f!,(df  N(=f!,(df  g=f)Nrrztest_pkg/__init__.pycwbsGError while finding module specification.*ImportError.*bad magic numbers is a packager&) rrrr-mkdirr rr(r)r4rrVs rtest_dash_m_bad_pycCmdLineTest.test_dash_m_bad_pycs    !Z$$*5 HHZ -t45++J7C   S2 3   _c 2   \3 /6" !5465" !s;C#CB0ACC0 B> :C C C C cR[R"5n[R"US9 [SS5 SSS5 UR S5nUR SU5 SSS5 SSS5 g!,(df  NB=f!,(df  N(=f!,(df  g=f)Nrz asyncio.pyr0s>Try using 'asyncio' instead of 'asyncio.py' as the module name)rrrr rr/r2s r*test_hint_when_triying_to_import_a_py_file6CmdLineTest.test_hint_when_triying_to_import_a_py_files~    !Z$$*5lD)*++L9C MM@AD F 6" !*)65" !s8B BA6+B%B6 B B B B B&c[[[[4nUHnURnSR U5nUR U5 URU5nURS5nURURS5U5 URSU5 URSU5 SSS5 SSS5 M g!,(df  N=f!,(df  M=f)Nz%raise {0}('Exception in __init__.py')rasciisException in __init__.pyr&) ImportErrorAttributeError TypeError ValueError__name__formatr'rrr/r0)r4 exceptions exceptioninitrrVs rtest_dash_m_init_traceback&CmdLineTest.test_dash_m_init_tracebacks">9jI #I!**I:AA)LDi(''-// ; i..w7= 93? lC0 .)($.-)(s% CAC3C C C C( cUR5nSn[USU5 URS5nURSU5 URSU5 URSU5 SSS5 g!,(df  g=f)Nz1raise ImportError('Exception in __main__ module')rrs ImportErrorsException in __main__ moduler&)rrrr/)r4rmainrVs rtest_dash_m_main_traceback&CmdLineTest.test_dash_m_main_tracebacksh  "gFD gz4 8++J7C MM.# . MM93 ? MM, , # " "s AA11 A?c [R"S5n[R"5n[ USU5n[ U5upEnUR S5RS5nUR[U5S5 URUSRS55 URUSRS 55 URUS RS 55 SSS5 g!,(df  g=f) Nz| try: raise ValueError except: raise NameError from None rr9rr Tracebackrz File  NameError) textwrapdedentrrrr decodesplitr,lenr startswithr4rrr5exitcodersrntexts rtest_pep_409_verbiage!CmdLineTest.test_pep_409_verbiages"    !Z+J&IK'<['I $Hf==)//5D   SY * OODG..{; < OODG..y9 : OODG..{; <" ! !s CC55 Dcj[R(aD[RS;a0[(d%[ R "[R5nO7[R(a[RnOURS5 Sn[[ R"5WU5nUR[RU5 [U5upEnUR[U5UR!5R#S5SU<SU<35 URSU5 g)N>wasiwin32 emscriptenzneed os_helper.TESTFN_NONASCIIzprint(ascii(__file__)) r9zstdout=z stderr=r)rTESTFN_UNDECODABLEr1platformrr-fsdecodeTESTFN_NONASCIIskipTestrr. addCleanupunlinkr r,r9rstriprP)r4r+rr5rTrsrns rtest_non_asciiCmdLineTest.test_non_ascii0s  ( ( %H;;y;;", line 1, in s 1/0rs#ZeroDivisionError: division by zero)r r,rw)r4rrnexpected_liness r/test_source_lines_are_shown_when_running_source;CmdLineTest.test_source_lines_are_shown_when_running_sources4,T59 14 **,n=rcPSn[R"5n[USU5n[U5upEn[R "[R "U5S5R5nURURS5U5 SSS5 g!,(df  g=f)Nz nonlocal x rr9z>SyntaxError: nonlocal declaration not allowed at module level ) rrrr rkrlrmrtrendswithrTs rtest_syntaxerror_does_not_crash+CmdLineTest.test_syntaxerror_does_not_crashs    !Z+J&IK'<['I $Hf##BJJv$6@EEGD OODMMQ  " ! !s A6B B%c[R"S5nSUl[R"5n[R"5n[ USU5n[ SXBS9n[U5R5R5nURUSU5 URX&5 [ SX2S9n[U5R5R5nURXv5 [ SX2S9n[U5R5R5nURXU5 SSS5 SSS5 g!,(df  N=f!,(df  g=f)Nc import sys for entry in sys.path: print(entry) rz-EsrFrz-I) rNrOmaxDiffrrrr rrPrwr,r)) r4rwork_dirrr5rj out_by_name out_by_dirout_by_dir_isolateds r-test_consistent_sys_path_for_direct_execution9CmdLineTest.test_consistent_sys_path_for_direct_executions"     !Xy/A/A/Cz+J FKKUK>A%a.//1<<>K   [^Z 8   X 3UJ=A$Q..0;;=J   Z 5T:>@M   ]1-x 8   Z 7ULh?A(^224??AN   ^ ;'<|( $Hf%mmo88:O MM68K L)" ! !s D E E*c4SnUR[RRU55 [ US[ R [ R S9nUR5up4URSU5 URURS5 g)Nznonexistingscript.pyT)rVrsrnz: can't open file r) assertFalser-rexistsr rprq communicater/assertNotEqual returncode)r4rprocrUrVs rtest_nonexisting_script#CmdLineTest.test_nonexisting_scriptsu ( /0F#-??#-??4##% *C0 DOOQ/rz /dev/fd/0zrequires /dev/fd platformfreebsdz/devz/dev/fdz.Requires fdescfs mounted on /dev/fd on FreeBSDc pSn[R"5n[USU5n[US5n[ SUR 53SSSSUR 54S 9nUR 5upgURUS 5 SSS5 SSS5 g!,(df  N=f!,(df  g=f) Nz print("12345678912345678912345")z script.pyrz/dev/fd/Trrr) close_fdspass_fdss12345678912345678912345 )rrrr r filenorr,)r4rrr5fprjrUrVs rtest_script_as_dev_fd!CmdLineTest.test_script_as_dev_fds4    !X+Hk6JKk3'2 8BIIK=!9TUVWXYZ[][d[d[fTgh==?  &BC(" !''" !s#B'ABB' B$ B'' B5)rr)F)Kr> __module__ __qualname____firstlineno__rDrWr]rdrk contextlibcontextmanagerrxr|rrrrrrrrrrrrrrrrrrrrrrrrr rrrrr"r-r3r6rCrGrWrerhrnrrryr}rrrrrrrunittest skipUnlessr-rrskipIfr1r^rSstatst_devr__static_attributes__rrr%r%\s <@9D59 C 599 % %&B C'+'+8 EIEI6 66664/DD/ /N NI" A L'".4( 0F 1-=$ :9$1@.    > K>#MJ 0 46QR __S\\,,Y7IWWV_++rwwy/A/H/HHEG DGS Drr%c.[R"5 gr)r reap_childrenrrrtearDownModuler/s rr)&rrimportlib.machineryrrr1r-os.pathrrprkrNtestr test.supportrrrtest.support.script_helperrrr r r r r rr)rO test_sourcerr#force_not_colorized_test_classTestCaser%rr>rFrrrrs  ;;HHH //* 3 j;F * ''N D(##N D(N Dd z MMOr