
    z-Ph                         d dl Z 	 d dlZn# e$ r dZY nw xY wd dlZd dlmZ d Zd Z		 	 ddZ
ddZd Zd Zd	 ZddZd ZddZdS )    N)utilc                     dd l m} ddlm} |                    |           rt
          j                            |           }  |j        | |fi | | S )Nr   )_pandas_api)	pyarrow.parquetparquetpyarrow.pandas_compatr   is_data_framepaTablefrom_pandaswrite_table)tablepathkwargspqr   s        \/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pyarrow/tests/parquet/common.py_write_tabler      sr          111111  '' ,$$U++BN5$))&)))L    c                  X    dd l m}  |j        | i |}|                    d           |S )Nr   T)full)r   r   
read_tablevalidate)argsr   r   r   s       r   _read_tabler   )   sC          BM4*6**E	NNNLr   c                     |pi }|pi }t          j                    }t          | |fi | t          j        |                                          }t          |fi |S )N)r
   BufferOutputStreamr   BufferReadergetvaluer   )r   read_table_kwargswrite_table_kwargswriterreaders        r   _roundtrip_tabler#   1   so    )/R+1r"$$F55"4555_V__..//Fv33!2333r   c                     || }|pi }t          | ||          }|                    |          sJ t          |||          }|                    |          sJ d S )N)r   r    )r#   equals)r   expectedr   r    results        r   _check_roundtripr(   <   s    )/R e7H1CE E EF=="""""f8I1CE E EF=="""""""r   c                     t           j                            |           }t          ||          }|                                S )N)r    )r
   r   r   r#   	to_pandas)dfwrite_kwargsr   r'   s       r   _roundtrip_pandas_dataframer-   L   sB    H  $$E,0 0 0Fr   c                     t          j        d          }t          j        |          }t           j                            t	          |j        |j                  t          |j        |j                  | |          S )Nint_sizedtype)npiinforandomrandintmaxmin)r1   r2   platform_int_infor4   s       r   _random_integersr:   S   sh    ((HUOOE9S,=,ABB ,=,ABB"&e  5 5 5r   c                 R    t          j        t          j        | |                    S )Nr2   )r
   arrayr3   aranger0   s     r   _range_integersr?   \   s!    8BId%000111r   '  c                 D   dd l }t          j                            |           |                    t          | t          j                  t          | t          j                  t          | t          j                  t          | t          j	                  t          | t          j
                  t          | t          j                  t          | t          j                  t          | t          j                  t          j                            |                               t          j                  t          j        | t          j                  t          j                            |           dk    d t'          |           D             d g| z  d g| z  d          }|S )Nr   r<   c                 6    g | ]}t          j        d           S )
   )r   rands).0is     r   
<listcomp>z#_test_dataframe.<locals>.<listcomp>p   s     888qDJrNN888r   )uint8uint16uint32uint64int8int16int32int64float32float64boolstringsall_noneall_none_category)pandasr3   r5   seed	DataFramer:   rH   rI   rJ   rK   rL   rM   rN   rO   randnastyperP   r>   rQ   range)r1   rW   pdr+   s       r   _test_dataframer]   `   s2   INN4	!$11"433"433"433 rw//!$11!$11!$119??4((//
;;9T444	%%)88E$KK888FTM"Vd]  
 
B& Ir   c                 &   dd l m} t          | t          j                  r| }nt          j                            |           }t          j                    }t          ||dd           |	                    d           |
                    |          S )Nr   SNAPPYz2.6)compressionversion)r   r   
isinstancer
   r   r   ioBytesIOr   seekParquetFile)table_or_dfr   a_tablebufs       r   make_sample_filerj   z   s          +rx(( 4(&&{33
*,,C#8UCCCCHHQKKK>>#r   Fc           
         dd l }t          j                            |           i dt          j        | t          j                  dt          j        | t          j                  dt          j        | t          j                  dt          j        | t          j                  dt          j        | t          j	                  dt          j        | t          j	                  d	t          j        | t          j
                  d
t          j        | t          j                  dt          j        | t          j                  dt          j        | t          j                  dt          j        | t          j                  dt          j                            |           dk    dt          j        d| d          dt          j        d| d          dt          j        d| d          dt          j        d| d          d|                    d t#          |           D                       dg| z  d gd t#          | dz
            D             z   d gz   d g| z  d gdz  d t#          | dz
            D             z   d }|r|d                             d!          |d"<   |                    |          S )#Nr   rH   r<   rI   rJ   rK   rL   rM   rN   rO   float16rP   rQ   rR   datetime_msz2016-01-01T00:00:00.001zdatetime64[ms]datetime_usz2016-01-01T00:00:00.000001zdatetime64[us]datetime_nsz2016-01-01T00:00:00.000000001zdatetime64[ns]	timedeltaztimedelta64[s]strc                 ,    g | ]}t          |          S  rq   rE   xs     r   rG   z#alltypes_sample.<locals>.<listcomp>   s    666Q#a&&666r    c                 ,    g | ]}t          |          S rs   rt   ru   s     r   rG   z#alltypes_sample.<locals>.<listcomp>   s    #D#D#DqCFF#D#D#Dr      c                      g | ]}d g|dz  z  S )N   rs   ru   s     r   rG   z#alltypes_sample.<locals>.<listcomp>   s#    "M"M"MD6QU#3"M"M"Mr   )	empty_strstr_with_nullsnull	null_listcategorystr_category)rV   r3   r5   rW   r>   rH   rI   rJ   rK   rM   rN   rO   rl   rP   rQ   rY   Seriesr[   rZ   rX   )r1   rW   categoricalr\   arrayss        r   alltypes_sampler      s   INN44rx000")D	222 	")D	222 	")D	222	
 		$bh/// 	4rx000 	4rx000 	4rx000 	29T444 	29T444 	29T444 		%%) 	ry!:D'79 9 9 	ry!=t'79 9 9" 	ry!@$'79 9 9#& 	RYq$.>???'( 	ryy66%++66677)* TD[&#D#DE$(OO#D#D#DDvMVaZ"M"MU4!8__"M"M"MM1  F4  B!'!5!5j!A!A~<<r   )NN)r@   r   )r@   r   F)rc   numpyr3   ImportErrorpyarrowr
   pyarrow.testsr   r   r   r#   r(   r-   r:   r?   r]   rj   r   rs   r   r   <module>r      s$  $ 
			   	BBB          	 	 	   /3(,4 4 4 4# # # #   5 5 52 2 2   4                   s    