
    Owg                     v    d dl Zd dlmZmZmZmZmZ d dlm	Z
 d dlmZ d Zd Zd Zd Zd Zd	 Zd
 Zd Zd Zy)    N)	DataFrameIndex
MultiIndex
RangeIndexSeries)	get_arrayc                      t        g dg dd      } t        j                  g dd      }|| d<   t        j                  t	        | d      |      rJ d|d<   t        j                  | d   t        g dd             y )	N                  abint64)dtypecr   name)r   nparrayshares_memoryr   tmassert_series_equalr   )dfarrs     Z/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/copy_view/test_setitem.pytest_set_column_with_arrayr"      sm    	3	4B
((9G
,CBsG 	"c 2C888CF2c7F93$?@    c                    t        g dg dd      }t        g d      }||d<   | r+t        j                  t	        |d      t	        |            s-J t        j                  t	        |d      t	        |            rJ d|j
                  d<   |j
                  d   dk(  sJ t        j                  |d   t        g dd             y )Nr
   r   r   r   r   r   )r   r   r   r   r   ilocr   r   )using_copy_on_writer   sers      r!   test_set_column_with_seriesr(      s     
3	4B

CBsG	"c 2IcNCCC ##Ib#$6	#GGG CHHQK88A;!2c7F93$?@r#   c                 "   t        g dg dd      }t        g d      }||d<   t        j                  t	        |d      |j
                        rJ t        dd      }|j
                  }||d<   t        j                  t	        |d      |      rJ y )Nr
   r   r   r   r   r   d)r   r   r   r   r   valuesr   )r&   r   idxr    s       r!   test_set_column_with_indexr-   3   s    	3	4B
	
CBsG 	"c 2CJJ???
Q
C
**CBsG	"c 2C8888r#   c                 x   t        g dg dd      }t        g dg dd      }||ddg<   | r,t        j                  t        |d      t        |d            s.J t        j                  t        |d      t        |d            rJ d	|j                  d
<   t        j                  |d   t        g dd             y )Nr
   r   r   )      	   )
         )r   r*   r   r*   r   r   r   r   )r   r   r   r   r%   r   r   r   )r&   r   df2s      r!   test_set_columns_with_dataframer7   E   s     
3	4B
),7
8CBSzN	"c 2Ic34GHHH ##Ib#$6	#s8KLLL CHHTN2c7F93$?@r#   c                 
   t        dg di      }t        g d      }|j                         }||d<   | r+t        j                  t        |      t        |d            sJ d|j                  d<   t        j                  ||       y )Nr   r
   r   r   d   r   r   	r   r   copyr   r   r   r%   r   r   r&   r   rhsrhs_origs       r!   test_setitem_series_no_copyr@   X   sr    	C#	$B

CxxzH BsG	#	"c0BCCCBGGDM3)r#   c                    t        g dg dd      }t        g d      }|j                         }||d<   | r+t        j                  t        |      t        |d            sJ d|j                  d<   t        j                  ||       y )Nr
   )g?g?g333333?r   r   r   r9   r5   r;   r=   s       r!   (test_setitem_series_no_copy_single_blockrB   g   sp    	9	:B

CxxzHBsG	#	"c0BCCCBGGDM3)r#   c                    t        g ddd      }t        g d      }|j                         }||d<   | r+t        j                  t        |      t        |d            sJ d|j                  d<   t        j                  ||       y )Nr
   r   r   r   r   r9   r:   r;   r=   s       r!   'test_setitem_series_no_copy_split_blockrD   u   sp    	+	,B

CxxzHBsG	#	"c0BCCCBGGDM3)r#   c                     t        g dg dgt        j                  g dg dg            }t        ddg      }||d<   t	        j
                  t        |      |j                  d            rJ | r|j                  j                  d      sJ y y )	Nr
   )r   r   r   )r   r   r   )columnsr2   r3   r   r   )
r   r   from_arraysr   r   r   r   _get_column_array_mgr_has_no_reference)r&   r   r>   s      r!   ,test_setitem_series_column_midx_broadcastingrK      s     
	I&&'CD
B "b
CBsG	#0D0DQ0GHHHww((+++ r#   c                 "   t        g dg dd      }t        j                  d       5  |dxx   dz  cc<   d d d        t        g dg dd      }|d   }t        j                  |      5  |dz  }d d d        y # 1 sw Y   DxY w# 1 sw Y   y xY w)Nr
   r   r   r   r   )r   r   assert_produces_warningassert_cow_warning)r&   warn_copy_on_writer   r'   s       r!   %test_set_column_with_inplace_operatorrP      s    	3	4B 
	#	#D	) 
31 
3	4B
S'C			1	2 q   s   A9*B9BB)numpyr   pandasr   r   r   r   r   pandas._testing_testingr   pandas.tests.copy_view.utilr   r"   r(   r-   r7   r@   rB   rD   rK   rP    r#   r!   <module>rW      sJ       1AA(9$A&***,r#   