
    .iJ                     X   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*                  j-                  d
            Zej0                  j3                  ded       d        Zy)    )PathN)np_version_gt2)create_dataframe_all_types)Versiontablesc                    t         j                  d      t         j                  dd      t         j                  d      d}d}|ddd|dz   d	dd|dz   d
dd|dz   dddg}d}t         j	                  | d      5 }|j                  d||      }|D ]C  }|j                         D ]  \  }}	|	|j                  |<    |j                  j                          E 	 ddd       | |t        j                  |      fS # 1 sw Y   !xY w)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
             b/var/www/app/trading-bot/venv/lib/python3.12/site-packages/pandas/tests/io/pytables/test_compat.pypytables_hdf5_filer0      s     1%qa(oo!o$L 
B *AvWA.AvWE2AvWM:	K 'G			,S		1 QNN3W,NG! 	F$lln #
U"c
#EELLN	 ",,{";;; s   >AC<<Dc                   (    e Zd ZdZd Zd Zd Zd Zy)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                 r    |\  }}}t        j                  ||      }|}t        j                  ||d       y )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   s5    .grTw/
fhF    c                     |\  }}}t        j                  ||d      }|dd  j                  d      }t        j                  ||d       y )Nr   )r-   startTdropr4   r#   r6   reset_indexr7   r8   r9   s          r/   test_read_with_startz)TestReadPyTablesHDF5.test_read_with_start=   sK    .grTwa8ab6%%4%0
fhFr@   c                     |\  }}}t        j                  ||d      }|d d j                  d      }t        j                  ||d       y )Nr   )r-   stopTrC   r4   rE   r9   s          r/   test_read_with_stopz(TestReadPyTablesHDF5.test_read_with_stopD   sK    .grTwQ7bq6%%4%0
fhFr@   c                     |\  }}}t        j                  ||dd      }|dd j                  d      }t        j                  ||d       y )Nr   r   )r-   rB   rI   TrC   r4   rE   r9   s          r/   test_read_with_startstopz-TestReadPyTablesHDF5.test_read_with_startstopK   sM    .grTwaa@a7&&D&1
fhFr@   N)__name__
__module____qualname____doc__r?   rG   rJ   rL    r@   r/   r2   r2   /   s    GGGGr@   r2   zdata/legacy_hdf/*/*.h5legacy_filec                     | j                   S )N)r   )xs    r/   <lambda>rU   V   s
    QVV r@   )idsc                    t        |j                  j                        } | |      }t        s&|j	                  d      rt        j                  d       t        j                  |      }t               }|j	                  d      r|j                  dg      }|t        d      k  s|t        d      k  r|j	                  d      rs|d   j                  |d         rJ |d   j                  |d         rJ |d	   j                  |d	         rJ |j                  g d
      }|j                  g d
      }|t        d      k  r|d   j                  |d         rJ |d   j                  |d         rJ |d   j                  |d         rJ |d   j                  |d         rJ |j                  g d      }|j                  g d      }t        j                  ||       y )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45N;'Kk22:> 	TU[[%F)+H J'==&' ! 
6 (())k.B.B:.N .)00.1IJJJ.)00.1IJJJ-(//0GHHH%TU==C ! 
 (( -(//0GHHH-(//0GHHH,'..x/EFFF/*11(?2KLLL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      s      .   T '			X	& < <>!G !GH T(^**11667OPQ ;KLE, ME,r@   