U
    sVcL	                     @   s\   d dl Z d dlmZmZmZ d dlmZmZm	Z	 e j
jZdd Zdd Zdd	 Zd
d ZdS )    N)	DataFrameHDFStore_testing)ensure_clean_pathensure_clean_storetablesc              	   C   sz   t | h}t |d< t |d< t |d< t|dks>tdddh}t| |ks\tt||ksltW 5 Q R X d S )Nabc   z/az/bz/c)	r   tmZmakeTimeSeriesZmakeStringSeriesZmakeDataFramelenAssertionErrorsetkeys)
setup_pathstoreexpected r   F/tmp/pip-unpacked-wheel-xj8nt62q/pandas/tests/io/pytables/test_keys.py	test_keys   s    

r   c              
   C   s2  G dd dt j}G dd dt j}G dd dt j}t| }t j|ddB}|d	d
}||d|d ||d|d ||d|d W 5 Q R X t|}t|jdddkst	dddh}t
|jdd|kst	t
|jddt
 kst	|D ] }	||	}
t|
jdkst	qW 5 Q R X W 5 Q R X d S )Nc                   @   s   e Zd Ze ZdS )z$test_non_pandas_keys.<locals>.Table1N)__name__
__module____qualname__r   
Float32ColZvalue1r   r   r   r   Table1   s   r   c                   @   s   e Zd Ze ZdS )z$test_non_pandas_keys.<locals>.Table2N)r   r   r   r   r   Zvalue2r   r   r   r   Table2"   s   r   c                   @   s   e Zd Ze ZdS )z$test_non_pandas_keys.<locals>.Table3N)r   r   r   r   r   Zvalue3r   r   r   r   Table3%   s   r   w)mode/groupZtable1zTable 1Ztable2zTable 2Ztable3zTable 3Znativeincluder   z/group/table1z/group/table2z/group/table3pandas   )r   ZIsDescriptionr   	open_fileZcreate_groupZcreate_tabler   r   r   r   r   getcolumns)r   r   r   r   pathZh5filer!   r   r   namedfr   r   r   test_non_pandas_keys   s"    



r,   c              
   C   s>   t | ,}tjtdd |jdd W 5 Q R X W 5 Q R X d S )Nz@`include` should be either 'pandas' or 'native' but is 'illegal')matchillegalr"   )r   pytestZraises
ValueErrorr   )r   r   r   r   r   'test_keys_illegal_include_keyword_value8   s    
r1   c              	   C   sr   t | `}ttdtdd}|d| | dgks>t|j|jjdd | dgksdtW 5 Q R X d S )N   )ABr+   z/dfsymlink)	r   r   rangeputr   r   _handleZcreate_soft_linkroot)r   r   r+   r   r   r   test_keys_ignore_hdf_softlinkA   s    
r:   )r/   r$   r   r   r   r   Zpandas.tests.io.pytables.commonr   r   r   markZ
single_cpuZ
pytestmarkr   r,   r1   r:   r   r   r   r   <module>   s   	