o
    g+                     @   s   d dl Zd dlZd dlmZ d dlmZ d dlZd dl	m
Z d dlmZ G dd dejZG dd deZG d	d
 d
Zdd Zdd Zejde e gdd ZdS )    N)dtypesis_extension_array_dtype)ExtensionArrayc                   @   s   e Zd ZdS )
DummyDtypeN)__name__
__module____qualname__ r
   r
   `/home/ubuntu/cloudmapper/venv/lib/python3.10/site-packages/pandas/tests/extension/test_common.pyr      s    r   c                   @   s2   e Zd Zdd Zdd Zedd Zddd	Zd
S )
DummyArrayc                 C   s
   || _ d S Ndata)selfr   r
   r
   r   __init__   s   
zDummyArray.__init__c                 C   s   | j S r   r   )r   dtyper
   r
   r   	__array__   s   zDummyArray.__array__c                 C   s   t  S r   )r   )r   r
   r
   r   r      s   zDummyArray.dtypeTc                 C   s0   t |tr|rt| | jS | S tj| ||dS )N)r   copy)
isinstancer   typer   nparray)r   r   r   r
   r
   r   astype   s
   
zDummyArray.astypeN)T)r   r   r	   r   r   propertyr   r   r
   r
   r
   r   r      s    
r   c                   @   s   e Zd Zejdeg eg je	eg e
 eeddggdd Zejdeg e	eg gdd ZdS )	TestExtensionArrayDtypevalues      c                 C   s   t |sJ d S r   r   r   r   r
   r
   r   test_is_extension_array_dtype&   s   z5TestExtensionArrayDtype.test_is_extension_array_dtypec                 C   s   t |rJ d S r   r   r   r
   r
   r   !test_is_not_extension_array_dtype3   s   z9TestExtensionArrayDtype.test_is_not_extension_array_dtypeN)r   r   r	   pytestmarkparametrizepdCategoricalr   Seriesr   r   r   r   r    r!   r
   r
   r
   r   r   %   s    


"r   c                  C   sT   t tg d} tjg dtd}| t}t|| | d}t|| d S )Nr   r      r   object)r   r   r   r+   r   tmassert_numpy_array_equal)arrexpectedresultr
   r
   r   test_astype8   s   

r1   c                  C   sP   t tjg dtjd} | j| jdd}| |u sJ | | j}| |us&J d S )Nr(   r*   F)r   )r   r   r   int64r   r   )r.   r0   r
   r
   r   test_astype_no_copyD   s
   r3   r   c                 C   s    t | tjsJ t| sJ d S r   )r   r   ExtensionDtyper   r*   r
   r
   r   r    N   s   r    )numpyr   r"   pandas.core.dtypesr   pandas.core.dtypes.commonr   pandasr%   pandas._testing_testingr,   pandas.core.arraysr   r4   r   r   r   r1   r3   r#   r$   CategoricalDtypeIntervalDtyper    r
   r
   r
   r   <module>   s    
