o
    hS&                     @   s  d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
Z
g dZi ddd	dd
ed
deddddddddddddddddeddddddddedddi ddddddddddddd dd!dd"dd#dd$dd%ed%d&dd'dd(e d)dd*ed*Ze
jd+krded< ded!< ded&< e
jd,kre	 ed)< ne
jd+krejd-ed)< z
d dlZded< W n	 ey   Y nw z
d dlZded< W n	 ey   Y nw z
d dlZded< W n
 ey   Y nw z
d dlZded< W n
 ey#   Y nw z
d dlZded< W n
 ey8   Y nw zd dlZe
jd,krIded< ned) ed< W n
 eyZ   Y nw z
d dlZded< W n eys   ded< Y nw z
d dlZded< W n ey   ded< Y nw z
d dlZded< W n
 ey   Y nw z
d dlZded < W n
 ey   Y nw z
d dlZded< W n
 ey   Y nw zd d.lmZ ded	< W n
 ey   Y nw zd d/lmZ ded< W n
 ey   Y nw zd d0lm Z  ded#< W n
 ey   Y nw zd d1lm!Z! ded< W n
 ey'   Y nw z
d dl"Zded'< W n
 ey<   Y nw d2d3 Z#e j$dd4d5d6 Z%e j$dd4d7d8 Z&e j$d9d:d;d< Z'e j$d9d:d=d> Z(e j$d9d:d?d@ Z)dS )A    N)Codec)fs)is_threading_enabled)windows_has_tzdata)"aceroazurebrotlibz2cythondataset
hypothesisfastparquetflightgandivagcsgdbgziphdfslarge_memorylz4memory_leaknopandasnonumpynumpyorcpandasparquetparquet_encryption	processesrequires_testing_datas3slowsnappysockets	substrait	threadingtimezone_datazstdr   Fr   r   r	   r
   r   r   r   r   r   r   Tr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   
emscriptenwin32z/usr/share/zoneinfo)AzureFileSystem)GcsFileSystemS3FileSystem)HadoopFileSystemc                 C   s   |j jrcdt| v rdS g d}|D ]}d|t| v r$t| s$ dS qdt| v r1td s1dS dt| v rIzdd l}W d	S  tyH   Y dS w d
t| v rcz	ddlm} W d	S  tyb   Y dS w t	|j dd	rzdt| v rrdS dt| v rzdS d	S )Nz/pyarrow/tests/T)r   r   r   r   r$   z
pyarrow/{}zpyarrow/parquet/encryptionr   zpyarrow/cudar   Fz
pyarrow/fsr,   doctest_cythonz/pyarrow/_parquet_encryption)
optiondoctestmodulesstrformatdefaultspyarrow.cudaImportError
pyarrow.fsr-   getattr)pathconfigdoctest_groupsgrouppyarrowr-    r>   D/var/www/vscode/kcb/lib/python3.10/site-packages/pyarrow/conftest.pypytest_ignore_collect   s@   	r@   )autousec                 c   sl    | j jj}t| j jdd}|s|r1| d}|  d V  W d    d S 1 s*w   Y  d S d V  d S )Nr/   Ftmpdir)r:   r0   r1   r8   getfixturevalueas_cwd)request	doctest_m	doctest_crB   r>   r>   r?   _docdir  s   


"
rH   c                 c   s    |j jj}t|j jdd}|s|rJt| d< t }|d }|t|}|d W d    n1 s5w   Y  || d< t|| d< t|| d< d V  d S )	Nr/   Fr   zpyarrow-fs-example.dats   datalocal
local_pathr9   )	r:   r0   r1   r8   r   LocalFileSystemopen_output_streamr2   write)doctest_namespacerE   tmp_pathrF   rG   rI   r9   streamr>   r>   r?   add_fs!  s   

rQ   session)scopec                     sL   ddl m   fdd} d}ddd} | ||d	t it  | |fS )
z+
    Register a unary scalar function.
    r   computec                    s    j d|dg| jdS )Nadd   )memory_pool)call_functionrX   ctxxpcr>   r?   unary_function?  s   z*unary_func_fixture.<locals>.unary_functionzy=x+1zadd functionztest add functionsummarydescriptionarray)r=   rU   register_scalar_functionpaint64)r_   	func_name	unary_docr>   r]   r?   unary_func_fixture8  s   
ri   c                     sT   ddl m}  ddl  fdd}d}ddd	}| |||d
t it  ||fS )z4
    Register a unary aggregate function (mean)
    r   rT   Nc                    s   t  |S )N)re   scalarnanmeanrZ   npr>   r?   funcU  s   z$unary_agg_func_fixture.<locals>.funcmean_udfzy=avg(x)zfind mean of xr`   r\   )r=   rU   r   register_aggregate_functionre   float64r^   rn   rg   func_docr>   rl   r?   unary_agg_func_fixtureM  s   rt   c                     sZ   ddl m}  ddl  fdd}d}ddd}| |||t t d	t  ||fS )
z-
    Register a unary aggregate function
    r   rT   Nc                    s&   d}|D ]	}|  |7 }qt|S )Ng        )rk   re   rj   )r[   argssumargrl   r>   r?   rn   o  s   
z&varargs_agg_func_fixture.<locals>.funcsum_meanzVarargs aggregater`   )r\   y)r=   rU   r   rp   re   rf   rq   rr   r>   rl   r?   varargs_agg_func_fixtureg  s    	rz   )*pytestosr=   re   r   r   pyarrow.libr   pyarrow.tests.utilr   sysgroupsis_availabler4   platformr9   existsr
   r6   r   pyarrow.gandivapyarrow.aceropyarrow.datasetpyarrow.orcr   r   pyarrow.parquetpyarrow.parquet.encryptionpyarrow.flightr7   r*   r+   r-   r.   pyarrow.substraitr@   fixturerH   rQ   ri   rt   rz   r>   r>   r>   r?   <module>   s  %

	



 !
"
%



0







