
    ^iJ                     \   d dl mZ d dlZd dlmZ d dlZd dlmZ	 d dl
mZ d dlmZ  ej        d          Zej        d             Z G d d	          Z e ee          j        j                            d
                    Zej                            ded           d             ZdS )    )PathN)np_version_gt2)create_dataframe_all_types)Versiontablesc                 8   t                               d          t                               dd          t                               d          d}d}|ddd|dz   d	dd|dz   d
dd|dz   dddg}d}t                               | d          5 }|                    d||          }|D ]?}|                                D ]\  }}	|	|j        |<   |j                                         @	 ddd           n# 1 swxY w Y   | |t          j
        |          fS )z4
    Use PyTables to create a simple HDF5 file.
    r   )pos         )c0c1c2g   $CAaaaaabbbbbccccci    dddddl    pandas_test_timeseriesw)mode/)namedescriptionN)r   	Time64Col	StringColInt64Col	open_filecreate_tableitemsrowappendpd	DataFrame)
temp_h5_pathtable_schemat0testsamplesobjnameftsamplekeyvalues
             O/usr/local/lib/python3.11/dist-packages/pandas/tests/io/pytables/test_compat.pypytables_hdf5_filer0      s    1%%qa((oo!o$$ L 
B **AvWA..AvWE22AvWM::	K 'G			,S		1	1 QNN3W,NGG! 	 	F$llnn # #
U"c

ELLNNNN	               ",{";";;;s   AC::C>C>c                   *    e Zd ZdZd Zd Zd Zd ZdS )TestReadPyTablesHDF5z
    A group of tests which covers reading HDF5 files written by plain PyTables
    (not written by pandas).

    Was introduced for regression-testing issue 11188.
    c                 p    |\  }}}t          j        ||          }|}t          j        ||d           d S )N)r-   Tcheck_index_type)r#   read_hdftmassert_frame_equalselfr0   pathr)   dfresultexpecteds          r/   test_read_completez'TestReadPyTablesHDF5.test_read_complete7   sE    .grTw///
fhFFFFFF    c                     |\  }}}t          j        ||d          }|dd                              d          }t          j        ||d           d S )Nr   )r-   startTdropr4   r#   r6   reset_indexr7   r8   r9   s          r/   test_read_with_startz)TestReadPyTablesHDF5.test_read_with_start=   s`    .grTwa888abb6%%4%00
fhFFFFFFr@   c                     |\  }}}t          j        ||d          }|d d                             d          }t          j        ||d           d S )Nr   )r-   stopTrC   r4   rE   r9   s          r/   test_read_with_stopz(TestReadPyTablesHDF5.test_read_with_stopD   s`    .grTwQ777bqb6%%4%00
fhFFFFFFr@   c                     |\  }}}t          j        ||dd          }|dd                             d          }t          j        ||d           d S )Nr   r   )r-   rB   rI   TrC   r4   rE   r9   s          r/   test_read_with_startstopz-TestReadPyTablesHDF5.test_read_with_startstopK   sb    .grTwaa@@@ac7&&D&11
fhFFFFFFr@   N)__name__
__module____qualname____doc__r?   rG   rJ   rL    r@   r/   r2   r2   /   sh         G G GG G GG G GG G G G Gr@   r2   zdata/legacy_hdf/*/*.h5legacy_filec                     | j         S )N)r   )xs    r/   <lambda>rU   V   s    QV r@   )idsc                    t          |j        j                  } | |          }t          s)|                    d          rt          j        d           t          j        |          }t                      }|                    d          r|
                    dg          }|t          d          k     s(|t          d          k     r|                    d          r|d                             |d                   rJ |d                             |d                   rJ |d	                             |d	                   rJ |
                    g d
          }|
                    g d
          }|t          d          k     r|d                             |d                   rJ |d                             |d                   rJ |d                             |d                   rJ |d                             |d                   rJ |
                    g d          }|
                    g d          }t          j        ||           d S )Nzfixed.h5z>Fixed format pickle objects don't deserialize with numpy < 2.0categorical_int)columnsz2.2.0z3.0.0timedelta_ustimedelta_mstimedelta_s)rZ   r[   r\   datetime_usdatetime_ms
datetime_sdatetimetz_us)r]   r^   r_   r`   )r   parentr   r   endswithpytestskipr#   r6   r   rD   equalsr7   r8   )datapathrR   using_infer_stringrequestlegacy_versionr=   r>   s          r/   test_legacy_filesrj   V   s   [/455N(;''K Vk22:>> V 	TUUU[%%F)++H J'' 
==&' ! 
 
6 (((())))k.B.B:.N.N) .)00.1IJJJJJ.)00.1IJJJJJ-(//0GHHHHH%T%T%TUU==CCC ! 
 
 (((( -(//0GHHHHH-(//0GHHHHH,'..x/EFFFFF/*11(?2KLLLLLQQQ  
 
 ==QQQ ! 
 
 &(+++++r@   )pathlibr   rc   pandas.compat.numpyr   pandasr#   pandas._testing_testingr7   -pandas.tests.io.generate_legacy_storage_filesr   pandas.util.versionr   importorskipr   fixturer0   r2   list__file__ra   glob_legacy_filesmarkparametrizerj   rQ   r@   r/   <module>rz      sI          . . . . . .           T T T T T T ' ' ' ' ' '		X	&	& < < <>!G !G !G !G !G !G !G !GH TT(^^*1667OPPQQ ;K;KLLE, E, MLE, E, E,r@   