o
    vh(                     @   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   _/var/www/html/hyperkenya/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   )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   


r4   c                 C   r   r	   r
   dfr   r   r   r   7   r   c                 C   r   r	   r   r5   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.   assert_frame_equalr0   r   )r1   using_array_managerr   r6   df_origr3   r   r   r   test_dataframe_values4   s"   


rA   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   float64dtype)r   r   to_numpyr   r(   r   r)   r*   r+   r,   r-   r.   r/   r0   r   )r1   r   r2   r3   r   r   r   test_series_to_numpyY   s.   

rF   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&   )rG   F)
r   r.   assert_produces_warningFutureWarningravelr)   r*   r   r(   r   )r1   rG   r   r3   r   r   r   test_ravel_read_only~   s   rM   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   Int64rC   int64FT)r   r   r   r(   r   r)   r*   )r1   r   r3   r   r   r   test_series_array_ea_dtypes   s   
rP   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   rN   rC   rO   FTr   r   r   r(   r   r)   r*   r1   r6   r3   r   r   r   test_dataframe_array_ea_dtypes   s   
rS   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=   stringrC   FTrQ   )r1   r?   r6   r3   r   r   r   !test_dataframe_array_string_dtype   s   
rU   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,   rK   r   )r6   r3   msgr   r   r   $test_dataframe_multiple_numpy_dtypes   s   
rW   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   r7   r;   Tr   r<   )r   r   r   r(   r   r)   r*   r6   r3   r   r   r   %test_dataframe_single_block_copy_true   s   rY   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"   )periodsFT)r   r   r   r   r)   r*   rR   r   r   r   test_values_is_ea   s
   
r[   c                  C   s$   t  } t| }|jjdu sJ d S )NT)r   r   r   r)   r*   rX   r   r   r   test_empty_dataframe   s   
r\   )numpyr   r+   pandas.compat.numpyr   pandasr   r   r   pandas._testing_testingr.   pandas.tests.copy_view.utilr   markparametrizer4   rA   rF   rM   rP   rS   rU   rW   rY   r[   r\   r   r   r   r   <module>   sD    
	
	%
		