o
    $j(                     @   s  d dl Zd dlZd dlmZ d dlmZmZmZ d dl	m
Z d dlmZ ejjddd dd d	d gg d
ddd Zejjddd dd dd gg d
ddd Zdd Zejdddgdd Zdd Zdd Zdd Zd d! Zd"d# Zd$d% Zd&d' ZdS )(    N)np_version_gt2)	DataFrameSeries
date_range)	get_arraymethodc                 C      | j S Nvaluesser r   b/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/pandas/tests/copy_view/test_array.py<lambda>       r   c                 C   
   t | S r	   npasarrayr   r   r   r   r         
 c                 C      t j| ddS NFcopyr   arrayr   r   r   r   r          )r   r   r   )Zidsc                 C   s   t g ddd}| }||}| rVt|t|dsJ |jjdu s%J tjt	dd d|d< W d    n1 s;w   Y  t
|| d|jd< |jd dksTJ d S |jjdu s^J d|d< |jd dkskJ d S )	N         namer"   F	read-onlymatchr   T)r   r   r   shares_memoryr   flags	writeablepytestraises
ValueErrortmassert_series_equalilocr   )using_copy_on_writer   r   ser_origarrr   r   r   test_series_values   s   


r3   c                 C   r   r	   r
   dfr   r   r   r   7   r   c                 C   r   r	   r   r4   r   r   r   r   8   r   c                 C   r   r   r   r   r   r   r   r   9   r   c                 C   s   t g dg dd}| }||}| rYt|t|ds J |jjdu s(J tjt	dd d|d	< W d    n1 s>w   Y  t
|| d|jd	< |jd	 dksWJ d S |jjd
u saJ d|d	< |sr|jd	 dkspJ d S t
|| d S )Nr            abr;   Fr$   r%   r   )r   r   T)r   r   r   r'   r   r(   r)   r*   r+   r,   r-   Zassert_frame_equalr/   r   )r0   using_array_managerr   r5   Zdf_origr2   r   r   r   test_dataframe_values4   s"   


r>   c                 C   s\  t g ddd}| }| }| rUt|t|dsJ |jjdu s%J tj	t
dd d|d< W d    n1 s;w   Y  t|| d|jd< |jd dksTJ n|jjdu s]J d|d< |jd dksjJ t g ddd}|jdd	}t|t|drJ |jjdu sJ t g ddd}|jd
d}t|t|drJ |jjdu sJ d S )Nr   r"   r#   Fr$   r%   r   Tr   Zfloat64Zdtype)r   r   Zto_numpyr   r'   r   r(   r)   r*   r+   r,   r-   r.   r/   r   )r0   r   r1   r2   r   r   r   test_series_to_numpyY   s.   

r@   orderFCc                 C   sr   t g d}tjtdd |j|d}W d    n1 sw   Y  | r-|jjdu s-J tt	||s7J d S )Nr   zis deprecatedr%   )rA   F)
r   r-   Zassert_produces_warningFutureWarningZravelr(   r)   r   r'   r   )r0   rA   r   r2   r   r   r   test_ravel_read_only~   s   rE   c                 C   s   t g ddd}tj|dd}t|t|sJ | r$|jjdu s#J n|jjdu s,J t|}t|t|s;J | rG|jjdu sEJ d S |jjdu sOJ d S )Nr   Int64r?   int64FT)r   r   r   r'   r   r(   r)   )r0   r   r2   r   r   r   test_series_array_ea_dtypes   s   
rH   c                 C   s   t dg didd}tj|dd}t|t|dsJ | r'|jjdu s&J n|jjdu s/J t|}t|t|ds?J | rK|jjdu sIJ d S |jjdu sSJ d S )Nr;   r   rF   r?   rG   FTr   r   r   r'   r   r(   r)   r0   r5   r2   r   r   r   test_dataframe_array_ea_dtypes   s   
rK   c                 C   sd   t dddgidd}t|}|st|t|dsJ | r(|jjdu s&J d S |jjdu s0J d S )Nr;   r<   stringr?   FTrI   )r0   r=   r5   r2   r   r   r   !test_dataframe_array_string_dtype   s   
rM   c                  C   s   t g ddd} t| }t|t| drJ |jjdu s!J trCd}tj	t
|d tj| dd	}W d    n1 s>w   Y  tj| dd	}|jjdu sRJ d S )
Nr   g      ?r:   r;   TzGStarting with NumPy 2.0, the behavior of the 'copy' keyword has changedr%   Fr   )r   r   r   r'   r   r(   r)   r   r*   r+   rD   r   )r5   r2   msgr   r   r   $test_dataframe_multiple_numpy_dtypes   s   
rO   c                  C   sN   t g dg dd} tj| dd}t|t| drJ |jjdu s%J d S )Nr   r6   r:   Tr   r;   )r   r   r   r'   r   r(   r)   r5   r2   r   r   r   %test_dataframe_single_block_copy_true   s   rQ   c                 C   sJ   t dtdddi}t|}| r|jjdu sJ d S |jjdu s#J d S )Nr;   z
2012-01-01r!   )ZperiodsFT)r   r   r   r   r(   r)   rJ   r   r   r   test_values_is_ea   s
   
rR   c                  C   s$   t  } t| }|jjdu sJ d S )NT)r   r   r   r(   r)   rP   r   r   r   test_empty_dataframe   s   
rS   )numpyr   r*   Zpandas.compat.numpyr   Zpandasr   r   r   Zpandas._testingZ_testingr-   Zpandas.tests.copy_view.utilr   markZparametrizer3   r>   r@   rE   rH   rK   rM   rO   rQ   rR   rS   r   r   r   r   <module>   sD    
	
	%
		