+
    €",i6  ã                   óî  € R t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIHtH	t	  ^ RI
t
]! ]R4      t]P                  ! R4      ;'       d    ]P                  ! 4       '       * t ^ RItR t ^ RIHt R	 tR
 t]	! ]RJ RR7      t]	! ]P2                  P5                  R4      '       * RR7      t]	! ]
RJ RR7      t]	! ]
RJRR7      tR#   ] d    Rt
 L§i ; i  ] d	    R tRt Lxi ; i  ] d    R tR;tt Li ; i)z
Small utilities for testing.
N)Úmp)ÚSkipTestÚskipifÚpypy_version_infoÚPy_GIL_DISABLEDc                ó   € V # )ú*A decorator to skip tests requiring numpy.© ©Úfuncs   &Ú4/usr/lib/python3/dist-packages/joblib/test/common.pyÚ
with_numpyr      ó   € àˆó    c                ó   € R pV# )r   c                  ó   € \        R 4      h)zTest requires numpy©r   r	   r   r   Úmy_funcÚwith_numpy.<locals>.my_func%   s   € ÜÐ0Ó1Ð1r   r	   )r   r   s   & r   r   r   "   s   € ò	2ð ˆr   )Úmemory_usagec                ó   € V # )ú4A decorator to skip tests requiring memory_profiler.r	   r
   s   &r   Úwith_memory_profilerr   3   r   r   c                ó€   € \         P                  ! 4        \        WV3RR7      p\        V4      \	        V4      ,
          # )z)Compute memory usage when executing func.gü©ñÒMbP?)Úinterval)ÚgcÚcollectr   ÚmaxÚmin)r   ÚargsÚkwargsÚmem_uses   &*, r   Úmemory_usedr"   7   s/   € ä
�
Š
ŒÜ ¨FÐ3¸eÔDˆÜ�7‹|œc '›lÕ*Ð*r   c                ó   € R pV# )r   c                  ó   € \        R 4      h)zTest requires memory_profiler.r   r	   r   r   Ú
dummy_funcÚ(with_memory_profiler.<locals>.dummy_funcB   s   € ÜÐ;Ó<Ð<r   r	   )r   r%   s   & r   r   r   ?   s   € ò	=ð Ðr   zNeeds multiprocessing to run.)Úreasonz/dev/shmz5This test requires a large /dev/shm shared memory fs.zNeeds lz4 compression to runz$Needs lz4 not being installed to run)Ú__doc__r   ÚosÚsysÚ	sysconfigÚjoblib._multiprocessing_helpersr   Újoblib.testingr   r   Úlz4ÚImportErrorÚhasattrÚIS_PYPYÚget_config_varÚ_is_gil_enabledÚIS_GIL_DISABLEDÚnumpyÚnpr   Úmemory_profilerr   r   r"   Úwith_multiprocessingÚpathÚexistsÚwith_dev_shmÚwith_lz4Úwithout_lz4r	   r   r   Ú<module>r>      s*  ðñó 
Û 	Û 
Û å .ß +ðÛñ
 �#Ð*Ó
+€à×ÒÐ.Ó/×MÐM¸×8KÒ8KÓ8MÔ4Mð ð
Ûòð(&Ý,òò+ñ& ˜b D˜jÐ1PÔQÐ ñ Ø
�‰�‰�zÓ"Ô"ØBô€ñ
 �#˜�+Ð&DÔE€á�S �_Ð-SÔT‚øðK ô Ø
‚Cðûð" ô 
òð 
‚Bð
ûð: ô 
&òð "&Ð%€L’;ð
&ús5   ¢C Á C Á(C# Ã	CÃCÃC ÃC Ã#C4Ã3C4