
    Owg                         d dl mZ d dlmZ d dlZd dlZd dlZd dlm	Z	m
Z
mZmZ d dlmZ  G d d      Z G d d      Zy)	    )deepcopy)methodcallerN)	DataFrame
MultiIndexSeries
date_rangec                       e Zd Zej                  j                  dddg      d        Zej                  j                  dddg      d        Zd Zd Z	d Z
d	 Zd
 Zd Zy)TestDataFramefunc_set_axis_namerename_axisc                 >   t        ddgddgg      } t        |d      |      }|j                  j                  J |j                  j                  dk(  sJ  t        |dd      |      }|j                  j                  J |j                  j                  dk(  sJ y )N            foocolsaxis)r   r   indexnamecolumns)selfr   dfresults       V/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/generic/test_frame.pytest_set_axis_namez TestDataFrame.test_set_axis_name   s    AA'(*dE*2.xx}}$$$||  E)))3dF3B7zz&&&~~""f,,,    c                 B   t        t        j                  d      t        j                  t        d      D cg c]  }d|f c}      t        j                  t        d      D cg c]  }d|f c}            }ddg} t        ||      |      }|j                  j                  |k(  sJ |j                  j                  d d gk(  sJ  t        ||d	
      |      }|j                  j                  ddgk(  sJ |j                  j                  d d gk(  sJ y c c}w c c}w )N)r   r   aBcAxyzC)r   r   L1L2r   r   )
r   npemptyr   from_tupleslistr   r   namesr   )r   r   xr   level_namesr   s         r   test_set_axis_name_miz#TestDataFrame.test_set_axis_name_mi   s   HHV((DK)Hq3()HI**d5k+JS!H+JK
 Tl0dK04||!![000~~##d|3338dKa8<~~##d|333||!!dD\111 *I+Js   D#Dc                    d}t        dgg      }t        dgg      }t        j                  t        |      5  |j	                         sJ 	 d d d        t        j                  t        |      5  |j	                         rJ 	 d d d        t        ddgg      }d}t        j                  t        |      5  t	        |       d d d        t        j                  t        |      5  t        j                  t        |      5  |j	                          d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   zxY w# 1 sw Y   6xY w# 1 sw Y   y xY w)NzPDataFrame.bool is now deprecated and will be removed in future version of pandasTFmatchz+The truth value of a DataFrame is ambiguous)r   tmassert_produces_warningFutureWarningboolpytestraises
ValueError)r   msg_warnr   df1msg_errs        r   test_nonzero_single_elementz)TestDataFrame.test_nonzero_single_element0   s.   * 	 x %	"''XF 	7799	 ''XF 	"xxz!>z	" '(?]]:W5 	H	 ''XF 	z9 		 		 		" 	"
	 	 	 	sG   D#/D/6D;%EEE#D,/D8;EE	EEc                 F   t        g dg dt        j                  j                  d      j	                  d      t        j                  j                  d      j	                  d      d      }|j                  d      j                         }t        j                  ||       y )N)r   barr   r>   r   r>   r   r   )oner?   twothreer@   r@   r?   rA   r      )r"   Br$   Dr"   )	r   r'   randomdefault_rngstandard_normalgroupbysumr2   assert_metadata_equivalentr   r   r   s      r   'test_metadata_propagation_indiv_groupbyz5TestDataFrame.test_metadata_propagation_indiv_groupbyG   sy    MQYY**1-==a@YY**1-==a@	
 C$$&
%%b&1r   c                     t        t        j                  j                  d      j	                  d      t        ddd            }|j                  d      }t        j                  ||       y )	Nr   )  r   20130101rN   s)periodsfreq)r   1min)	r   r'   rE   rF   rG   r   resampler2   rJ   rK   s      r   (test_metadata_propagation_indiv_resamplez6TestDataFrame.test_metadata_propagation_indiv_resampleT   sU    II!!!$44Y?ZC@
 V$
%%b&1r   c                    dd}|j                         5 }|j                  t        ddg       |j                  t        d|       t        t        j                  j                  d      j                  ddd      d	d
g      }t        t        j                  j                  d      j                  ddd      ddg      }dgt        _        d|_        d|_        |j                  |d	gdgd      }|j                  dk(  sJ t        t        j                  j                  d      j                  ddd      t        d            }d|_        t        j                  ||g      }|j                  dk(  sJ 	 d d d        y # 1 sw Y   y xY w)Nc                    | j                   D ]  }|dk(  rN|j                  |j                  }}t        ||d      dz   t        ||d      z   }t        j                  | ||       V|dk(  rYdj                  |j                  D cg c]  }t        ||d       st        ||       c}      }t        j                  | ||       t        j                  | |t        ||d              | S c c}w )Nmerge |concat+)	_metadataleftrightgetattrobject__setattr__joinobjs)	r   othermethodkwargsr   r^   r_   valueos	            r   finalizez?TestDataFrame.test_metadata_propagation_indiv.<locals>.finalizea   s     MW$"'**ekk%D#D$3c9GE4QS<TTE&&tT59x'HH38::XaDRVAWD)XE &&tT59&&tT75$3KLM K Ys   C'
C'
r]   filename__finalize__r   r   r   )r   r   abr   cdz
fname1.csvz
fname2.csvinner)left_onright_onhowzfname1.csv|fname2.csvabr   zfoo+foo)N)contextsetattrr   r'   rE   rF   integersr]   rk   rX   r*   pdr[   )r   monkeypatchrj   mr:   df2r   s          r   test_metadata_propagation_indivz-TestDataFrame.test_metadata_propagation_indiv]   sY   	    " 	0aIIizl;IIi:		%%a(11!Q?#sC 		%%a(11!Q?#sC $.,I'CL'CLYYsSESEwYOF??&==== 		%%a(11!Q?dC !CLYYSz*F??i///3	0 	0 	0s   EE>>Fc                     t        dg di      }d|_        g d|d<   d|_        |j                  dk(  sJ t        j                  |d   t	        g dd             y )Nr,   r   r   r   r   )r   r      y   )r   )r   r   r2   assert_series_equalr   )r   r   s     r   test_set_attributez TestDataFrame.test_set_attribute   sU     Y'(3ttqyy
r#wys(CDr   c                 d    t        g g dg      }t        |      }t        j                  ||       y )Nr"   )datar   r   )r   r   r2   assert_frame_equal)r   empty_frameempty_frame_copys      r   test_deepcopy_emptyz!TestDataFrame.test_deepcopy_empty   s0      RrC5A#K0
.<r   N)__name__
__module____qualname__r6   markparametrizer   r.   r<   rL   rU   r~   r   r    r   r   r
   r
      sx    [[V&6%FG	- H	- [[V&6%FG2 H2".22-0^
E=r   r
   c                   b    e Zd Zej                  j                  dddg ddg      d        Zd Zy)	TestDataFrame2rh   r   Truer   g      @c                    t        g dg dd      }d}t        j                  t        |      5  |j	                         j                  dddd|	       d d d        t        j                  t        |      5  |j	                         j                  d
d|       d d d        t        j                  t        |      5  |j	                         j                  d|       d d d        t        j                  t        |      5  |j	                         j                  dd|       d d d        t        j                  t        |      5  |j	                         j                  |       d d d        t        j                  t        |      5  |j	                         j                  |j                  dkD  |       d d d        t        j                  t        |      5  |j	                         j                  |j                  dkD  |       d d d        y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   SxY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   y xY w)Nr   )r   r   r   )rm   rn   z8For argument "inplace" expected type bool, received typer0   r,   r   r   )mapperr   inplacerm   )r   r   r   )rh   r      )
to_replacerh   r   r   r   )condr   )r   r6   r7   r8   copyr   dropfillnareplaceinterpolate_whererm   mask)r   rh   r   msgs       r   test_validate_bool_argsz&TestDataFrame2.test_validate_bool_args   s   YY78H]]:S1 	VGGI!!s)=Au!U	V ]]:S1 	7GGINN3QN6	7 ]]:S1 	5GGI1e4	5 ]]:S1 	DGGI!UC	D ]]:S1 	1GGI!!%!0	1 ]]:S1 	;GGI"$$(E:	; ]]:S1 	9GGINNq%N8	9 	9%	V 	V	7 	7	5 	5	D 	D	1 	1	; 	;	9 	9sS   &H9#H%?"H2#H?
!I/I /I$H"%H/2H<?I	II!$I-c                 :   t        t        j                  j                  d      j	                  d      ddg      }t        j                  dddddt        j                  g      }|d   j                         }t        j                  |d<   d}t        j                  t        |	      5  |j                  dd
d       d d d        t        j                  t        |	      5  |j                  d
dgd       d d d        t        j                  t        |	      5  |j                  dd       d d d        t        j                  t        |	      5  |j                  dd       d d d        y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   YxY w# 1 sw Y   y xY w)Nr   )r   r   jimjoero   r   r   zunexpected keywordr0   r   T)r   in_placer   )r   )r   r'   rE   rF   rG   rz   Categoricalnanr   r6   r7   	TypeErrorr   reindexr   )r   r   catsr   s        r   test_unexpected_keywordz&TestDataFrame2.test_unexpected_keyword   sO   II!!!$44V<uen
 ^^Q1aBFF34Y^^1"]]9C0 	2GGEDG1	2 ]]9C0 	-JJ1vtJ,	- ]]9C0 	'IIaI&	' ]]9C0 	(IIa$I'	( 	(	2 	2	- 	-	' 	'	( 	(s0   (E- E9FF-E69FFFN)r   r   r   r6   r   r   r   r   r   r   r   r   r      s4    [[Wq&)S&AB9 C92(r   r   )r   r   operatorr   numpyr'   r6   pandasrz   r   r   r   r   pandas._testing_testingr2   r
   r   r   r   r   <module>r      s:     !     M= M=b/( /(r   