
    Mh[                     `    S SK rS SKrS SKJr  S SKJr  S SKJr  S SK	r
S SKJr   " S S5      rg)    N)'construct_1d_object_array_from_listlike)is_extension_array_dtype)ExtensionDtypec                   l    \ rS rSrSrS rS rS rS rS r	S r
S	 rS
 rS rS rS rS rS rS rSrg)BaseInterfaceTests   z,Tests that the basic interface is satisfied.c                 &    [        U5      S:X  d   eg Nd   )lenselfdatas     W/var/www/html/env/lib/python3.13/site-packages/pandas/tests/extension/base/interface.pytest_lenBaseInterfaceTests.test_len   s    4yC    c                 (    UR                   S:X  d   eg r
   )sizer   s     r   	test_sizeBaseInterfaceTests.test_size   s    yyCr   c                 (    UR                   S:X  d   eg )N   )ndimr   s     r   	test_ndimBaseInterfaceTests.test_ndim   s    yyA~~r   c                 &    UR                   SL d   eg )NT)_can_hold_nar   s     r   test_can_hold_na_valid)BaseInterfaceTests.test_can_hold_na_valid   s      D(((r   c                 $   UR                   R                  nXR                  5       )    nUS   U;   d   eUS   U;   d   eX2;   d   eX1;  d   e[        R                   H/  nXCL d  [        U5      [        U5      :X  a  M!  XA;  d   eXB;  a  M/   e   g )Nr   )dtypena_valueisnatmNULL_OBJECTStype)r   r   data_missingr#   na_value_objs        r   test_contains BaseInterfaceTests.test_contains    s     ::&&YY[L! Aw$A,... '''### OOL'4+=h+O+++333 ,r   c                 p    [         R                  " U5      nUR                  SS9nX2R                  :X  d   eg )NF)index)pdSeriesmemory_usagenbytes)r   r   sresults       r   test_memory_usage$BaseInterfaceTests.test_memory_usage:   s/    IIdOe,!!!r   c                 6   [         R                  " U5      nUS   US   :X  d   e[         R                  " U[        S9n[         R                  " [        U5      [        S9nUR                  S:  a  [        [        U5      5      n[        R                  " X#5        g )Nr   r"   r   )nparrayobjectlistr   r   r%   assert_numpy_array_equalr   r   r3   expecteds       r   test_array_interface'BaseInterfaceTests.test_array_interface?   sq    $ayDG###$f-88DJf5==1>tDzJH
##F5r   c                     [        U5      (       d   e[        UR                  5      (       d   e[        [        R                  " U5      5      (       d   e[	        UR                  [
        5      (       d   eg N)r   r"   r.   r/   
isinstancer   r   s     r   test_is_extension_array_dtype0BaseInterfaceTests.test_is_extension_array_dtypeJ   sX    '----'

3333'		$8888$**n5555r   c                 P    [        US5      (       a   e[        US5      (       a   eg )Nvalues_values)hasattrr   s     r   test_no_values_attribute+BaseInterfaceTests.test_no_values_attributeP   s-     4****4+++++r   c                     [         R                  " U5      n[        UR                  S5      (       a=  UR                  R                  S   R
                  UR                  R                  L d   eg g )Nblocksr   )r.   r/   rI   _mgrrM   
is_numericr"   _is_numericr   r   r3   s      r   test_is_numeric_honored*BaseInterfaceTests.test_is_numeric_honoredV   sR    46;;));;%%a(33tzz7M7MMMM *r   c                 <   UR                  5       n[        U5      (       a|  UR                  S5      (       d   eUR                  5       (       d   eUR                  S5      (       a   eUR	                  5       (       a   eUR
                  R                  (       d   eg g )Nanyall)r$   r   _reducerU   rV   r"   _is_boolean)r   r(   nas      r   test_isna_extension_array,BaseInterfaceTests.test_isna_extension_array[   s~      #B''::e$$$$6688O8zz%((((vvxx<88'''' (r   c                     US   US   :w  d   eUR                  5       nUR                  R                  (       a$  [        R                  " SUR                   S35        US   US'   US   US   :w  d   eg )Nr   r   z!test_copy assumes mutability and  is immutable)copyr"   _is_immutablepytestskiprQ   s      r   	test_copyBaseInterfaceTests.test_copyh   sm    Aw$q'!!!::##KK;DJJ<}UVq'QayF1I%%%r   c                 H   US   US   :w  d   eUR                  5       nX!Ld   e[        U5      [        U5      :X  d   eUR                  R                  (       a$  [        R
                  " SUR                   S35        US   US'   US   US   :X  d   eUR                  S S9  g )Nr   r   z!test_view assumes mutability and r]   r7   )viewr'   r"   r_   r`   ra   rQ   s      r   	test_viewBaseInterfaceTests.test_views   s     Aw$q'!!!!!!F|tDz)))::##KK;DJJ<}UV1Iq	Aw$q'!!! 				r   c                 v    UR                  5       n[        U5      n[        U[        5      (       d   eX#:X  d   eg rB   )tolistr;   rC   r=   s       r   test_tolistBaseInterfaceTests.test_tolist   s5    :&$''''!!!r    N)__name__
__module____qualname____firstlineno____doc__r   r   r   r   r*   r4   r?   rD   rJ   rR   rZ   rb   rf   rj   __static_attributes__rl   r   r   r   r      sL    6  )44"
	66,N
(	&$"r   r   )numpyr8   r`   pandas.core.dtypes.castr   pandas.core.dtypes.commonr   pandas.core.dtypes.dtypesr   pandasr.   pandas._testing_testingr%   r   rl   r   r   <module>rz      s&      K > 4  }" }"r   