U
    +if-                      @  s   d dl mZ d dlZd dlZd dlZd dlZd dlmZ d dlm	Z
 G dd dZG dd deZdd	 Zd
d Zdd ZG dd deZG dd deZdS )    )annotationsN)apic                   @  s   e Zd ZdddZdS )BaseNc                 C  sJ   t dd t|D }|d k	r2t t|t| }t |}t|| d S )Nc                 s  s   | ]}| d s|V  qdS )__N)
startswith).0f r	   L/home/mars/bis/venv/lib/python3.8/site-packages/pandas/tests/api/test_api.py	<genexpr>   s     
 zBase.check.<locals>.<genexpr>)sorteddirsettmZassert_almost_equal)self	namespaceexpectedignoredresultr	   r	   r
   check   s
    z
Base.check)N)__name__
__module____qualname__r   r	   r	   r	   r
   r      s   r   c                *   @  s  e Zd ZU dddgZdddddd	d
ddg	ZddddgZddgZded< dddgZddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAg*Z	dd$d)gZ
dedB< dCgZdedD< g ZdedE< dFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcgZdddedfdgdhdigZdjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}gZd~gZddddgZg Zded< g Zded< ddddddgZdd Zdd Zdd ZdS )	TestPDApitestslocaleZconftestr   ZarraysoptionstesttestingerrorsZplottingioZtseriescompatcorepandasutilnpdatetimez	list[str]deprecated_modulesZ
IndexSliceZNaTZNAZCategoricalZCategoricalIndexZ	DataFrameZ
DateOffsetZDatetimeIndexZ	ExcelFileZExcelWriterZFloat64IndexFlagsZGrouperZHDFStoreIndexZ
Int64IndexZ
MultiIndexZPeriodZPeriodIndexZ
RangeIndexZUInt64IndexZSeriesZSparseDtypeZStringDtypeZ	TimedeltaZTimedeltaIndex	TimestampZIntervalZIntervalIndexZCategoricalDtypeZPeriodDtypeZIntervalDtypeZDatetimeTZDtypeZBooleanDtypeZ	Int8DtypeZ
Int16DtypeZ
Int32DtypeZ
Int64DtypeZ
UInt8DtypeZUInt16DtypeZUInt32DtypeZUInt64DtypeZFloat32DtypeZFloat64DtypeZNamedAggdeprecated_classesSparseArraydeprecated_classes_in_futuremodulesarrayZbdate_rangeconcatZcrosstabcutZ
date_rangeZinterval_rangeevalZ	factorizeZget_dummiesZ
infer_freqZisnaZisnullZlreshapeZmeltZnotnaZnotnulloffsetsmergeZmerge_orderedZ
merge_asofZperiod_rangeZpivotZpivot_tableZqcutZshow_versionsZtimedelta_rangeuniqueZvalue_countsZwide_to_longZreset_optionZdescribe_option
get_optionZoption_contextZ
set_optionZset_eng_float_formatZread_clipboardZread_csvZ
read_excelZread_fwfZread_gbqZread_hdfZ	read_htmlZread_xml	read_jsonZread_pickleZread_sasZread_sqlZread_sql_queryZread_sql_tableZ
read_stataZ
read_tableZread_featherZread_parquetZread_orcZ	read_spssZjson_normalizeto_datetimeZ
to_numericZ	to_pickleZto_timedeltadeprecated_funcs_in_futuredeprecated_funcs_configZ_libsZ_is_numpy_dev_testingZ_typing_versionc                 C  sX   | j | j | j | j | j | j | j | j | j | j	 | j
 }| jt|| jd d S )N)r   r   r   )
public_libprivate_libmiscr.   classesfuncsfuncs_option
funcs_read
funcs_jsonfuncs_toprivate_modulesr   pdr   )r   Z
checktheser	   r	   r
   test_api   s.    	
zTestPDApi.test_apic                 C  sr   t | j| j | j | j | j | j | j | j | j	 t | j
 }t tj}|| }|r^t|| }|rntd S N)r   r>   r@   r.   rA   rB   rC   rD   rE   rF   r+   rH   __all__AssertionError)r   r   actualZ
extraneousmissingr	   r	   r
   test_api_all   s4    

zTestPDApi.test_api_allc              
   C  sL   | j | j | j | j | j }|D ]$}tt tt	|}W 5 Q R X q"d S rJ   )
r'   r+   r-   r:   r9   r   assert_produces_warningFutureWarninggetattrrH   )r   Zdeprecated_listZdepr_r	   r	   r
   	test_depr   s    zTestPDApi.test_deprN)r   r   r   r   r>   r?   r'   __annotations__r@   rA   r+   r-   r.   rB   rC   rD   rE   rF   r9   r:   rG   rI   rO   rT   r	   r	   r	   r
   r      s
  


.#	r   c               	   C  sv   ddl m }  dd l}| P |dt | ddddd| dddddksNtt| ddddd| shtW 5 Q R X d S )Nr   )r&   ignorei        )r&   warningscatch_warningssimplefilterrQ   rL   
isinstance)r&   rY   r	   r	   r
   test_datetime   s    
$r]   c               	   C  sL   dd l } |  2 | dt ttjdddgddtjs>tW 5 Q R X d S )Nr   rV   rW   rX      ZSparse)Zdtype)	rY   rZ   r[   rQ   r\   rH   r/   r,   rL   )rY   r	   r	   r
   test_sparsearray  s    
r_   c               	   C  sV   dd l } dd l}|  4 | dt tjdd|ddk sHt	W 5 Q R X d S )Nr   rV   
   )
rY   numpyrZ   r[   rQ   rH   r%   ZarangeallrL   )rY   r%   r	   r	   r
   test_np
  s
    
rc   c                   @  s   e Zd ZdddgZdd ZdS )TestApitypes
extensionsZindexersc                 C  s   |  t| j d S rJ   )r   r   allowed)r   r	   r	   r
   rI     s    zTestApi.test_apiN)r   r   r   rg   rI   r	   r	   r	   r
   rd     s   
rd   c                   @  s8   e Zd ZddddgZdd Zdd Zd	d
 Zdd ZdS )TestTestingZassert_frame_equalassert_series_equalZassert_index_equalZassert_extension_array_equalc                 C  s   ddl m} | || j d S )Nr   )r   )r#   r   r   rB   )r   r   r	   r	   r
   test_testing#  s    zTestTesting.test_testingc              	   C  s\   t jdd  tt}dd l}W 5 Q R X dt|d jksBt	dt|d jksXt	d S )Npandas.util.testingr   !pandas.util.testing is deprecatedpandas.testing instead)
sysr.   popr   rP   rQ   pandas.util.testingstrmessagerL   )r   mr#   r	   r	   r
   test_util_testing_deprecated(  s
    z(TestTesting.test_util_testing_deprecatedc              	   C  s`   t jdd  tt}ddlm} W 5 Q R X dt|d j	ksFt
dt|d j	ks\t
d S )Nrk   r   )ri   rl   rm   )rn   r.   ro   r   rP   rQ   rp   ri   rq   rr   rL   )r   rs   ri   r	   r	   r
   #test_util_testing_deprecated_direct2  s
    z/TestTesting.test_util_testing_deprecated_directc              	   C  sN   t jtjddgt jd }d|ks(ttjt	dd t
jj W 5 Q R X d S )Nz-cz6import pandas; pandas.util.testing.assert_series_equal)stderrrl   foo)match)
subprocesscheck_outputrn   
executableSTDOUTdecoderL   pytestZraisesAttributeErrorrH   r$   rw   )r   outr	   r	   r
   test_util_in_top_level;  s    
z"TestTesting.test_util_in_top_levelN)r   r   r   rB   rj   rt   ru   r   r	   r	   r	   r
   rh     s   
	rh   )
__future__r   ry   rn   r~   r#   rH   r   Zpandas._testingr<   r   r   r   r]   r_   rc   rd   rh   r	   r	   r	   r
   <module>   s    ]
