
    Owg                        d dl Zd dlZd dlmZmZmZ d dlmZ	 d dl
mZ ddgfdZd Zd Zd	 Zd
 Zd Zd Zd Zd Zej*                  j-                  dd d d d d d d d d d g
g d      d        Zd Zd Zd Zy)     N)	DataFrameIndexSeries)	get_array      c                 n    t        | dd      }|d d  }|j                  dd      }|j                  }||fS )N      ?abr   Tdrop)r   	set_indexindex)
index_datadfviewidxs       ^/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/copy_view/index/test_index.py
index_viewr      s?    	#.	/Ba5D	c	%B
((C9    c                    t        ddgdd      }|j                  dd      }|j                  j                  d      }t	        j
                  |      5  d	|j                  d
<   d d d        | r!t	        j                  |j                  |       y t	        j                  |j                  t        d	dgd             y # 1 sw Y   ZxY w)Nr   r   r   r   Fr   Tdeepd   r   r   name)	r   r   r   copytmassert_cow_warningilocassert_index_equalr   )using_copy_on_writewarn_copy_on_writer   expecteds       r   test_set_index_update_columnr(      s    	!Qa(	)B	c	&Bxx}}$}'H			1	2 
bhh1
bhhsAhS(AB s   B>>Cc                     t        ddgdd      }|d d  }|j                  dd      }|j                  j                  d      }d	|j                  d
<   t        j                  |j                  |       y )Nr   r   r
   r   r   Tr   r   r   r   )r   r   r   r    r#   r!   r$   )r%   r   r   r'   s       r   !test_set_index_drop_update_columnr*   "   se    	!Qc*	+Ba5D	c	%Bxx}}$}'HDIIdO"((H-r   c                    t        ddgdd      }t        ddg      }|j                  |      }|j                  j	                  d      }t        j                  |      5  d	|j                  d
<   d d d        | r!t        j                  |j                  |       y t        j                  |j                  t        d	dg             y # 1 sw Y   XxY wNr   r   r
   r   
      Tr   r   r   )
r   r   r   r   r    r!   r"   r#   r$   r   r%   r&   r   serr'   s        r   test_set_index_seriesr1   +   s    	!Qc*	+B
"b
C	c	Bxx}}$}'H			1	2 
bhh1
bhhsBi(89 s    CCc                    t        ddgdd      }t        ddg      }||_        |j                  j                  d      }t	        j
                  |      5  d	|j                  d
<   d d d        | r!t	        j                  |j                  |       y t	        j                  |j                  t        d	dg             y # 1 sw Y   XxY wr,   )	r   r   r   r    r!   r"   r#   r$   r   r/   s        r   test_assign_index_as_seriesr3   8   s    	!Qc*	+B
"b
CBHxx}}$}'H			1	2 
bhh1
bhhsBi(89 s   B==Cc                    t        ddgdd      }t        ddg      }t        |      }||_        d }|j                  j	                  d      }t        j                  |      5  d	|j                  d
<   d d d        | r!t        j                  |j                  |       y t        j                  |j                  t        d	dg             y # 1 sw Y   XxY wr,   )	r   r   r   r   r    r!   r"   r#   r$   )r%   r&   r   r0   	rhs_indexr'   s         r   test_assign_index_as_indexr6   E   s    	!Qc*	+B
"b
Cc
IBHIxx}}$}'H			1	2 
bhh1
bhhsBi(89 s   #C

Cc                 >   t        ddg      }t        |      }|j                  d      }t        j                  |      5  d|j
                  d<   d d d        | rt        j                  ||       y t        j                  |t        ddg             y # 1 sw Y   DxY wNr   r   Tr   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r0   r   r'   s        r   test_index_from_seriesr;   T   s    
!Q.C
*CxxTx"H			1	2 
c8,
c5#q?3 s    BBc                     t        ddg      }t        |d      }t        |      }d|j                  d<   t	        j
                  t        |      |      sJ y )Nr   r   Tr    r   r   )r   r   r   r#   npshares_memory)r%   r0   r   arrs       r   test_index_from_series_copyrA   `   sK    
!Q.C
$
C
C.CCHHQKIcNC000r   c                 T   t        ddg      }t        |      }t        |      }|j                  d      }t        j                  |      5  d|j
                  d<   d d d        | rt        j                  ||       y t        j                  |t        ddg             y # 1 sw Y   DxY wr8   r9   r:   s        r   test_index_from_indexrC   h   s    
!Q.C
*C
*CxxTx"H			1	2 
c8,
c5#q?3 s   BB'funcc                 8    | j                  | j                        S N)_shallow_copy_valuesxs    r   <lambda>rK   x   s    !//!)), r   c                 "    | j                         S rF   )r   rI   s    r   rK   rK   y   s    !&&( r   c                 (    | j                  ddg      S Nr   r   )takerI   s    r   rK   rK   z   s    !&&!Q. r   c                 (    | j                  ddg      S )Nr   )repeatrI   s    r   rK   rK   {   s    !((Aq6" r   c                      | t        dd         S Nr   r   )slicerI   s    r   rK   rK   |   s    !E!QK. r   c                     | ddg   S rN    rI   s    r   rK   rK   }   s    !QF) r   c                 8    | j                  t        dd            S rS   )_getitem_slicerT   rI   s    r   rK   rK   ~   s    !""5A;/ r   c                 $    | j                  g       S rF   )deleterI   s    r   rK   rK      s    !((2, r   c                 $    | j                  d      S )Nr   )renamerI   s    r   rK   rK      s    !((3- r   c                 (    | j                  dd      S )NInt64Fr=   )astyperI   s    r   rK   rK      s    !((7(/ r   )
rG   r   rO   rQ   getitem_slicegetitem_listrX   rZ   r\   r_   )idsc                    t               \  }}|j                  d      }d|j                  j                  j                  v r|j                  d      } ||      }d|j                  d<   | rt        j                  ||d       y y )	NTr   r_   r^   r   r   Fcheck_names)	r   r    nodecallspecidr_   r#   r!   r$   )r%   rD   requestr   view_r'   s         r   test_index_opsrk   u   sv    8 JCxxTx"H7<<((+++??7+
s)CEJJt
c8? r   c                     t        ddg      \  }}|j                  d      }|j                  d      }d|j                  d<   | rt	        j
                  ||d	       y y )
Nr   r   Tr   Fr=   aaaar   rd   )r   r    infer_objectsr#   r!   r$   )r%   r   rj   r'   s       r   test_infer_objectsro      s_    S#J'JCxxTx"H




'CEJJt
c8? r   c                    t        g dd      }|j                  d      }|j                         }| rIt        j                  t        |d      |j                        sJ |j                  j                  d      r.J t        j                  t        |d      |j                        rJ d|j                  d<   t        j                  ||       y )	Nr   r      r   r   Tr   r   r   r   )r   r    to_framer>   r?   r   rH   _mgr_has_no_referencer#   r!   r$   )r%   r   r'   r   s       r   test_index_to_framerv      s    
	
$CxxTx"H	B	"c 2CKK@@@77,,Q///##Ib#$6DDDBGGDM#x(r   c                     t        g d      }|j                  }| r|j                  j                  du sJ y |j                  j                  du sJ y )Nrq   FT)r   valuesflags	writeable)r%   r   results      r   test_index_valuesr|      sH    
	
CZZF||%%...||%%---r   )numpyr>   pytestpandasr   r   r   pandas._testing_testingr!   pandas.tests.copy_view.utilr   r   r(   r*   r1   r3   r6   r;   rA   rC   markparametrizerk   ro   rv   r|   rV   r   r   <module>r      s      
  1 a& 	C.
:
::	41
4 
, " //	  6@76@@).r   