
    Mh9=                     <    S SK rS SKrS SKrS SKJr   " S S5      rg)    Nc                      \ 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\R(                  R+                  S/ SQ\R.                  " / SQSS9\R.                  " / SQ5      // SQS9S 5       r\R(                  R+                  SSSS\R4                  /\R.                  " SSS\R4                  /SS9/SS/S9S 5       r\R(                  R9                  SS9\R(                  R+                  SSSS\R4                  /\R.                  " SSS\R4                  /SS9/SS/S9S  5       5       rS! rS" rS# r S$ r!S% r"S& r#S' r$S( r%S) r&\R(                  R+                  S*S+S,/5      S- 5       r'S. r(S/ r)S0 r*S1 r+S2 r,S3r-g4)5BaseGetitemTests   z%Tests for ExtensionArray.__getitem__.c                     [         R                  " U5      nUR                  S S n[         R                  " US S 5      n[        R                  " X45        UR                  / SQ   n[        R                  " X45        g )N   r            )pdSeriesiloctmassert_series_equalselfdataserresultexpecteds        U/var/www/html/env/lib/python3.13/site-packages/pandas/tests/extension/base/getitem.pytest_iloc_series!BaseGetitemTests.test_iloc_series   s\    iio"199T"1X&
v0,'
v0    c                    [         R                  " U[        R                  " [	        U5      SS9S.5      n[         R                  " SUS S 05      nUR
                  S S2S/4   n[        R                  " XC5        UR
                  / SQS/4   n[        R                  " XC5        [         R                  " US S SS9nUR
                  S S2S4   n[        R                  " XC5        UR
                  S S2S4   n[        R                  " XC5        UR
                  S S 2S S S	24   n[        R                  " XBS/   5        US
S/   R
                  S S 2S S S	24   n[        R                  " XBS
/   5        g )Nint64dtypeABr    r   r   r   namer
   r!   )
r   	DataFramenparangelenr   r   assert_frame_equalr   r   r   r   dfr   r   s        r   test_iloc_frame BaseGetitemTests.test_iloc_frame   sH   \\299SYg+NOP<<d2Ah0 !aS!
f/ s*+
f/99T"1XC0 !Q
v0 !Q
v0 CaC
f#i0S#J$$Q!V,
f#i0r   c                 `   [         R                  " SU05      nUR                  S S 2S S 24   n[        R                  " X25        UR                  S S 2S S24   n[        R                  " X25        UR                  S S 2S S24   n[        R                  " X25        UR                  S S 2S S S24   n[        R                  " X25        UR                  S S 2SS24   n[        R                  " X2R                  S S 2S S24   5        UR                  S S 2SS 24   n[        R                  " X25        g )Nr    r	   r
   r   )r   r$   r   r   r(   )r   r   r*   r   s       r   test_iloc_frame_single_block-BaseGetitemTests.test_iloc_frame_single_block0   s    \\3+&A
f)BQB
f)BQB
f)CaC
f)AaC
fgga!en5BC
f)r   c                     [         R                  " U5      nUR                  S S n[         R                  " US S 5      n[        R                  " X45        UR                  / SQ   n[        R                  " X45        g )Nr   r   r   )r   r   locr   r   r   s        r   test_loc_series BaseGetitemTests.test_loc_seriesF   s\    iio!99T"1X&
v0&
v0r   c                     [         R                  " U[        R                  " [	        U5      SS9S.5      n[         R                  " SUS S 05      nUR
                  S S2S/4   n[        R                  " XC5        UR
                  / SQS/4   n[        R                  " XC5        [         R                  " US S SS9nUR
                  S S2S4   n[        R                  " XC5        UR
                  S S2S4   n[        R                  " XC5        g )	Nr   r   r   r    r   r   r   r"   )
r   r$   r%   r&   r'   r2   r   r(   r   r   r)   s        r   test_loc_frameBaseGetitemTests.test_loc_frameO   s    \\299SYg+NOP<<d2Ah0 SE	"
f/ se+,
f/99T"1XC0 C
v0 C
v0r   c                 x   [         R                  " SU05      n[         R                  " US   /S/SUR                  S9nUR                  S   n[
        R                  " XC5        [         R                  " US   /S/[        U5      S-
  UR                  S9nUR                  S   n[
        R                  " XC5        g )Nr    r
   )indexr#   r   r.   r	   )	r   r$   r   r   r2   r   r   r'   r   r)   s        r    test_loc_iloc_frame_single_dtype1BaseGetitemTests.test_loc_iloc_frame_single_dtypee   s     \\3+&99d1gYse!4::N
v099"XJse#d)a-tzz
 
v0r   c                     US   n[        X!R                  R                  5      (       d   e[        R                  " U5      S   n[        X!R                  R                  5      (       d   eg Nr   )
isinstancer   typer   r   r   r   r   s      r   test_getitem_scalar$BaseGetitemTests.test_getitem_scalart   sO    a&**//22224#&**//2222r   c                 F   Sn[         R                  " [        US9   US     S S S 5        [         R                  " [        US9   US     S S S 5        [        U5      nSR	                  SSSS	U S
U 3SUS-    SU 3SUS-    SU 3/5      n[         R                  " [        US9   XS-        S S S 5        [         R                  " [        US9   X* S-
       S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N[= f! , (       d  f       g = f)Nz{only integers, slices \(`:`\), ellipsis \(`...`\), numpy.newaxis \(`None`\) and integer or boolean arrays are valid indicesmatchfoog      @|zlist index out of rangezindex out of boundszOut of bounds accessz loc must be an integer between -z and zindex r	   z' is out of bounds for axis 0 with size zindex -)pytestraises
IndexErrorr'   join)r   r   msgubs       r   test_getitem_invalid%BaseGetitemTests.test_getitem_invalid{   s   J 	 ]]:S1K 2]]:S1I 2 Yhh)%&22$eB4@AEbTJ"Q$FrdK	
 ]]:S1aL 2]]:S1qM 21% 2111 2111s/   CC0$D	D
C-0
C>
D
D c                 ,    US   nU" XC5      (       d   eg r=    )r   data_missingna_cmpna_valuer   s        r   test_getitem_scalar_na'BaseGetitemTests.test_getitem_scalar_na   s    af''''r   c                     U/    n[        U5      S:X  d   e[        U[        U5      5      (       d   eU[        R                  " / SS9   n[
        R                  " X#5        g )Nr   r   r   )r'   r>   r?   r%   arrayr   assert_extension_array_equal)r   r   r   r   s       r   test_getitem_empty#BaseGetitemTests.test_getitem_empty   sW    b6{a&$t*----734
''9r   c                 r   [         R                  " [        U5      [        S9nX   n[        U5      S:X  d   e[	        U[        U5      5      (       d   e[         R                  " [        U5      [        S9n[        R                  " U5      U   n[        U5      S:X  d   eUR                  UR                  :X  d   eSUS'   X   n[        U5      S:X  d   e[	        U[        U5      5      (       d   e[        R                  " U5      U   n[        U5      S:X  d   eUR                  UR                  :X  d   eg )Nr   r   Tr	   )	r%   zerosr'   boolr>   r?   r   r   r   )r   r   maskr   s       r   test_getitem_mask"BaseGetitemTests.test_getitem_mask   s   xxD	.6{a&$t*---- xxD	.4&6{a||tzz))) Q6{a&$t*---- 4&6{a||tzz)))r   c                 V   [         R                  " SS/5      nS[        U5       3n[        R                  " [
        US9   X     S S S 5        [        R                  " USS9n[        R                  " [
        US9   X     S S S 5        g ! , (       d  f       NJ= f! , (       d  f       g = f)NTFz-Boolean index has wrong length: 2 instead of rD   booleanr   )r%   rX   r'   rH   rI   rJ   r   )r   r   r_   rL   s       r   test_getitem_mask_raises)BaseGetitemTests.test_getitem_mask_raises   s{    xxu&=c$i[I]]:S1J 2 xxI.]]:S1J 21	 21 21s    B	;B	
B
B(c                 D   [         R                  " [        R                  " UR                  SS9SS9nX   n[        U5      S:X  d   e[        U[        U5      5      (       d   e[         R                  " U5      U   n[        U5      S:X  d   eUR                  UR                  :X  d   eSUS S& UR                  / SQ5      nX   n[        R                  " X45        [         R                  " U5      n[         R                  " U5      U   n[        R                  " X45        g )Nr^   r   rc   r   T   )r   r	   r
   r   r   )r   rX   r%   r]   shaper'   r>   r?   r   r   taker   rY   r   )r   r   r_   r   r   s        r   test_getitem_boolean_array_mask0BaseGetitemTests.test_getitem_boolean_array_mask   s    xx6:)L6{a&$t*----4&6{a||tzz)))Ra99_-
''999X&4&
v0r   c                 x   [         R                  " [        R                  " UR                  SS9SS9n[         R
                  US S& SUSS& X   nXR                  S5         n[        R                  " X45        [         R                  " U5      nXR   nXRR                  S5         n[        R                  " X45        g )Nr^   r   rc   r
   Tr   F)r   rX   r%   r]   rh   NAfillnar   rY   r   r   )r   r   r_   r   r   ss         r   (test_getitem_boolean_na_treated_as_false9BaseGetitemTests.test_getitem_boolean_na_treated_as_false   s    xx6:)L55RaQq	E*+
''9IIdO[['(
v0r   idxr   r	   r
   Int64r   )listinteger-arrayznumpy-array)idsc                 B   X   n[        U5      S:X  d   e[        U[        U5      5      (       d   eUR                  / SQ5      n[        R
                  " X45        [        R                  " U5      n[        R                  " U5      U   n[        R                  " X45        g )Nr   rs   )	r'   r>   r?   ri   r   rY   r   r   r   )r   r   rr   r   r   s        r   test_getitem_integer_array+BaseGetitemTests.test_getitem_integer_array   s~     6{a&$t*----99Y'
''999X&4%
v0r   r   r	   r
   ru   rv   c                 v    Sn[         R                  " [        US9   X     S S S 5        g ! , (       d  f       g = f)N9Cannot index with an integer indexer containing NA valuesrD   )rH   rI   
ValueError)r   r   rr   rL   s       r   (test_getitem_integer_with_missing_raises9BaseGetitemTests.test_getitem_integer_with_missing_raises   s)     J]]:S1I 211s   *
8zSTries label-based and raises KeyError; in some cases raises when calling np.asarray)reasonc           
         Sn[         R                  " U[        [        U5      5       Vs/ s H  n[	        SU-   5      PM     snS9n[
        R                  " [        US9   XR     S S S 5        g s  snf ! , (       d  f       g = f)Nr|   d   r9   rD   )r   r   ranger'   chrrH   rI   r}   )r   r   rr   rL   ir   s         r   /test_getitem_series_integer_with_missing_raises@BaseGetitemTests.test_getitem_series_integer_with_missing_raises  sf     J ii5T;K$L;KaSq\;K$LM]]:S1H 21 %M11s   A.
 A33
Bc                     U[        S5         n[        U[        U5      5      (       d   eU[        S5         n[        U[        U5      5      (       d   eg )Nr   r	   )slicer>   r?   r@   s      r   test_getitem_slice#BaseGetitemTests.test_getitem_slice  sJ    eAh&$t*----eAh&$t*----r   c                    USS S 24   n[         R                  " X!5        US S 2S4   n[         R                  " X!5        USS S24   n[         R                  " X!S S 5        US S2S4   n[         R                  " X!S S 5        USS S S24   n[         R                  " X!S S S2   5        US S S2S4   n[         R                  " X!S S S2   5        g )N.r   r
   )r   rY   r@   s      r   test_getitem_ellipsis_and_slice0BaseGetitemTests.test_getitem_ellipsis_and_slice  s    c1f
''5af
''5c2A2g
''Ra9bqb#g
''Ra9c3Q3h
''SqS	:cc3h
''SqS	:r   c                 |   [         R                  " U[        [        U5      5       Vs/ s H  nSU-  PM
     snS9nUR	                  S5      UR
                  S   :X  d   eUR	                  SS/5      nUR
                  SS/   n[        R                  " XE5        UR	                  [        S5      5      nUR
                  SS/   n[        R                  " XE5        UR	                  S5      b   eUR	                  UR                  R                  5       S-   5      b   e[         R                  " US S [        S	5      S9nUR	                  S
5      UR
                  S   :X  d   eUR	                  [        SS5      5      nUR
                  / SQ   n[        R                  " XE5        UR	                  S5      nUb   eSn[        R                  " [        US9   UR	                  S5      UR
                  S   :X  d   eUR	                  S5      UR
                  S   :X  d   eUR	                  [        U5      5      b   e S S S 5        [         R                  " U5      n[        R                  " S 5         US S S2   nS S S 5        WR	                  S5      b   eg s  snf ! , (       d  f       Ne= f! , (       d  f       N9= f)Nr
   r   r      r   r   r	   r.   abcdefcbd)r	   r
   r   Zz;Series.__getitem__ treating keys as positions is deprecatedrD   )r   r   r   r'   getr   r   r   r   r9   maxru   assert_produces_warningFutureWarning)r   r   r   ro   r   r   rL   s2s           r   test_getBaseGetitemTests.test_get2  s3   IId%D	2B"C2BQ1q52B"CDuuQx166!9$$$1v661a&>
v0uQx661a&>
v0uuRy   uuQWW[[]Q&'///IId2Ahd8n5uuSzQVVAY&&&uS#'66)$
v0s~~K''SA558qvvay(((559r
***55Q=((( B IIdO''-3Q3B . vvay   G #D2 BA .-s   J
A&J1	J-
J*-
J;c                     [         R                  " U5      / SQ   nUR                  S   US   :X  d   eUR                  S   US   :X  d   eUR                  S   US   :X  d   eg )Nr   r	   r   r   r	   r
   r   )r   r   r   r@   s      r   test_take_sequence#BaseGetitemTests.test_take_sequenceY  sb    4+{{1~a((({{1~a((({{1~a(((r   c                    UR                  SS/5      nUR                  UR                  :X  d   eUS   US   :X  d   eUS   US   :X  d   eUR                  SS/SUS9nUS   US   :X  d   eU" US   U5      (       d   e[        R                  " [        SS9   UR                  [        U5      S-   /5        S S S 5        g ! , (       d  f       g = f)Nr   r.   r	   T)
allow_fill
fill_valuezout of boundsrD   )ri   r   rH   rI   rJ   r'   )r   r   rT   rS   r   s        r   	test_takeBaseGetitemTests.test_take_  s    Ar7#||tzz)))ayDG###ayDH$$$Ar7tIayDG###fQi****]]:_=IIs4y1}o& >==s   C
Cc                 p   US S nUR                  S/SS9nU" US   U5      (       d   eSn[        R                  " [        US9   UR                  S/5        S S S 5        [        R                  " [        SS9   UR                  SS/5        S S S 5        g ! , (       d  f       ND= f! , (       d  f       g = f)	Nr   r.   Tr   z;cannot do a non-empty take from an empty axes|out of boundsrD   zcannot do a non-empty taker	   )ri   rH   rI   rJ   )r   r   rT   rS   emptyr   rL   s          r   test_take_empty BaseGetitemTests.test_take_emptyl  s    RaRDT2fQi****K]]:S1JJt 2 ]]:-IJJJ1v KJ 21 KJs   B9B'
B$'
B5c                     [        U5      nUR                  SU* US-
  S/5      nUR                  SSUS-
  US-
  /5      n[        R                  " X45        g )Nr   r	   r.   )r'   ri   r   rY   )r   r   nr   r   s        r   test_take_negative#BaseGetitemTests.test_take_negativez  sU    IAr1q5"-.99aAE1q512
''9r   c                     US   nUS   nUR                  X2U/UR                  S9nUR                  SS/USS9nUR                  SS/5      n[        R                  " XV5        g )Nr	   r   r   r.   Tr   r   )_from_sequencer   ri   r   rY   )r   rR   r   naarrr   r   s          r   test_take_non_na_fill_value,BaseGetitemTests.test_take_non_na_fill_value  ss    !!_
!_))R (:(: * 
 2q'jTJ88QF#
''9r   c                     [         R                  " [        SS9   UR                  SS/USS9  S S S 5        g ! , (       d  f       g = f)N rD   r   Tr   )rH   rI   r}   ri   )r   r   rT   s      r   &test_take_pandas_style_negative_raises7BaseGetitemTests.test_take_pandas_style_negative_raises  s2    ]]:R0IIq"g(tID 100s	   7
Ar   TFc                     US S n[         R                  " [        SS9   UR                  [        R
                  " SS/5      US9  S S S 5        g ! , (       d  f       g = f)Nr   zout of bounds|out-of-boundsrD   r   r   )rH   rI   rJ   ri   r%   asarray)r   r   r   r   s       r   test_take_out_of_bounds_raises/BaseGetitemTests.test_take_out_of_bounds_raises  sF    2Ah]]:-JKHHRZZA'JH? LKKs   'A
Ac           	          [         R                  " U5      nUR                  SS/5      n[         R                  " UR                  US   U[	        U5      S-
     /UR
                  S9S[	        U5      S-
  /S9n[        R                  " X45        g )Nr   r.   r	   r   r   )r   r   ri   r   r'   r   r   r   )r   r   ro   r   r   s        r   test_take_series!BaseGetitemTests.test_take_series  s{    IIdOB99a$s4y1}*= >aggNc$i!m$
 	v0r   c                 `   [         R                  " U5      nUR                  / SQ5      n[         R                  " UR                  / SQ5      / SQS9n[        R
                  " XE5        [        U5      nUR                  SSU/5      n[         R                  " UR                  X!S   U/UR                  S9SSU/S9n[        R
                  " XE5        UR                  XfS-   /5      n[         R                  " UR                  X"/UR                  S9XfS-   /S9n[        R
                  " XE5        g )Nr   r   r.   r   r   r	   )	r   r   reindexri   r   r   r'   r   r   )r   r   rT   ro   r   r   r   s          r   test_reindexBaseGetitemTests.test_reindex  s    IIdO9%99TYYy1C
v0IB1:&997H =QWWMq!*
 	v0A1u:&99 4AGGDQTUPUJ
 	v0r   c                 *   US   nUS   nUR                  X2/UR                  S9n[        R                  " U5      nUR	                  / SQUS9n[        R                  " UR                  X2U/UR                  S95      n[
        R                  " Xg5        g )Nr	   r   r   rs   )r   )r   r   r   r   r   r   r   )r   rR   validr   r   r   r   r   s           r   test_reindex_non_na_fill_value/BaseGetitemTests.test_reindex_non_na_fill_value  s    Q!_))2+\=O=O)PiinY5999''E(:,BTBT'U
 	v0r   c                 R   [         R                  " SU05      nUR                  S/S4   nUR                  S:X  d   eUR                  R
                  S   R                  S:X  d   e[        UR                  S5      (       a'  UR                  R                  R                  S:X  d   eg g )Nr    r   r	   blocks)r   r$   r2   ndim_mgrarrayshasattr_block)r   r   r*   ress       r   test_loc_len1BaseGetitemTests.test_loc_len1  s    \\3+&ffaS#Xxx1}}xxq!&&!+++388X&&88??''1,,, 'r   c                    [         R                  " U5      nUS S R                  5       nX1S   :X  d   eSn[        R                  " [
        US9   US S R                  5         S S S 5        [        R                  " [
        US9   UR                  5         S S S 5        g ! , (       d  f       NA= f! , (       d  f       g = f)Nr	   r   z6can only convert an array of size 1 to a Python scalarrD   )r   r   itemrH   rI   r}   )r   r   ro   r   rL   s        r   	test_itemBaseGetitemTests.test_item  s    IIdO2Aa   F]]:S1bqEJJL 2 ]]:S1FFH 21 21 21s   BB/
B,/
B=rQ   N).__name__
__module____qualname____firstlineno____doc__r   r+   r/   r3   r6   r:   rA   rN   rU   rZ   r`   rd   rj   rp   rH   markparametrizer   rX   r%   ry   rm   r~   xfailr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   __static_attributes__rQ   r   r   r   r      s   /118*,11,138(:*01&1$ [[	BHHYg68KL4  
	1
	1 [[
Q255	288Q1bee$4GDE_%  


 [[7   [[
Q255	288Q1bee$4GDE_%  
	.;(%!N)':	:E [[\D%=9@ :@11(1-r   r   )	numpyr%   rH   pandasr   pandas._testing_testingr   r   rQ   r   r   <module>r      s       M Mr   