
    sg1                         	 d dl Zd dlZd dlmZ d dlZd dlZd dlm	Z	m
Z
 d dlmZ d dlmZ d dlmZmZ d dlmZmZmZ d Zd	 Zd
 Z e
d       e e	dg d      d                      Zd Zd Zy# e$ r d dlZY tw xY w)    NPicklingError)parametrizetimeout)with_multiprocessing)concurrency_safe_rename)Paralleldelayed)concurrency_safe_writeFileSystemStoreBackendCacheWarningc                 r    t        |d      5 }t        j                  | |       d d d        y # 1 sw Y   y xY w)Nwb)opencpickledump)outputfilenamefs      R/var/www/html/venv/lib/python3.12/site-packages/joblib/test/test_store_backends.py
write_funcr      s1    	h	  VQ     s   -6c                     t        d      D ].  }	 t        |d      5 }t        j                  |      }d d d         n  | k(  sJ y # 1 sw Y   xY w# t        t
        f$ r t        j                  d       Y lw xY w)N
   rbg?)ranger   r   loadOSErrorIOErrortimesleep)expectedr   ir   reloadeds        r   	load_funcr$      s    2Y 	h% +"<<?+	 	x+ + ! 	 JJsO		s'   AAAA	A$A98A9c                 6    t        | ||      }t        ||       y N)r   r   )to_writer   r   temporary_filenames       r   concurrency_safe_write_renamer)   .   s     /08*F.9    backend)multiprocessingloky	threadingc                 j   | j                  d      j                  t        t        d            D ci c]  }t	        |      | c}t        d      D cg c]/  }|dz  dk7  rt        j                  t        t              nt        1 }} t        d|      fd|D               y c c}w c c}w )	Nztest.pklg     j@         )r   )n_jobsr+   c              3   B   K   | ]  } t        |              y wr&   )r
   ).0funcr   objs     r   	<genexpr>z.test_concurrency_safe_write.<locals>.<genexpr>?   s#      (8)-c8$(8s   )joinstrpathr   intstr	functoolspartialr)   r   r$   r	   )tmpdirr+   r"   funcsr   r7   s       @@r   test_concurrency_safe_writerA   4   s    
 {{:&..H#CHo
.3q619
.C 499>./A
 <*46 )* >E > (HAw' (816(8 8	 />s   B+4B0c                     G d dt               }t               }| j                  d      j                  |_        d |_        t        j                  t        d      5  |j                  d |              d d d        y # 1 sw Y   y xY w)Nc                       e Zd Zd Zy)7test_warning_on_dump_failure.<locals>.UnpicklableObjectc                     t        d      )Nsome exception)RuntimeErrorselfs    r   
__reduce__zBtest_warning_on_dump_failure.<locals>.UnpicklableObject.__reduce__G   s    /00r*   N__name__
__module____qualname__rJ    r*   r   UnpicklableObjectrD   F       	1r*   rP   test_warning_on_pickling_errorrF   matchtestpath)
objectr   r9   r:   locationcompresspytestwarnsr   	dump_itemr?   rP   r+   s      r   test_warning_on_dump_failurer]   C   sp    1F 1 %&G{{#CDLLGG	l*:	; ;*&7&9:; ; ;   A==Bc                     G d dt               }t               }| j                  d      j                  |_        d |_        t        j                  t        d      5  |j                  d |              d d d        y # 1 sw Y   y xY w)Nc                       e Zd Zd Zy)9test_warning_on_pickling_error.<locals>.UnpicklableObjectc                     t        d      )Nnot picklabler   rH   s    r   rJ   zDtest_warning_on_pickling_error.<locals>.UnpicklableObject.__reduce__V   s    00r*   NrK   rO   r*   r   rP   ra   U   rQ   r*   rP   rR   rc   rS   rU   )
rV   r   r9   r:   rW   rX   rY   rZ   FutureWarningr[   r\   s      r   rR   rR   R   so    1F 1 %&G{{#CDLLGG	m?	; ;*&7&9:; ; ;r^   )cPickler   ImportErrorpickler=   r   r   rY   joblib.testingr   r   joblib.test.commonr   joblib.backportsr   joblibr	   r
   joblib._store_backendsr   r   r   r   r$   r)   rA   r]   rR   rO   r*   r   <module>rm      s          / 3 4 $  
  : 	Y@A	8 B  	8;;Y  s   A/ /	A;:A;