
    bMh                     l   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ej                  Z G d de          Z G d	 d
          Zd Zd Zej                            d ej                     ej                    g          d             Z G d dej        j                  Zd ZdS )    N)dtypesis_extension_array_dtype)ExtensionArrayc                       e Zd ZdS )
DummyDtypeN)__name__
__module____qualname__     b/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/extension/test_common.pyr   r      s        Dr   r   c                   <    e Zd ZddZd	dZed             Zd
dZdS )
DummyArrayreturnNc                     || _         d S Ndata)selfr   s     r   __init__zDummyArray.__init__   s    			r   c                     | j         S r   r   r   dtypecopys      r   	__array__zDummyArray.__array__   s
    yr   c                     t                      S r   )r   )r   s    r   r   zDummyArray.dtype   s    ||r   Tc                     t          |t                    r!|r t          |           | j                  S | S |st	          j        | |          S t	          j        | ||          S )Nr   )r   r   )
isinstancer   typer   npasarrayarrayr   s      r   astypezDummyArray.astype   sm    eZ(( 	: -!tDzz$),,,K 	::d%00008DD9999r   )r   N)NN)T)r	   r
   r   r   r   propertyr   r%   r   r   r   r   r      sk                 X	: 	: 	: 	: 	: 	:r   r   c                      e Zd Zej                            d ej        g            ej        g           j         ej	         ej        g                      e
             e ej        ddg                    g          d             Zej                            d ej        g            ej	         ej        g                     g          d             ZdS )TestExtensionArrayDtypevalues      c                 (    t          |          sJ d S r   r   r   r)   s     r   test_is_extension_array_dtypez5TestExtensionArrayDtype.test_is_extension_array_dtype(   s     (///////r   c                 (    t          |          rJ d S r   r   r-   s     r   !test_is_not_extension_array_dtypez9TestExtensionArrayDtype.test_is_not_extension_array_dtype5   s    +F3333333r   N)r	   r
   r   pytestmarkparametrizepdCategoricalr   Seriesr   r   r"   r$   r.   r0   r   r   r   r(   r(   '   s        [BN2BN2$BInbnR(())JLLJxrxA''((	
	 	0 0	 	0 [Xibi6M6M'NOO4 4 PO4 4 4r   r(   c                  8   t          t          j        g d                    } t          j        g dt                    }|                     t                    }t          j        ||           |                     d          }t          j        ||           d S )Nr*   r+      r   object)r   r"   r$   r:   r%   tmassert_numpy_array_equal)arrexpectedresults      r   test_astyper@   :   s    
RXiii((
)
)Cx			000HZZF111ZZ!!F11111r   c                      t          t          j        g dt          j                            } |                     | j        d          }| |u sJ |                     | j                  }| |usJ d S )Nr8   r   F)r   )r   r"   r$   int64r%   r   )r=   r?   s     r   test_astype_no_copyrC   E   sr    
RXiiirx888
9
9CZZ	Z..F&====ZZ	""Ffr   r   c                 `    t          | t          j                  sJ t          |           sJ d S r   )r    r   ExtensionDtyper   r   s    r   r.   r.   O   s5    eV233333#E*******r   c                   "     e Zd ZdZ fdZ xZS )CapturingStringArrayz6Extend StringArray to capture arguments to __getitem__c                 T    || _         t                                          |          S r   )last_item_argsuper__getitem__)r   item	__class__s     r   rK   z CapturingStringArray.__getitem__X   s#    !ww""4(((r   )r	   r
   r   __doc__rK   __classcell__)rM   s   @r   rG   rG   U   s>        @@) ) ) ) ) ) ) ) )r   rG   c            	          t          j        dt          t          j        ddgt
                              i          } | j        d d         }| d         j        j        }t          |          dk    sJ d S )Ncol1helloworldr   r*   zslice(None, 1, None))	r4   	DataFramerG   r"   r$   r:   ilocrI   str)df_outs      r   test_ellipsis_indexrZ   ]   sz     
	%bh/A&P&P&PQQR
 
B 	A
 V*

(Cs88-------r   )numpyr"   r1   pandas.core.dtypesr   pandas.core.dtypes.commonr   pandasr4   pandas._testing_testingr;   pandas.core.arraysr   rE   r   r   r(   r@   rC   r2   r3   CategoricalDtypeIntervalDtyper.   arraysStringArrayrG   rZ   r   r   r   <module>rf      s        % % % % % % > > > > > >           - - - - - -	 	 	 	 	& 	 	 	: : : : : : : :.4 4 4 4 4 4 4 4&2 2 2   #:6#:#<#<>Rf>R>T>T"UVV+ + WV+
) ) ) ) )290 ) ) ). . . . .r   