
    Eg6                     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__     W/var/www/sysmax/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 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   dtypes     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 t	          j        | ||          S )N)r   copy)
isinstancer   typer   nparray)r   r   r   s      r   astypezDummyArray.astype   sP    eZ(( 	 -!tDzz$),,,KxE5555r   )r   N)T)r	   r
   r   r   r   propertyr   r"   r   r   r   r   r      sf                X6 6 6 6 6 6r   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_dtype3   s    +F3333333r   N)r	   r
   r   pytestmarkparametrizepdCategoricalr   Seriesr   r   r    r!   r+   r-   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!   r8   r"   tmassert_numpy_array_equal)arrexpectedresults      r   test_astyper>   8   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 )Nr5   r7   F)r   )r   r    r!   int64r"   r   )r;   r=   s     r   test_astype_no_copyrA   C   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   r7   s    r   r+   r+   M   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   rI   z CapturingStringArray.__getitem__V   s#    !ww""4(((r   )r	   r
   r   __doc__rI   __classcell__)rK   s   @r   rE   rE   S   s>        @@) ) ) ) ) ) ) ) )r   rE   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worldr7   r'   zslice(None, 1, None))	r1   	DataFramerE   r    r!   r8   ilocrG   str)df_outs      r   test_ellipsis_indexrX   [   sz     
	%bh/A&P&P&PQQR
 
B 	A
 V*

(Cs88-------r   )numpyr    r.   pandas.core.dtypesr   pandas.core.dtypes.commonr   pandasr1   pandas._testing_testingr9   pandas.core.arraysr   rC   r   r   r%   r>   rA   r/   r0   CategoricalDtypeIntervalDtyper+   arraysStringArrayrE   rX   r   r   r   <module>rd      s        % % % % % % > > > > > >           - - - - - -	 	 	 	 	& 	 	 	6 6 6 6 6 6 6 6*4 4 4 4 4 4 4 4&2 2 2   #:6#:#<#<>Rf>R>T>T"UVV+ + WV+
) ) ) ) )290 ) ) ). . . . .r   