U
    ¾mœd:  ã                   @   s~   d dl Zd dlZd dlmZ d dlm  mZ d dl	Z
d dlmZ d dlmZ ejZG dd„ deƒZejdd„ ƒZd	d
„ ZdS )é    N)ÚBlockPlacement)ÚBlockManager)ÚExtensionBlockc                   @   s$   e Zd ZejZeedœdd„ƒZdS )ÚCustomBlock)Úreturnc                 C   s   dS )NF© )Úselfr   r   úc/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/pandas/tests/extension/test_external_block.pyÚ_can_hold_na   s    zCustomBlock._can_hold_naN)	Ú__name__Ú
__module__Ú__qualname__ÚnpZndarrayZ_holderÚpropertyÚboolr
   r   r   r   r	   r      s   r   c                  C   st   t  ddddgi¡} | jj}tjddd�}ttddƒƒ}t||dd�}||f }t	|t  
ddg¡| jgƒ}t  |¡S )	NÚaé   é   é   Zint64)Zdtype)Z	placementÚndimÚb)ÚpdÚ	DataFrameÚ_mgrÚblocksr   Zaranger   Úslicer   r   ÚIndexÚindex)Zdf1r   ÚvaluesÚbpZcustom_blockZblock_managerr   r   r	   Údf   s    
r    c                 C   s@   t  ddddgi¡}t j| |gdd�}t|jjd tƒs<t‚d S )NÚcgš™™™™™¹?gš™™™™™É?g333333Ó?r   )Zaxis)r   r   ÚconcatÚ
isinstancer   r   r   ÚAssertionError)r    Zdf2Úresr   r   r	   Útest_concat_axis1#   s    r&   )Únumpyr   ZpytestZpandas._libs.internalsr   Zpandas.util._test_decoratorsÚutilZ_test_decoratorsÚtdZpandasr   Zpandas.core.internalsr   Zpandas.core.internals.blocksr   Zskip_array_manager_invalid_testZ
pytestmarkr   Zfixturer    r&   r   r   r   r	   Ú<module>   s   	
