
    .iE                        d dl Z d dlmZ d dlZd dlZd dlZd dlZd dlZd dl	m
Z
 d dlZd dlmZ d dlmZ d dlmZ d dlmc mZ d dlmZ  G d d      Z G d	 d
      Zej6                  j9                  dddg      d        Zej6                  j9                  dg d      d        Zej6                  j9                  d edgd       edgd      df edgd       edgd      df edg       edgd      df edgd       edg      df edgd      dgdfdg edgd      df edgej>                         ej@                  g ej>                        ej>                  f edgej>                         ej@                  g ejB                        df edgejD                         ej@                  g ejD                        ejD                  f edg ejF                  d             ej@                  g  ejF                  d       ejF                  d      f      df edg ejF                  d       ejF                  d      f       ej@                  g  ejF                  d       ejF                  d      f       ejF                  d       ejF                  d      ff ejH                   edg ejJ                  d       ejF                  d      f       ej@                  g  ejJ                  d       ejF                  d      f       ejJ                  d       ejF                  d      fej6                  jM                  d            g      d        Z'ej6                  j9                  de jP                  dfg dfe)dfg      d        Z*d  Z+d! Z,d" Z-ej6                  j9                  d#ej\                  j_                         D  cg c]  }  e0|       s|  c}       d$        Z1 G d% d&      Z2ej6                  j9                  d'd(d)g      d*        Z3ej6                  ji                  e
d+      ej6                  jj                  d,               Z6yc c} w )-    N)partial)WASM)Series)ops)Versionc            	           e Zd Zd Z ee      Z ee      Zd Z G d d      Ze	j                  j                  dedfedfedfedf e       dfdg      d	        Zy
)TestGetCallableNamec                     |S N )selfxs     V/var/www/app/trading-bot/venv/lib/python3.12/site-packages/pandas/tests/test_common.pyfnzTestGetCallableName.fn   s        c                     | S r   r   )r   s    r   <lambda>zTestGetCallableName.<lambda>   s     r   c                       e Zd Zd Zy)TestGetCallableName.SomeCallc                     t         r   )NotImplementedErrorr   s    r   __call__z%TestGetCallableName.SomeCall.__call__   s
     &%r   N)__name__
__module____qualname__r   r   r   r   SomeCallr      s    	&r   r   zfunc, expectedr   z<lambda>)   Nc                 8    t        j                  |      |k(  sJ y r   )comget_callable_name)r   funcexpecteds      r   test_get_callable_namez*TestGetCallableName.test_get_callable_name"   s     $$T*h666r   N)r   r   r   r   r   partial1partial2lambda_r   pytestmarkparametrizer$   r   r   r   r	   r	      s     r{Hx HG& & [[Jttj!Z$	

7
7r   r	   c                   r    e Zd Zd Zd Zd Zd Zd Zej                  j                  dddg      d	        Zy
)TestRandomStatec                     d}t        j                  |      j                         t        j                  j                  |      j                         k(  sJ y )N   )r    random_stateuniformnprandomRandomStater   seeds     r   	test_seedzTestRandomState.test_seed2   sA    %--/2993H3H3N3V3V3XXXXr   c                     d}t         j                  j                  |      }t        j                  |      j                         t         j                  j                  |      j                         k(  sJ y )N
   )r1   r2   r3   r    r/   r0   )r   r5   	state_objs      r   test_objectzTestRandomState.test_object6   s\    II))$/	Y'//1yy$$T*2245	
5r   c                 P    t        j                         t        j                  u sJ y r   )r    r/   r1   r2   r   s    r   test_defaultzTestRandomState.test_default>   s    !RYY...r   c                    t         j                  j                  d       j                  dddd      }t	        j
                  |      j                         t         j                  j                  |      j                         k(  sJ y )Nr   l        ip  uint32)sizedtype)r1   r2   default_rngintegersr    r/   r0   r3   )r   states     r   test_array_likezTestRandomState.test_array_likeA   sf    		%%d+44QCx4XU#++-1F1Fu1M1U1U1WW	
Wr   c                 @   d}t        j                  t        j                  j	                  |            j                         t        j                  j                  t        j                  j	                  |            j                         k(  sJ d}t        j                  t        j                  j                  |            j                         t        j                  j                  t        j                  j                  |            j                         k(  sJ y )N      )r    r/   r1   r2   MT19937r0   r3   PCG64r4   s     r   test_bit_generatorsz#TestRandomState.test_bit_generatorsG   s    RYY..t45==?yy$$RYY%6%6t%<=EEGH	
H RYY__T23;;=yy$$RYY__T%:;CCEF	
Fr   rC   testg      @c                     d}t        j                  t        |      5  t        j                  |       d d d        y # 1 sw Y   y xY w)Nzdrandom_state must be an integer, array-like, a BitGenerator, Generator, a numpy RandomState, or Nonematch)r(   raises
ValueErrorr    r/   )r   rC   msgs      r   
test_errorzTestRandomState.test_errorT   s?    + 	 ]]:S1 	$U#	$ 	$ 	$s	   =AN)r   r   r   r6   r:   r<   rD   rJ   r(   r)   r*   rR   r   r   r   r,   r,   1   sE    Y
/

 [[Wvsm4$ 5$r   r,   zargs, expected)r      NT)r   rT   rF   Fc                 0    t        j                  |  |u sJ y r   )r    any_noneargsr#   s     r   test_any_nonerZ   ^   s    <<(***r   ))rU   T)rS   F))NNNFc                 0    t        j                  |  |u sJ y r   )r    all_not_nonerX   s     r   test_all_not_noner]   c   s    
 T"h...r   zleft, right, expectedr   r   )namerT   ynanz,Not checking for matching NAs inside tuples.)reason)marksc                 \    t         j                  j                  | |      }||u s||k(  sJ y y r   )r   common_maybe_match_name)leftrightr#   ress       r   test_maybe_match_nameri   k   s2    F **
&
&tU
3C(?cXo--o?r   z	into, msgz1to_dict\(\) only accepts initialized defaultdictsz unsupported type: <class 'list'>c                     t        j                  t        |      5  t        j                  |        d d d        y # 1 sw Y   y xY w)NrM   )r(   rO   	TypeErrorr    standardize_mapping)intorQ   s     r   #test_standardize_mapping_type_errorrn      s5    * 
y	, &%& & &s	   ;Ac                      ddi} t        j                  |       t        k(  sJ t        j                  i       t        k(  sJ t        j                  t
              }t        t        j                  |      t              sJ y )Nbaddata)r    rl   dictcollectionsdefaultdictlist
isinstancer   )filldds     r   test_standardize_mappingry      sj    6?D""4(D000 ""2&$...		 	 	&Bc--b17;;;r   c                  l    t         j                  } t        |       dk(  sJ t        d | D              sJ y )N(   c              3   @   K   | ]  }|t         j                  v   y wr   )string	hexdigits).0cs     r   	<genexpr>z#test_git_version.<locals>.<genexpr>   s     :qF$$$:s   )pd__git_version__lenall)git_versions    r   test_git_versionr      s4    $$K{r!!!:k::::r   c                      t        t        j                        } 	 | t        d      kD   y # t        $ r}t	        d      |d }~ww xY w)Nz0.0.1zBNo git tags exist, please sync tags between upstream and your repo)r   r   __version__rk   rP   )versionerrs     r   test_version_tagr      sE    bnn%G''"" P
	s   * 	A?Aobjc                 b    t        j                  | |      }t        |       t        |      k(  sJ y r   )tmround_trip_pickletype)r   	temp_file	unpickleds      r   test_serializabler      s,     $$S)4I9Y'''r   c                   f    e Zd Zd Zd Zd Zej                  j                  dddg      d        Z	y)	TestIsBoolIndexerc                     t        j                  ddt         j                  gt              }t	        j
                  |      rJ y )NABr@   )r1   arrayr`   objectr    is_bool_indexer)r   arrs     r   test_non_bool_array_with_naz-TestIsBoolIndexer.test_non_bool_array_with_na   s4    hhS"&&)8&&s++++r   c                      G d dt               } |dg      }t        j                  |      rJ  |dg      }t        j                  |      sJ y )Nc                       e Zd Zy)4TestIsBoolIndexer.test_list_subclass.<locals>.MyListN)r   r   r   r   r   r   MyListr      s    r   r   aT)ru   r    r   )r   r   vals      r   test_list_subclassz$TestIsBoolIndexer.test_list_subclass   sN    	T 	 cUm&&s+++dVn""3'''r   c                     ddgddgd}t        j                  |      }|j                  j                  dd  }t	        j
                  |      rJ ||   }|g    }t        j                  ||       y )Nr   rT   rF      )col1col2)rq   )r   	DataFrameindexnamesr    r   r   assert_frame_equal)r   rq   dffrozenresultr#   s         r   test_frozenlistz!TestIsBoolIndexer.test_frozenlist   sl    AA/\\t$#&&v...Fb6
fh/r   scalarr   Tc                     t         j                  j                  t        j                  |g            }t        j                  |      t        |t              u sJ y r   )	r   arraysNumpyExtensionArrayr1   r   r    r   rv   bool)r   r   r   s      r   test_numpyextensionarrayz*TestIsBoolIndexer.test_numpyextensionarray   sC     ii++BHHfX,>?""3':fd+CCCCr   N)
r   r   r   r   r   r   r(   r)   r*   r   r   r   r   r   r      s<    ,
(
0 [[X4y1D 2Dr   r   with_exceptionTFc                 p   t        t              }d|_        | rdnd}t        j                  t
        |      5  t        j                  |dd      5  |j                  dk(  sJ | rt        d      	 d d d        t        d      # 1 sw Y   t        d      xY w# 1 sw Y   nxY w|j                  dk(  sJ y )Nr   firstzInside exception raisedzOutside exception raisedrM   r^   second)r   r   r^   r(   rO   rP   r    temp_setattr)r   serrN   s      r   test_temp_setattrr      s     v
CCH)7%=WE	z	/ 5c684 	<88x''' !:;; 	< 344		< 3445 5 88ws#   BB1BB		BB#z Can't start subprocesses in WASMc                     d} t        j                  |       }t         j                  j                  dd      }|ddg}t	        j
                  |      j                         dd j                  d      }t        |      t        |      k(  sJ y )	Nr   \/z-czHa='a';import sys;sys.getsizeof(a);import pandas;print(sys.getsizeof(a));
)	sys	getsizeof
executablereplace
subprocesscheck_outputdecodestripint)r   r#   pyexecallr   s        r   test_str_sizer     s     	A}}QHNN""4-ERD
 $$T*113Br:@@FFv;#h-'''r   )7rs   	functoolsr   r}   r   r   numpyr1   r(   pandas.compatr   pandasr   r   pandas._testing_testingr   pandas.corer   pandas.core.commoncorerd   r    pandas.util.versionr   r	   r,   r)   r*   rZ   r]   r`   IndexNaTNAint64paramfloat64xfailri   rt   ru   rn   ry   r   r   __dict__valuescallabler   r   r   skipif
single_cpur   )r   s   0r   <module>r      sW       
            '7 7:*$ *$Z ),@BT+UV+ W+ K/	/ 	#	s 5s;	#	s 5t<	faSs+T2	#	sT2	#	S)
faSs#S)	"&&	!8288BRVV#<bffE	"&&	!8288BRVV#<dC	"%%	 ("((2BEE":BEEB A3XRXXa[)BHHRxrxx{HBHHQK89	
 A3hbhhqk8288A;78BHHRxrxx{HBHHQK89RXXa[("((1+&	

 	A3jbjj/!=>BHHRzrzz%0("((1+>?RZZ,++##E $ 		
-!D.E!D.
  ##@	
 .	
 .	
(&)(&
<; 0B0B0D VQT VW( X(#D #DL )D%=9 : D!CD(  E( !Ws   Q%
)Q%
