
    Owg                        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	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 d Zd Zd Zd	 Ze	j8                  j;                  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j@                        df edgejB                         ej>                  g ejB                        ejB                  f edg ejD                  d             ej>                  g  ejD                  d       ejD                  d      f      df edg ejD                  d       ejD                  d      f       ej>                  g  ejD                  d       ejD                  d      f       ejD                  d       ejD                  d      ff e	jF                   edg ejH                  d       ejD                  d      f       ej>                  g  ejH                  d       ejD                  d      f       ejH                  d       ejD                  d      fe	j8                  jK                  d            g      d        Z&d Z'd Z(d Z)e	j8                  j;                  dejT                  jW                         D  cg c]  }  e,|       s| f c}       d        Z- G d d      Z.e	j8                  j;                  dddg      d        Z/e	j8                  j`                  d         Z1e	j8                  j`                  d!        Z2yc c} w )"    N)partial)Series)ops)Versionc                  
   t         j                  } d }d }t        |      }t        |      } G d d      } | |      dk(  sJ  | |      sJ  | |      dk(  sJ  | |      dk(  sJ  |  |             dk(  sJ  | d      J y )Nc                     | S N xs    O/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/test_common.pyfnz"test_get_callable_name.<locals>.fn   s        c                     | S r	   r
   r   s    r   <lambda>z(test_get_callable_name.<locals>.<lambda>   s     r   c                       e Zd Zd Zy)(test_get_callable_name.<locals>.somecallc                     t         r	   )NotImplementedError)selfs    r   __call__z1test_get_callable_name.<locals>.somecall.__call__   s
     &%r   N)__name__
__module____qualname__r   r
   r   r   somecallr      s    	&r   r   r      )comget_callable_namer   )getnamer   lambda_part1part2r   s         r   test_get_callable_namer#      s    ##G GBKEENE& & 2;$75>T!!!5>T!!!8:*,,,1:r   c                  l    t        j                  dddd       sJ t        j                  dddd      rJ y Nr            )r   any_noner
   r   r   test_any_noner*   +   s5    <<1a&&&||Aq!Q''''r   c                      t        j                  dddd      sJ t        j                  dddd       rJ t        j                  d d d d       rJ y r%   )r   all_not_noner
   r   r   test_all_not_noner-   0   sS    Aq!Q'''1a...dD$7777r   c                  4   t        j                  d      } | j                         t        j                  j                  d      j                         k(  sJ t        j                  j                  d      }t        j                  |      j                         t        j                  j                  d      j                         k(  sJ t        j                         t        j                  u sJ t        j                  j                  d       j                  dddd      }t        j                  |      j                         t        j                  j                  |      j                         k(  sJ t        j                  t        j                  j                  d            j                         t        j                  j                  t        j                  j                  d            j                         k(  sJ t        j                  t        j                  j                  d	            j                         t        j                  j                  t        j                  j                  d	            j                         k(  sJ d
}t        j                  t        |      5  t        j                  d       d d d        t        j                  t        |      5  t        j                  d       d d d        y # 1 sw Y   CxY w# 1 sw Y   y xY w)N   
   r   l        ip  uint32)sizedtyper'      zdrandom_state must be an integer, array-like, a BitGenerator, Generator, a numpy RandomState, or Nonematchtestg      @)r   random_stateuniformnprandomRandomStatedefault_rngintegersMT19937PCG64pytestraises
ValueError)statestate2state_arr_likemsgs       r   test_random_staterH   6   sT   QE==?bii33A6>>@@@@ YY""2&FF#++-1F1Fr1J1R1R1TTTT *** YY**4099	5s( : N 	(00299  088:	;	; 	**1-.66899  !2!21!56>>@	A	A 	,-55799  !45==?	@	@	'  
z	- ! ! 
z	-  ! ! s   *L#LLLzleft, right, expectedr   r   )namer&   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rightexpectedress       r   test_maybe_match_namerU   c   s2    F **
&
&tU
3C(?cXo--o?r   c                     d} t        j                  t        |       5  t        j                  t
        j                         d d d        d} t        j                  t        |       5  t        j                  g        d d d        t        j                  t        |       5  t        j                  t               d d d        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 # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w)Nz1to_dict\(\) only accepts initialized defaultdictsr5   z unsupported type: <class 'list'>baddata)rA   rB   	TypeErrorr   standardize_mappingcollectionsdefaultdictlistdict
isinstancer   )rG   filldds      r   test_standardize_mappingrb      s   
>C	y	, 9 7 789 -C	y	, $#$ 
y	, &%& 6?D""4(D000 ""2&$...		 	 	&Bc--b17;;;'9 9
$ $& &s#   $E'E EEEE#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_versionrp      s4    $$K{r!!!:k::::r   c                      t        t        j                        } 	 | t        d      kD   y # t        $ r t	        d      w xY w)Nz0.0.1zBNo git tags exist, please sync tags between upstream and your repo)r   rk   __version__rY   rC   )versions    r   test_version_tagrt      sA    bnn%G
''"" 
P
 	

s   * ?objc                 `    t        j                  |       }t        |       t        |      k(  sJ y r	   )tmround_trip_pickletype)ru   	unpickleds     r   test_serializabler{      s*    
 $$S)I9Y'''r   c                       e Zd Zd Zd Zd Zy)TestIsBoolIndexerc                     t        j                  ddt         j                  gt              }t	        j
                  |      rJ y )NABr3   )r:   arrayrK   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)r]   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   r&   r'   r(   )col1col2)rX   )rk   	DataFrameindexnamesr   r   rw   assert_frame_equal)r   rX   dffrozenresultrS   s         r   test_frozenlistz!TestIsBoolIndexer.test_frozenlist   sl    AA/\\t$#&&v...Fb6
fh/r   N)r   r   r   r   r   r   r
   r   r   r}   r}      s    ,
(
0r   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 raisedr5   rI   second)r   r   rI   rA   rB   rC   r   temp_setattr)r   serr6   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#c                     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   \/-czHa='a';import sys;sys.getsizeof(a);import pandas;print(sys.getsizeof(a));
)	sys	getsizeof
executablereplace
subprocesscheck_outputdecodestripint)r   rS   pyexecallr   s        r   test_str_sizer      s     	A}}QHNN""4-ERD
 $$T*113Br:@@FFv;#h-'''r   c                      d} t        j                  |       } t        j                  d| g}t	        j
                  |       y )Na  
        import sys
        sys.modules['bz2'] = None
        import pytest
        import pandas as pd
        from pandas.compat import get_bz2_file
        msg = 'bz2 module not available.'
        with pytest.raises(RuntimeError, match=msg):
            get_bz2_file()
    r   )textwrapdedentr   r   r   r   )coder   s     r   test_bz2_missing_importr      s7    	D ??4 DNND$'DD!r   )3r[   	functoolsr   rf   r   r   r   numpyr:   rA   pandasrk   r   pandas._testing_testingrw   pandas.corer   pandas.core.commoncorerO   r   pandas.util.versionr   r#   r*   r-   rH   markparametrizerK   IndexNaTNAint64paramfloat64xfailrU   rb   rp   rt   __dict__valuescallabler{   r}   r   
single_cpur   r   )ru   s   0r   <module>r      s       
            '0(
8*Z 	#	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.
<2;
 	bkk002DshsmSFD((0 0@ )D%=9 : ( ( " "Q Es   O
"O
