
    A>iC                     l    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	J
r
  S SKrS SKJr   " S S5      rg)    N)np_version_gt2)'construct_1d_object_array_from_listlike)is_extension_array_dtype)ExtensionDtypec                   r    \ 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Srg)BaseInterfaceTests   z,Tests that the basic interface is satisfied.c                 &    [        U5      S:X  d   eg N
   )lenselfdatas     d/var/www/html/land-tabula/venv/lib/python3.13/site-packages/pandas/tests/extension/base/interface.pytest_lenBaseInterfaceTests.test_len   s    4yB    c                 (    UR                   S:X  d   eg r   )sizer   s     r   	test_sizeBaseInterfaceTests.test_size   s    yyB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XB;   d   eXA;  d   e[        R                   H  nXTL d  [        U5      [        U5      :X  a  M!  XQ;  d   eU(       au  [        U[        5      (       a`  [        U[        R                  R                  R                  [        R                  R                  R                  45      (       a	  XR;   d   eM  XR;  a  M   e   g )Nr   )dtypena_valueisnatmNULL_OBJECTStype
isinstancefloatpdcorearraysBaseMaskedArrayArrowExtensionArray)r   r   data_missingusing_nan_is_nar$   na_value_objs         r   test_contains BaseInterfaceTests.test_contains"   s     ::&&YY[L! Aw$A,... '''### OOL'4+=h+O+++|U3366::  $333#777' ,r   c                 p    [         R                  " U5      nUR                  SS9nX2R                  :X  d   eg )NF)index)r+   Seriesmemory_usagenbytes)r   r   sresults       r   test_memory_usage$BaseInterfaceTests.test_memory_usageJ   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   r;   expecteds       r   test_array_interface'BaseInterfaceTests.test_array_interfaceO   sq    $ayDG###$f-88DJf5==1>tDzJH
##F5r   c                 Z   [         R                  " USS9n[         R                  " USS9n[         R                  " X#5      (       a   e[        (       d  g  [         R                  " USS9n[         R                  " USS9n[         R                  " XE5      (       d   eg ! [         a     g f = f)NT)copyF)r@   rA   may_share_memoryr   
ValueError)r   r   result_copy1result_copy2result_nocopy1result_nocopy2s         r   test_array_interface_copy,BaseInterfaceTests.test_array_interface_copyZ   s    xx40xx40&&|BBBB~	XXd7N
 $U3"">BBBB  		s   B 
B*)B*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+   r7   r)   r   r   s     r   test_is_extension_array_dtype0BaseInterfaceTests.test_is_extension_array_dtypem   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_attributes   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+   r7   rZ   _mgrr^   
is_numericr#   _is_numericr   r   r;   s      r   test_is_numeric_honored*BaseInterfaceTests.test_is_numeric_honoredy   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   _reducerf   rg   r#   _is_boolean)r   r0   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)rJ   r#   _is_immutablepytestskiprb   s      r   	test_copyBaseInterfaceTests.test_copy   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 rn   r?   )viewr(   r#   ro   rp   rq   rb   s      r   	test_viewBaseInterfaceTests.test_view   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 rT   )tolistrC   r)   rE   s       r   test_tolistBaseInterfaceTests.test_tolist   s5    :&$''''!!!r    N)__name__
__module____qualname____firstlineno____doc__r   r   r   r    r3   r<   rG   rQ   rU   r[   rc   rk   rr   rv   rz   __static_attributes__r|   r   r   r   r      sS    6)&8P"
	6C&6,N
(	&$"r   r   )numpyr@   rp   pandas.compat.numpyr   pandas.core.dtypes.castr   pandas.core.dtypes.commonr   pandas.core.dtypes.dtypesr   pandasr+   pandas._testing_testingr&   r   r|   r   r   <module>r      s)      . K > 4  ^" ^"r   