
    Pi'                        d dl mZ d dlZd dlZd dlZd dlmZ d dlZ	d dlm
Z
mZmZmZmZmZmZ d dlmZ ej        j        gZd Zd Zd Zd	 Zd
 Zej                             e            d          d             Zd Zd Zd Z d Z!d Z"d Z#d Z$ej        %                    dddg          d             Z&d Z'd Z(dS )    )closingN)is_platform_windows)	DataFrameHDFStoreIndexSeries_testing
date_rangeread_hdf)TableIteratorc                 @   t          t          d          t          d          d          }|                    | d           t          j        t
          d          5  t          | d           d d d            n# 1 swxY w Y   |                    | d           d S )N   abk1key 'No object named k2 in the file'matchk2)r   rangeto_hdfpytestraisesKeyErrorr   temp_h5_pathdfs     v/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pandas/tests/io/pytables/test_read.py!test_read_missing_key_close_storer"      s    	qa11	2	2BIIlI%%%	x'I	J	J	J % %t$$$% % % % % % % % % % % % % % %
 IIlI%%%%%s   A<<B B c                    t          g g dg           }|                    | d           t          j        t          d          5  t          | dd           d d d            n# 1 swxY w Y   |                    | d           d S )	NAB)indexr   r   zlist index out of ranger   r   stop)r   r   r   r   
IndexErrorr   r   s     r!   !test_read_index_error_close_storer+   &   s    	"%%R	0	0	0BIIlI%%%	z)C	D	D	D - -t!,,,,- - - - - - - - - - - - - - -
 IIlI%%%%%s   A&&A*-A*c                    t          t          d          t          d          d          }|                    | d           t          | d          5 }t	          j        t          d          5  t          |d           d d d            n# 1 swxY w Y   t          |d           d d d            d S # 1 swxY w Y   d S )	Nr   r   r   r   rr   r   r   )r   r   r   r   r   r   r   r   )r   r    stores      r!   "test_read_missing_key_opened_storer/   3   s7   	qa11	2	2BIIlI%%%	,	$	$ ]8+MNNN 	" 	"UD!!!	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	"
 	                 s6   B50BB5B	B5B	B55B9<B9c           	      
   t          t          j                            d                              d          t          t          d                    t          ddd                    }t          j	        t          d	
          5  |                     dd           d d d            n# 1 swxY w Y   |                     d|           t          j	        t          t          j        d          
          5  |                     dd           d d d            n# 1 swxY w Y   t          j        d          }t          j	        t          |
          5  |                     dddg           d d d            n# 1 swxY w Y   |                     dd          }t!          j        |j        t'          |j                  j                   t+          |t&                    sJ t          j        d          }t          j	        t,          |
          5  |                     dd           d d d            n# 1 swxY w Y   |                                }d|d<   |                     d|dg           |                     dd          }t!          j        |j        |d         j                   |                                }d|d<   t          j        |j        |j        dd         df<   |                     d|dg           |                     dd          }t!          j        |j        |d         j                   |                     ddd          }t!          j        |j        |d         j        dd                     |                     ddd          }t!          j        |j        |d         j        dd                     |                     ddd          }t!          j        |j        |d         j        d d                    |                     ddd          }t!          j        |j        |d         j        d d                    |                     dddd          }t!          j        |j        |d         j        dd                    |                     dddd          }t!          j        |j        |d         j        dd                    t          t          j                            d                              d          dd          }|                     d|d            |d         }|                     dd          }t!          j        ||           d S )!Nr   )
      ABCDz
2000-01-01r1   r&   )periodsfreq)columnsr'   zNo object named df in the filer   r    r'   z%'column [foo] not found in the table'fooz:select_column() got an unexpected keyword argument 'where'zindex>5)wherezScolumn [values_block_0] can not be extracted individually; it is not data indexablevalues_block_0stringdf2)data_columnsr2      df3)startr(   )r?   r)   r$   df4T)r   nprandomdefault_rngstandard_normalr   listr
   r   r   r   select_columnappendreescape	TypeErrortmassert_almost_equalvaluesr   r'   
isinstance
ValueErrorcopynanlocassert_series_equal)temp_hdfstorer    msgresultr;   r>   rA   expecteds           r!   test_read_columnrY   A   s   	
	a  0099d6ll##r<<<
 
 
B 
x'G	H	H	H 3 3##D'2223 3 3 3 3 3 3 3 3 3 3 3 3 3 3 r"""		"IJJ
 
 
 1 1 	##D%0001 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 )P
Q
QC	y	,	,	, F F##D')#EEEF F F F F F F F F F F F F F F ((w77F6=&*:*:*ABBBff%%%%% )	# C 
z	-	-	- < <##D*:;;;< < < < < < < < < < < < < < < ''))CCM8*===((99F6=#h-*>??? ''))CCM(*CGCIacNH$%8*===((99F6=#h-*>??? (((BBF6=#h-*>qrr*BCCC(((CCF6=#h-*>rss*CDDD((q(AAF6=#h-*>rr*BCCC((r(BBF6=#h-*>ss*CDDD(((KKF6=#h-*>qt*DEEE(((KKF6=#h-*>r!t*DEEE ")//22BB2FFUSS
T
TC$7773xH((44F68,,,,,sH   B++B/2B/9DD #D E<<F F H77H;>H;c                     t           | ddd          d          5 }|d         }d d d            n# 1 swxY w Y   t          |t                    sJ d S )Niodatazlegacy_hdf/pytables_native.h5r-   modezdetector/readout)r   rO   r   )datapathr.   d2s      r!   test_pytables_native_readra      s    	v>??c
 
 
 '	%&' ' ' ' ' ' ' ' ' ' ' ' ' ' ' b)$$$$$$$s   	266z#native2 read fails oddly on windows)reasonc                     t           | dddd          d          5 }t          |           |d         }d d d            n# 1 swxY w Y   t          |t                    sJ d S )Nr[   r\   
legacy_hdfzpytables_native2.h5r-   r]   detector)r   strrO   r   )r_   r.   d1s      r!   test_pytables_native2_readrh      s    	v|-BCC#
 
 
 	E


:	              
 b)$$$$$$$s   AA	Ac                    t          t          j                            d                              d          t	          d          t	          d                    }d|j        _        |                    dd	          }|                    | d
d           t          | d
          }t          | d          5 }t          |d
          }t          j        ||           |j        sJ 	 d d d            d S # 1 swxY w Y   d S )Nr   r2      abcdABCDEr'   r6   lettersETkeysrH   r    wr   r^   r-   r]   )r   rB   rC   rD   rF   r'   name	set_indexr   r   r   rL   assert_frame_equalis_open)r   using_infer_stringr    directr.   indirects         r!   test_read_hdf_open_storer|      s8    

	a  ''//6llW
 
 
B
 BHM	3t	,	,BIIl3I///lD))F	,S	)	)	) UE4((
fh///}}                 s   9/C66C:=C:c                 J   t          t          j                            d                              d          g dt	          d                    }|                    | ddd	           t          | d          }|j        j        j	        J t          j        ||           d S )
Nr   rj   )r      r      rm   rn   r    rs   tabler   r^   format)r   rB   rC   rD   rF   r   r   r'   _databaserL   rw   )r   r    r;   s      r!   test_read_hdf_index_not_viewr      s     

	a  ''//llW
 
 
B IIl3wI???
<
&
&C9?'''"c"""""    c                 l   t          t          j                            d                              d          t	          d          t	          d                    }d|j        _        |                    dd	          }|                    | d
dd           t          | d
          }t          | d
d          }t          |j                  5  t          |t                    sJ t          |                                          }d d d            n# 1 swxY w Y   t!          j        ||           d S )Nr   rj   rl   rm   rn   ro   rp   Trq   r    rs   tr   )iterator)r   rB   rC   rD   rF   r'   ru   rv   r   r   r   r.   rO   r   next__iter__rL   rw   )r   r    rz   r   r{   s        r!   test_read_hdf_iteratorr      sU   	
	a  ''//6llW
 
 
B
 BHM	3t	,	,BIIl3sI;;;lD))FdT:::H		 	  - -(M22222))++,,- - - - - - - - - - - - - - - &(+++++s   9DDDc                    t          t          j                            d                              d          t	          d          t	          d                    }|                    | dd           t          |           }t          j        ||           |                    | d	d           d
}t          j
        t          |          5  t          |            d d d            d S # 1 swxY w Y   d S )Nr   rj   rl   rm   rn   r    r   rt   r;   ?key must be provided when HDF5 file contains multiple datasets.r   )r   rB   rC   rD   rF   r   r   rL   rw   r   r   rP   r   r    rereadrV   s       r!   test_read_nokeyr      s'   	
	a  ''//6llW
 
 
B IIl3I///l##F"f%%%IIlCI000
KC	z	-	-	-                   s   C++C/2C/c                    t          t          d          t          t          d          d          d          }|                    | ddd	           t          |           }t          j        ||           |                    | d
dd	           d}t          j	        t          |          5  t          |            d d d            d S # 1 swxY w Y   d S )Nrk   abacdcategorydtype)icr    r   r   r   r;   r   r   )r   r   r   rF   r   r   rL   rw   r   r   rP   r   s       r!   test_read_nokey_tabler      s   	qtG}}J(O(O(OPP	Q	QBIIl3wI???l##F"f%%%IIlCI@@@
KC	z	-	-	-                   s   /CCCc                     t          |           }|                                 t          j        d          }t	          j        t          |          5  t          |            d d d            d S # 1 swxY w Y   d S )Nz]Dataset(s) incompatible with Pandas data types, not table, or no datasets found in HDF5 file.r   )r   closerI   rJ   r   r   rP   r   )r   r.   rV   s      r!   test_read_nokey_emptyr      s    \""E	KKMMM
)	' C 
z	-	-	-                   s   A00A47A4c                 :   t          t          j                            d                              d          t	          d          t	          d                    }|                    | dd           t          | d	          }t          j        ||           d S )
Nr   rj   rl   rm   rn   r    r   rt   r   )	r   rB   rC   rD   rF   r   r   rL   rw   )r   rX   actuals      r!   test_read_from_pathlib_pathr     s    
	a  ''//6llW  H OOLdO555l---F(F+++++r   r   fixedr   c                     t          t          d          t          j                  }|                    | d|           t          | dd          }t          j        ||           d S )Nr1   r   r\   r   r   r-   rt   )r   r   rB   float64r   r   rL   rT   )r   r   seriesrW   s       r!   test_read_hdf_series_mode_rr     sc    
 E"IIRZ000F
MM,F6M:::lS999F66*****r   c           
         t          dg di          }|                    | dd           t          j        dd          5  t	          | dd	          }d d d            n# 1 swxY w Y   t          dg dit          j        t          j        
          t          dgt          j        t          j        
                              }t          j
        ||           d S )Nr   )r   r   Nr\   r   r   zfuture.infer_stringTr-   rt   )na_valuer   )r   r6   )r   r   pdoption_contextr   StringDtyperB   rR   r   rL   rw   )r   r    rW   rX   s       r!   test_read_infer_stringr     s!   	C)))*	+	+BIIlwI777		0$	7	7 > >,F===> > > > > > > > > > > > > > >	nbf---se2>26#B#B#BCCC  H
 &(+++++s   A  A$'A$c                     t          ddgd          }|                     d|           |                     d          }t          j        ||           d S )Nz
2001-01-01z
2002-02-02zdatetime64[s]r   df_s)r   putgetrL   rw   )rU   r   df_fromstores      r!   $test_hdfstore_read_datetime64_unit_sr   ,  s[    lL1IIIDfd### $$V,,L$-----r   ))
contextlibr   rI   numpyrB   r   pandas.compatr   pandasr   r   r   r   r   r	   rL   r
   r   pandas.io.pytablesr   mark
single_cpu
pytestmarkr"   r+   r/   rY   ra   skipifrh   r|   r   r   r   r   r   r   parametrizer   r   r    r   r!   <module>r      s         				      - - - - - -                      - , , , , ,k$%

& 
& 
&
& 
& 
&  L- L- L-^% % % ''))2WXX% % YX%  &# # #", , ,$  (    , , , GW#566+ + 76+, , ,. . . . .r   