a
    nÝEb  ã                   @   s�   d dl mZ d dlZd dlZd dlZd dlmZ e d¡Zdej	_
dej	_dej	_dd„ Zdd	„ Zd
d„ Zeddd„ƒZedd„ ƒZdd„ ZdS )é    )ÚcontextmanagerN)ÚHDFStoreÚtablesé   c                 C   s.   | d ur*zt  | ¡ W n ty(   Y n0 d S ©N)ÚosÚremoveÚOSError©Úpath© r   ú_/home/ja/django-apps/lartica_env/lib/python3.9/site-packages/pandas/tests/io/pytables/common.pyÚsafe_remove   s
    r   c                 C   s,   z| d ur|   ¡  W n ty&   Y n0 d S r   )Úcloser	   )Ústorer   r   r   Ú
safe_close   s
    r   c                 C   s   t j t ¡ | ¡S )z'create an unopened named temporary file)r   r   ÚjoinÚtempfileÚ
gettempdirr
   r   r   r   Úcreate_tempfile    s    r   ÚaFc                 c   s|   zTt tj | ¡ƒst| ƒ} t| |||dd�}|V  W t|ƒ |dksL|dkrxt| ƒ n"t|ƒ |dksn|dkrvt| ƒ 0 d S )NF)ÚmodeÚ	complevelÚcomplibÚ
fletcher32Úwr   )Úlenr   r   Údirnamer   r   r   r   )r   r   r   r   r   r   r   r   r   Úensure_clean_store&   s    
ÿ
þr   c              	   c   sd   zJt | tƒr"dd„ | D ƒ}|V  nt| ƒg}|d V  W |D ]}t|ƒ q<n|D ]}t|ƒ qP0 dS )z¢
    return essentially a named temporary file that is not opened
    and deleted on exiting; if path is a list, then create and
    return list of filenames
    c                 S   s   g | ]}t |ƒ‘qS r   )r   )Ú.0Úpr   r   r   Ú
<listcomp>B   ó    z%ensure_clean_path.<locals>.<listcomp>r   N)Ú
isinstanceÚlistr   r   )r   Ú	filenamesÚfr   r   r   Úensure_clean_path9   s    

ÿr'   c              	   C   s*   z|   |¡ W n ttfy$   Y n0 dS )zŠ
    For tests using tables, try removing the table to be sure there is
    no content from previous tests using the same table name.
    N)r   Ú
ValueErrorÚKeyError)r   Úkeyr   r   r   Ú_maybe_removeL   s    r+   )r   NNF)Ú
contextlibr   r   r   ZpytestZpandas.io.pytablesr   Zimportorskipr   Ú
parametersZMAX_NUMEXPR_THREADSZMAX_BLOSC_THREADSZMAX_THREADSr   r   r   r   r'   r+   r   r   r   r   Ú<module>   s    

