a
    é´«jä  ã                   @   s’   d 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Zddl	m
Z ddlmZmZmZmZ dd„ Zdd„ Zejjej d	d
dg¡dd„ ƒƒZdS )zQ
Testing interaction between the different managers (BlockManager, ArrayManager)
é    N©Úarray_equivalent)ÚArrayManagerÚBlockManagerÚSingleArrayManagerÚSingleBlockManagerc               	   C   sê  d} t jt| d��Z t dd¡�. t g d¢g d¢g d¢dœ¡}W d   ƒ n1 sT0    Y  W d   ƒ n1 sr0    Y  t|jtƒsŒJ ‚t jt| d��Z t dd	¡�. t g d¢g d¢g d¢dœ¡}W d   ƒ n1 sÜ0    Y  W d   ƒ n1 sú0    Y  t|jt	ƒ�sJ ‚t  
||¡ | d¡}t|jtƒ�s>J ‚| d	¡}t|jt	ƒ�sZJ ‚t  
||¡ td
d„ t|jj|jjƒD ƒƒ�sŒJ ‚| d	¡}t|jt	ƒ�s¨J ‚| d¡}t|jtƒ�sÄJ ‚t  
||¡ t|jjƒdk�sæJ ‚d S )Nú!data_manager option is deprecated©Úmatchúmode.data_managerÚblock©é   é   é   )gš™™™™™¹?gš™™™™™É?g333333Ó?)é   é   é   ©ÚaÚbÚcÚarrayc                 s   s   | ]\}}t ||ƒV  qd S )Nr   )Ú.0ÚleftÚright© r   úc/var/www/html/laksyashrimp/venv/lib/python3.9/site-packages/pandas/tests/internals/test_managers.pyÚ	<genexpr>/   s   ÿz*test_dataframe_creation.<locals>.<genexpr>r   )ÚtmÚassert_produces_warningÚFutureWarningÚpdÚoption_contextZ	DataFrameÚ
isinstanceÚ_mgrr   r   Zassert_frame_equalÚ_as_managerÚallÚzipZarraysÚlenÚblocks)ÚmsgZdf_blockZdf_arrayÚresultr   r   r   Útest_dataframe_creation   s8    ÿ@ÿ@

þ

r-   c               	   C   s¢  d} t jt| d��T t dd¡�( tjg d¢dg d¢d�}W d   ƒ n1 sN0    Y  W d   ƒ n1 sl0    Y  t|jtƒs†J ‚t jt| d��T t dd	¡�( tjg d¢dg d¢d�}W d   ƒ n1 sÐ0    Y  W d   ƒ n1 sî0    Y  t|jt	ƒ�s
J ‚t  
||¡ | d¡}t|jtƒ�s2J ‚| d	¡}t|jt	ƒ�sNJ ‚t  
||¡ | d	¡}t|jt	ƒ�svJ ‚| d¡}t|jtƒ�s’J ‚t  
||¡ d S )
Nr   r	   r   r   r   ÚAr   )ÚnameÚindexr   )r   r    r!   r"   r#   ZSeriesr$   r%   r   r   Zassert_series_equalr&   )r+   Zs_blockZs_arrayr,   r   r   r   Útest_series_creation<   s(    TT



r1   Úmanagerr   r   c                 C   sP   t j ¡ }| |d< tjtjddgd|dd�}d}|j d¡}||v sLJ |ƒ‚d S )NZPANDAS_DATA_MANAGERz-czimport pandasT)Úcapture_outputÚenvÚcheckz:FutureWarning: The env variable PANDAS_DATA_MANAGER is setzutf-8)	ÚosÚenvironÚcopyÚ
subprocessÚrunÚsysÚ
executableÚstderrÚdecode)r2   Ztest_envÚresponser+   Z
stderr_msgr   r   r   Útest_array_manager_depr_env_varY   s    

ür@   )Ú__doc__r6   r9   r;   ZpytestZpandas.core.dtypes.missingr   Zpandasr"   Zpandas._testingZ_testingr   Zpandas.core.internalsr   r   r   r   r-   r1   ÚmarkZ
single_cpuZparametrizer@   r   r   r   r   Ú<module>   s   &