o
    Û­j‚  ã                   @   sp   d dl Zd dlmZ d dlmZmZ d dlmZ	 d dl
mZ dd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Zdd„ ZdS )é    N)ÚWARNING_CHECK_DISABLED)Ú	DataFrameÚoption_context)Ú	get_arrayc                 C   sÜ   t dg d¢iƒ}| ¡ }t|dƒ}|d d … }|r5t ¡ � |jddd� W d   ƒ n1 s/w   Y  n|jddd� | rat t|dƒ|¡rIJ ‚|j 	d¡sQJ ‚|j 	d¡sYJ ‚t 
||¡ d S t t|dƒ|¡slJ ‚d S ©NÚa©g      ø?é   é   r	   T©ÚlowerÚinplacer   )r   Úcopyr   ÚtmÚassert_cow_warningÚclipÚnpÚshares_memoryÚ_mgrÚ_has_no_referenceÚassert_frame_equal)Úusing_copy_on_writeÚwarn_copy_on_writeÚdfÚdf_copyÚarr_aÚview© r   ú]/var/www/html/CropPilot/venv/lib/python3.10/site-packages/pandas/tests/copy_view/test_clip.pyÚtest_clip_inplace_reference   s    

ÿ€r   c                 C   sŠ   t dg d¢iƒ}| ¡ }t|dƒ}|d d … }|jddd� t t|dƒ|¡s)J ‚| rC|j d¡r3J ‚|j d¡r;J ‚t 	||¡ d S d S )Nr   r   r   Tr   )
r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   Ú!test_clip_inplace_reference_no_op!   s   
ýr    c                 C   sZ   t dg d¢iƒ}t|dƒ}|jddd� t t|dƒ|¡sJ ‚| r)|j d¡s+J ‚d S d S r   )r   r   r   r   r   r   r   )r   r   r   r   r   r   Útest_clip_inplace0   s   
ÿr!   c                 C   sd   t dg d¢iƒ}| ¡ }|jdd�}t t|dƒt|dƒ¡r J ‚| r*|j d¡s*J ‚t 	||¡ d S )Nr   r   r	   ©r   r   )
r   r   r   r   r   r   r   r   r   r   )r   r   Údf_origÚdf2r   r   r   Ú	test_clip;   s   r%   c                 C   sp   t dg d¢iƒ}|jdd�}| r(|j d¡rJ ‚t t|dƒt|dƒ¡s&J ‚d S t t|dƒt|dƒ¡r6J ‚d S )Nr   r   r   r"   )r   r   r   r   r   r   r   )r   r   r$   r   r   r   Útest_clip_no_opG   s     r&   c              	   C   sî  t g d¢ddœƒ}| ¡ }| rZt ¡ � |d jdddd� W d   ƒ n1 s(w   Y  t ||¡ t ¡ � |dg jdddd� W d   ƒ n1 sMw   Y  t ||¡ d S tjts`tnd dd	�� |d jdddd� W d   ƒ n1 szw   Y  t d ¡�( t	d
d ƒ� |dg jdddd� W d   ƒ n1 s w   Y  W d   ƒ n1 s¯w   Y  t d ¡�4 t	d
d ƒ� ||d dk jdddd� W d   ƒ n1 sØw   Y  W d   ƒ d S W d   ƒ d S 1 sðw   Y  d S )N)é   é   r	   r'   )r   Úbr   r	   T)r   zinplace method)Úmatchzmode.chained_assignment)
r   r   r   Úraises_chained_assignment_errorr   r   Úassert_produces_warningr   ÚFutureWarningr   )r   r   r#   r   r   r   Útest_clip_chained_inplaceR   s<   
ÿ
ÿ
þüÿ€ÿÿÿ"ÿr.   )Únumpyr   Úpandas.compatr   Úpandasr   r   Úpandas._testingÚ_testingr   Úpandas.tests.copy_view.utilr   r   r    r!   r%   r&   r.   r   r   r   r   Ú<module>   s    