
    .iI                        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	 gg d
      d        Zej                  j                  dd d d gg d      d        Zd Zej                  j                  dd d d d d gg d      d        Zej                  j                  dd d d d gg d      d        Zd  Zd! Zd" Zd# Zd$ Zd% Zy)&    N)np_version_gt2)	DataFrameSeries
date_range)	get_arraymethodc                     | j                   S Nvaluessers    _/var/www/app/trading-bot/venv/lib/python3.12/site-packages/pandas/tests/copy_view/test_array.py<lambda>r      s
    CJJ     c                 @    t        j                  | j                        S r
   npasarrayarrayr   s    r   r   r          BJJsyy) r   c                 ,    t        j                  |       S r
   r   r   r   s    r   r   r          BJJsO r   c                 0    t        j                  | d      S NFcopyr   r   r   s    r   r   r          BHHSu- r   )r   r   
np.asarraynp.array)idsc                 T   t        g dd      }|j                         } ||      }| j                  j                  j                  dk(  r4|j
                  j                  du sJ d|d<   |j                  d   dk(  sJ y t        j                  |t        |d            sJ |j
                  j                  du sJ t        j                  t        d	      5  d|d<   d d d        t        j                  ||       d|j                  d<   |j                   d   dk(  sJ y # 1 sw Y   CxY w)
N         namer)   r   Tr   F	read-onlymatchr   r   nodecallspecidflags	writeableilocr   shares_memoryr   pytestraises
ValueErrortmassert_series_equalr   requestr   r   ser_origarrs        r   test_series_valuesr?      s    
(CxxzH
+C||7* yy""d***Axx{a C3!788899%''' 
z	5 A3) CHHQK::a=A s   DD'c                     | j                   S r
   r   dfs    r   r   r   <   
    299 r   c                 ,    t        j                  |       S r
   r   rA   s    r   r   r   =       2::b> r   c                 0    t        j                  | d      S r   r   r   s    r   r   r   >   r    r   )r   r   r   c                    t        g dg dd      }|j                         } | |      }t        j                  |t	        |d            sJ |j
                  j                  du sJ t        j                  t        d      5  d|d	<   d d d        t        j                  ||       d|j                  d	<   |j                  d	   dk(  sJ y # 1 sw Y   CxY w)
Nr%            abrM   Fr+   r,   r   )r   r   )r   r   r   r5   r   r2   r3   r6   r7   r8   r9   assert_frame_equalr4   r   )r   rB   df_origr>   s       r   test_dataframe_valuesrQ   9   s     
3	4BggiG
*C C2s!344499%''' 
z	5 D	"g& BGGDM99T?a s   C

Cc                  *   t        g dd      } | j                         }| j                         }t        j                  |t        | d            sJ |j                  j                  du sJ t        j                  t        d      5  d|d<   d d d        t        j                  | |       d| j                  d<   | j                  d   dk(  sJ t        g dd      } | j                  d	      }t        j                  |t        | d            rJ |j                  j                  du sJ t        g dd      } | j                  d
      }t        j                  |t        | d            rJ |j                  j                  du sJ y # 1 sw Y   xY w)Nr%   r)   r*   Fr+   r,   r   Tr   float64dtype)r   r   to_numpyr   r5   r   r2   r3   r6   r7   r8   r9   r:   r4   r   )r   r=   r>   s      r   test_series_to_numpyrW   V   sd   

(CxxzH ,,.CC3!788899%''' 
z	5 A3) CHHQK::a=A 
(C
,,D,
!CYsF%;<<<99$&&& 
(C
,,Y,
'CYsF%;<<<99$&&&% s   F		Fc                 @    t        j                  | j                        S r
   )r   r   r   r   s    r   r   r   y   s    BJJszz* r   c                 @    t        j                  | j                        S r
   r   r   s    r   r   r   z   r   r   c                 ,    t        j                  |       S r
   r   r   s    r   r   r   {   r   r   c                 0    t        j                  | d      S Nint64rT   r   r   s    r   r   r   |   s    BJJs'2 r   c                 0    t        j                  | d      S r   r   r   s    r   r   r   }   r    r   )r   r   r!   np.asarray-dtyper"   c                 P   t        g dd      }|j                         } ||      }| j                  j                  j                  dv r4|j
                  j                  du sJ d|d<   |j                  d   dk(  sJ y t        j                  |t        |            sJ |j
                  j                  du sJ t        j                  t        d	      5  d|d<   d d d        t        j                  ||       d|j                  d<   |j                   d   dk(  sJ y # 1 sw Y   CxY w)
Nr%   Int64rT   )r   r   Tr   Fr+   r,   r.   r;   s        r   test_series_values_ea_dtypesrb   v   s    '
*CxxzH
+C||#66 yy""d***Axx{a C300099%''' 
z	5 A3) CHHQK::a=A s   DD%c                     | j                   S r
   r   rA   s    r   r   r      rC   r   c                 ,    t        j                  |       S r
   r   rA   s    r   r   r      rE   r   c                 0    t        j                  | d      S r\   r   rA   s    r   r   r      s    2::b0 r   c                 0    t        j                  | d      S r   r   rA   s    r   r   r      s    288BU+ r   )r   r!   r_   r"   c                     t        dg did      } | |      }t        j                  |t        |d            sJ |j                  j
                  du sJ y )NrM   r%   ra   rT   F)r   r   r5   r   r2   r3   )r   rB   r>   s      r   test_dataframe_array_ea_dtypesrh      sS     
C#7	3B
*CC2s!344499%'''r   c                      t        dddgid      } t        j                  |       }t        j                  |t	        | d            sJ |j
                  j                  du sJ y )NrM   rN   zstring[python]rT   F)r   r   r   r5   r   r2   r3   rB   r>   s     r   !test_dataframe_array_string_dtyperk      sZ    	C#s$,<	=B
**R.CC2s!344499%'''r   c                 b   t        ddg|       }t        j                  |      }| dk(  rK| j                  dk(  r<t        j                  |t        |            rJ |j                  j                  du sJ y t        j                  |t        |            sJ |j                  j                  du sJ y )NrM   rN   rT   stringpyarrowTF)r   r   r   storager5   r   r2   r3   )any_string_dtyper   r>   s      r   test_series_array_string_dtyperq      s    
#s#3
4C
**S/C8#(8(@(@I(M ##C3888yy""d***Ys^444yy""e+++r   c                     t        g ddd      } t        j                  |       }t        j                  |t	        | d            rJ |j
                  j                  du sJ t        r;t        j                  t        d      5  t        j                  | d	      }d d d        t        j                  | d	      }|j
                  j                  du sJ y # 1 sw Y   ;xY w)
Nr%   g      ?rL   rM   Tz#Unable to avoid copy while creatingr,   Fr   )r   r   r   r5   r   r2   r3   r   r6   r7   r8   r   rj   s     r   $test_dataframe_multiple_numpy_dtypesrs      s    	-	.B
**R.CYr3%788899$&&& ]]:-RS 	+((2E*C	+ ((2D
!C99$&&&		+ 	+s   CCc                      t        g dg dd      } t        j                  | d      }t        j                  |t	        | d            rJ |j
                  j                  du sJ y )Nr%   rH   rL   Tr   rM   )r   r   r   r5   r   r2   r3   rj   s     r   %test_dataframe_single_block_copy_trueru      sV    	3	4B
((2D
!CYr3%788899$&&&r   c                      t        dt        dd      i      } t        j                  |       }|j                  j
                  du sJ y )NrM   z
2012-01-01r(   )periodsF)r   r   r   r   r2   r3   rj   s     r   test_values_is_earx      s=    	CL!<=	>B
**R.C99%'''r   c                  v    t               } t        j                  |       }|j                  j                  du sJ y )NT)r   r   r   r2   r3   rj   s     r   test_empty_dataframerz      s.    	B
**R.C99$&&&r   )numpyr   r6   pandas.compat.numpyr   pandasr   r   r   pandas._testing_testingr9   pandas.tests.copy_view.utilr   markparametrizer?   rQ   rW   rb   rh   rk   rq   rs   ru   rx   rz    r   r   <module>r      sJ     . 
  1 )#-	 	6  		: !-
 	'    ('@ *)#2- 	J  

: !0+	 	A  	(	((
,' '('r   