
    Eg                     
   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                            dd d d d d d d d d d g
g d          d             Zd Zd Zd ZdS )     N)	DataFrameIndexSeries)	get_array      c                 ~    t          | dd          }|d d          }|                    dd          }|j        }||fS )N      ?abr   Tdrop)r   	set_indexindex)
index_datadfviewidxs       \/var/www/sysmax/venv/lib/python3.11/site-packages/pandas/tests/copy_view/index/test_index.py
index_viewr      sJ    	#..	/	/Baaa5D	c	%	%B
(C9    c                    t          ddgdd          }|                    dd          }|j                            d          }t	          j        |          5  d	|j        d
<   d d d            n# 1 swxY w Y   | rt	          j        |j        |           d S t	          j        |j        t          d	dgd                     d S )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x}}$}''H		1	2	2                 C
bh11111
bhsAhS(A(A(ABBBBBs   A22A69A6c                     t          ddgdd          }|d d          }|                    dd          }|j                            d          }d	|j        d
<   t          j        |j        |           d S )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*   "   sx    	!Qc**	+	+Baaa5D	c	%	%Bx}}$}''HDIdO"(H-----r   c                    t          ddgdd          }t          ddg          }|                    |          }|j                            d          }t          j        |          5  d	|j        d
<   d d d            n# 1 swxY w Y   | rt          j        |j        |           d S t          j        |j        t          d	dg                     d S 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x}}$}''H		1	2	2                 :
bh11111
bhsBi(8(899999s   *BBBc                    t          ddgdd          }t          ddg          }||_        |j                            d          }t	          j        |          5  d	|j        d
<   d d d            n# 1 swxY w Y   | rt	          j        |j        |           d S t	          j        |j        t          d	dg                     d S 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x}}$}''H		1	2	2                 :
bh11111
bhsBi(8(899999s   A33A7:A7c                    t          ddgdd          }t          ddg          }t          |          }||_        d }|j                            d          }t          j        |          5  d	|j        d
<   d d d            n# 1 swxY w Y   | rt          j        |j        |           d S t          j        |j        t          d	dg                     d S 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x}}$}''H		1	2	2                 :
bh11111
bhsBi(8(899999s   -BBBc                 X   t          ddg          }t          |          }|                    d          }t          j        |          5  d|j        d<   d d d            n# 1 swxY w Y   | rt          j        ||           d S t          j        |t          ddg                     d S 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	2                 4
c8,,,,,
c5#q??33333s   A""A&)A&c                     t          ddg          }t          |d          }t          |          }d|j        d<   t	          j        t          |          |          sJ d S )Nr   r   Tr    r   r   )r   r   r   r#   npshares_memory)r%   r0   r   arrs       r   test_index_from_series_copyrA   `   s^    
!Q..C
$


C
C..CCHQKIcNNC0000000r   c                 v   t          ddg          }t          |          }t          |          }|                    d          }t          j        |          5  d|j        d<   d d d            n# 1 swxY w Y   | rt          j        ||           d S t          j        |t          ddg                     d S r8   r9   r:   s        r   test_index_from_indexrC   h   s    
!Q..C
**C
**CxxTx""H		1	2	2                 4
c8,,,,,
c5#q??33333s   A11A58A5funcc                 6    |                      | j                  S N)_shallow_copy_valuesxs    r   <lambda>rK   x   s    !//!),, r   c                 *    |                                  S rF   )r   rI   s    r   rK   rK   y   s    !&&(( r   c                 0    |                      ddg          S Nr   r   )takerI   s    r   rK   rK   z   s    !&&!Q.. r   c                 0    |                      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!QKK. r   c                     | ddg         S rN    rI   s    r   rK   rK   }   s    !QF) r   c                 H    |                      t          dd                    S rS   )_getitem_slicerT   rI   s    r   rK   rK   ~   s    !""5A;;// r   c                 ,    |                      g           S rF   )deleterI   s    r   rK   rK      s    !((2,, r   c                 ,    |                      d          S )Nr   )renamerI   s    r   rK   rK      s    !((3-- r   c                 0    |                      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                      \  }}|                    d          }d|j        j        j        v r|                    d          } ||          }d|j        d<   | rt          j        ||d           d S d S )	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   s    8 JCxxTx""H7<(+++??7++
$s))CEJt @
c8??????@ @r   c                     t          ddg          \  }}|                    d          }|                    d          }d|j        d<   | rt	          j        ||d	           d S d S )
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EJt @
c8??????@ @r   c                    t          g dd          }|                    d          }|                                }| rGt          j        t          |d          |j                  sJ |j                            d          rJ n*t          j        t          |d          |j                  rJ d|j	        d<   t          j        ||           d S )	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 E	"c 2 2CK@@@@@7,,Q//////#Ib#$6$6DDDDDBGDM#x(((((r   c                 ~    t          g d          }|j        }| r|j        j        du sJ d S |j        j        du sJ d S )Nrq   FT)r   valuesflags	writeable)r%   r   results      r   test_index_valuesr|      sZ    
			

CZF .|%......|%------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 1 1 1 1 1 a&    	C 	C 	C. . .
: 
: 
:
: 
: 
:: : :	4 	4 	41 1 1
4 
4 
4 
,,  ""  ////	 	 	   6@ @7 6@@ @ @) ) ). . . . .r   