Ë
    Ï�Dj

  ã                   óB   — d dl Z d dlZd dlmZmZ d„ Zd„ Zd„ Zd„ Zd„ Z	y)é    N)ÚraisesÚcheck_subprocess_callc                  óž   — dj                  g d¢«      } t        t        j                  d| g«       t        t        j                  d| gd¬«       y )Nú
)zresult = 1 + 2 * 3zprint(result)zmy_list = [1, 2, 3]zprint(my_list)ú-cz7\s{1,2}\[1, 2, 3\]©Ústdout_regex)Újoinr   ÚsysÚ
executable)Úcodes    ú\C:\Crop_Prediction\Backend\crop-ai-system\venv\Lib\site-packages\joblib/test/test_testing.pyÚtest_check_subprocess_callr      sD   € Ø�9‰9ò (ó )€Dô
 œ3Ÿ>™>¨4°Ð6Ô7ô œ3Ÿ>™>¨4°Ð6à'=ö?ó    c                  óÐ   — d} d}t        t        «      5 }t        t        j                  d| g|¬«       d d d «       j                  dj                  |«      «       y # 1 sw Y   Œ*xY w)NÚ42Ú_no_way_this_matches_anything_r   r   zUnexpected stdout.+{})r   Ú
ValueErrorr   r   r   ÚmatchÚformat)r   Únon_matching_patternÚexcinfos      r   Ú-test_check_subprocess_call_non_matching_regexr      sd   € Ø€DØ;Ðä	”
Ó	ð A˜wÜœsŸ~™~¨t°TÐ:Ø+?õ	A÷Að ‡M�MÐ)×0Ñ0Ð1EÓFÕG÷Að Aús   ”AÁA%c                  óh   — d} t        t        «      5  t        | g«       d d d «       y # 1 sw Y   y xY w)NÚ_a_command_that_does_not_exist_)r   ÚOSErrorr   )Úwrong_commands    r   Ú(test_check_subprocess_call_wrong_commandr      s-   € Ø5€MÜ	”‹ñ /Ü˜}˜oÔ.÷/÷ /ñ /ús   ’(¨1c                  ó  — dj                  g d¢«      } t        j                  dt        j                  «      }t	        t
        «      5 }t        t        j                  d| g«       d d d «       j                  |«       y # 1 sw Y   ŒxY w)Nr   )ú
import syszprint("writing on stdout")z%sys.stderr.write("writing on stderr")zsys.exit(123)zONon-zero return code: 123.+Stdout:
writing on stdout.+Stderr:
writing on stderrr   ©
r
   ÚreÚcompileÚDOTALLr   r   r   r   r   r   )Úcode_with_non_zero_exitÚpatternr   s      r   Ú/test_check_subprocess_call_non_zero_return_coder'   %   sx   € Ø"Ÿi™iò )ó Ðô �j‰jð 6ä79·y±yóB€Gô 
”
Ó	ð O˜wÜœsŸ~™~¨tÐ5LÐMÔN÷Oà‡M�M�'Õ÷Oð Oús   ÁA>Á>Bc                  ó  — dj                  g d¢«      } t        j                  dt        j                  «      }t	        t
        «      5 }t        t        j                  d| gd¬«       d d d «       j                  |«       y # 1 sw Y   ŒxY w)Nr   )	zimport timer    zprint("before sleep on stdout")úsys.stdout.flush()z*sys.stderr.write("before sleep on stderr")zsys.stderr.flush()ztime.sleep(10)z-print("process should have be killed before")r)   zVNon-zero return code:.+Stdout:
before sleep on stdout\s+Stderr:
before sleep on stderrr   é   )Útimeoutr!   )Úcode_timing_outr&   r   s      r   Ú"test_check_subprocess_call_timeoutr-   5   sz   € Ø—i‘iò !ó €Oô �j‰jð ;ô Ÿ™ó$€Gô
 
”
Ó	ð )˜wÜœsŸ~™~¨t°_ÐEØ&'õ	)÷)ð ‡M�M�'Õ÷)ð )ús   ÁB Â B	)
r   r"   Újoblib.testingr   r   r   r   r   r'   r-   © r   r   ú<module>r0      s(   ðÛ 
Û 	ç 8ò?òHò/òó r   