a
    Pf                     @   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sJ t jt| dZ tdd	. tg dg dg dd}W d    n1 s0    Y  W d    n1 s0    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 sJ |d	}t|jt	sJ |d}t|jtsJ t 
|| t|jjdksJ 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   ]/var/www/ai-form-bot/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sJ t jt| dT tdd	( tjg ddg dd}W d    n1 s0    Y  W d    n1 s0    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sJ 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   &