
    Owg*                     |   d dl mZ d dlZ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 ej                  j!                  dddg      d        Zd	 Zd
 Zd Zej                  j!                  dddg      d        Zej                  j!                  dg d      ej                  j!                  ddddiidddgiig      d               Zej                  j!                  ddddgiddgddgdg      d        Zd Zej                  j!                  dddg      d         Zej                  j!                  dg d      ej                  j!                  dddiddgig      d!               Zd" Zej                  j!                  d#d$d%dd&d'gffd(g      d)        Zd* Zd+ Zej                  j!                  d, ej>                   e	d&d'gd'd&gg      d-e gg            d.        Z!ej                  j!                  d/ e ej>                   e
d0jE                               de fd1e fd2e fd3e fd4e fd-e fg                  d5        Z#d6 Z$d7 Z%ej                  j!                  dd8 d9 d: g      d;        Z&d< Z'ej                  jQ                  d=      ej                  j!                  d>d?dgd@fejR                  dddAfg      dB               Z*ej                  j!                  dddgdd?gg      dC        Z+ej                  j!                  dddgd?dgg      dD        Z,ej                  j!                  dEdF dG dH dI g      dJ        Z-y)K    )chainN)SpecificationError)	DataFrameSeries
date_rangeresult_typefoo   c                 (   t        t        j                  t        j                  dd      d      j	                  dd      dz   g d      }d	}t        j                  t        |
      5  |j                  d d|        d d d        y # 1 sw Y   y xY w)N   int64dtype   r
   ABCcolumnszUinvalid value for result_type, must be one of {None, 'reduce', 'broadcast', 'expand'}matchc                 
    g dS )Nr
      r    xs    Z/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/apply/test_invalid_arg.py<lambda>z(test_result_type_error.<locals>.<lambda>&   s    9     axisr   	r   nptilearangereshapepytestraises
ValueErrorapply)r   dfmsgs      r    test_result_type_errorr0      s     

		!7+Q/772>B
B	2  
z	- G
$1+FG G Gs   )BBc                      t        g dg dg dgg d      } d}t        j                  t        |      5  | j	                  d d	       d d d        y # 1 sw Y   y xY w)
Nr   )      r   )      	   )ar7   c)indexz)No axis named 2 for object type DataFramer   c                     | S Nr   r   s    r    r!   z/test_apply_invalid_axis_value.<locals>.<lambda>-   s    1 r"   r   r   r*   r+   r,   r-   r.   r/   s     r    test_apply_invalid_axis_valuer>   )   sK    	Iy)4O	LB
5C	z	- !
a ! ! !s   AAc                      t        ddgddgd      } d}t        j                  t        |      5  | j	                          d d d        y # 1 sw Y   y xY w)Nr   r
   r   r   r   zMust provider   )r   r*   r+   	TypeErroraggr=   s     r    test_agg_raisesrC   0   sJ    	!Qq!f-	.B
C	y	, 
  s   A

Ac                      t        g d      } d}t        j                  t        |      5  | j	                  d d       d d d        y # 1 sw Y   y xY w)Nr   z)na_action must either be 'ignore' or Noner   c                     | S r;   r   r   s    r    r!   z8test_map_with_invalid_na_action_raises.<locals>.<lambda>>   s     r"   ____	na_actionr   r*   r+   r,   map)sr/   s     r    &test_map_with_invalid_na_action_raisesrL   9   sD    yA
5C	z	- -	kV,- - -s   A		Ainput_na_actionrF   Tc                     t        g d      }d|  d}t        j                  t        |      5  |j	                  ddi|        d d d        y # 1 sw Y   y xY w)Nr   z+na_action must either be 'ignore' or None, z was passedr   r
   r   rG   rI   )rM   rK   r/   s      r    2test_map_arg_is_dict_with_invalid_na_action_raisesrO   A   sT     	yA77H
TC	z	- 1	q!f01 1 1s   AAmethod)r-   rB   	transformfuncr   r   sumc                      | ddgi      }d}t        j                  t        |      5   t        ||      |       d d d        y # 1 sw Y   y xY w)Nr   r
   nested renamer is not supportedr   )r*   r+   r   getattr)frame_or_seriesrP   rR   objr   s        r    test_nested_renamerrY   J   sN     3*
%C-E	)	7 #VT"# # #s   AArenamerminmaxmean)r	   barc                     t        t        d      dd      }d}t        j                  t        |      5  |j                  |        d d d        y # 1 sw Y   y xY w)Nr   r   series)r   namerU   r   )r   ranger*   r+   r   rB   )rZ   rK   r/   s      r    test_series_nested_renamerrc   T   sJ    
 	uQxwX6A
+C	)	5 	g  s   AAc                  4   t        t        j                  j                  d      j	                  d      g dt        dd            } d}t        j                  t        |	      5  | j                  j                  d
ddgi       d d d        y # 1 sw Y   y xY w)Nr   )
   r   r   z1/1/2000re   )periods)r   r9   rU   r   r	   rS   r]   )r   r&   randomdefault_rngstandard_normalr   r*   r+   r   r   rB   )tsdfr/   s     r    test_apply_dict_deprrk   _   sz    
		a 009R0D
 ,C	)	5 -

EE6?+,- - -s   % BBrB   rQ   c                     t        t        d      dd      }d}t        j                  t        |      5   t        ||       ddiddid       d d d        y # 1 sw Y   y xY w)	Nr3   r@   rU   r   r	   r[   r^   r\   )r   rb   r*   r+   r   rV   )rP   r.   r/   s      r    test_dict_nested_renaming_deprrm   j   sb    	q*	+B -C	)	5 HF5%.u~FGH H Hs   AA!c                     t        ddgi      }t        j                  d      }t        j                  t
        |      5   t        ||       |       d d d        y # 1 sw Y   y xY w)Nr   r
   zColumn(s) ['B'] do not existr   )r   reescaper*   r+   KeyErrorrV   )rP   rR   rX   r   s       r    test_missing_columnrr   t   sW     S1#J
CII45E	xu	- #VT"# # #s   AA$c                      t        ddgi      } d}t        j                  t        |      5  | j	                  t
        t        t
        d       d d d        y # 1 sw Y   y xY w)Nr7   1z#Column\(s\) \[1, 'b'\] do not existr   )r7   r
   b)r   r*   r+   rq   rQ   intstrr=   s     r    'test_transform_mixed_column_name_dtypesrx   ~   sM    	C#<	 B
0C	xs	+ 3
33S123 3 3s   "AA z	how, args)
pct_changer   	nsmallestr7   ru   )tailr
   c                     t        ddgddgd      }d|  d}t        j                  t        |      5  |j	                  | d|	       d d d        y # 1 sw Y   y xY w)
Nr
   r   r   r2   )r7   ru   z
Operation z does not support axis=1r   )r$   argsr<   )howr}   r.   r/   s       r    test_apply_str_axis_1_raisesr      s_    
 
!Qq!f-	.Bse3
4C	z	- )
14() ) )s   AAc                      d} t        j                  t        |       5  t        dg      j	                  dd       d d d        y # 1 sw Y   y xY w)Nz&No axis named 1 for object type Seriesr   r
   rS   r$   )r*   r+   r,   r   rQ   )r/   s    r    test_transform_axis_1_raisesr      sC    
2C	z	- -se!,- - -s   AAc            
         t        g dg dg dt        j                  j                  d      j	                  d      t        j                  j                  d      j	                  d      t        j                  j                  d      j	                  d      d      } t        j
                  | j                  d<   d }d	}t        j                  t        |
      5  | j                  |d       d d d        y # 1 sw Y   y xY w)N)r	   r	   r	   r	   r^   r^   r^   r^   r	   r	   r	   )oner   r   twor   r   r   r   r   r   r   )dullr   shinyr   r   r   r   r   r   r   r   r      )r   r   r   DEF)r2   r   c                 H    | d   j                  d      r| d   dk(  rd| d<   | S )Nr   shinr   r	   r4   r   )
startswith)rows    r    rQ   z.test_apply_modify_traceback.<locals>.transform   s-    s8v&3s8u+<CH
r"   z,'float' object has no attribute 'startswith'r   r
   r   )r   r&   rg   rh   ri   nanlocr*   r+   AttributeErrorr-   )datarQ   r/   s      r    test_apply_modify_tracebackr      s     &&q)99"=&&q)99"=&&q)99"=U+	
-D^ vvDHHV
 9C	~S	1 &

91
%& & &s   C77D zdf, func, expectedcumprodc                 J   |rdd l }||j                  j                  f}d}t        |t              rd nt
        }t        j                  ||      5  t        j                  |d      5  | j                  ||       d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)Nr   z>can't multiply sequence by non-int of type 'str'|has no kernelr   zusing DataFrame.cumprodr   )pyarrowlibArrowNotImplementedError
isinstancerw   FutureWarningr*   r+   tmassert_produces_warningrB   )r.   rR   expectedr$   using_infer_stringpar/   warns           r    "test_agg_cython_table_raises_framer      s     bff==>
JCdC(4mD	xs	+ $''4MN 	$FF4dF#	$$ $	$ 	$$ $s$   B(B<BB	BB"zseries, func, expectedza b cprodstdvarmedianc                    d}|dk(  s$|t         j                  u s|t         j                  u rd}|rdd l}||j                  j
                  f}|dz   }t        |t              rd nt        }t        j                  ||      5  t        j                  |d      5  | j                  |       d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)Nz?[Cc]ould not convert|can't multiply sequence by non-int of typer   z)Cannot convert \['a' 'b' 'c'\] to numericr   z|does not support|has no kernelr   zis currently using Series.*)r&   	nanmedianr   r   r   r   r   rw   r   r*   r+   r   r   rB   )r`   rR   r   r   r/   r   r   s          r    #test_agg_cython_table_raises_seriesr      s    $ MCx42<</42993D:bff==>
1
1CdC(4mD	xs	+ ''4QR 	JJt	 	 	 s$    CB;*C;C	 CCc                      t        dd gi      } t        j                  d      }t        j                  t
        |      5  | j                  dd i       d d d        y # 1 sw Y   y xY w)Nr7   zint() argument must be a stringr   c                 2    t        | j                  d         S Nr   rv   ilocr   s    r    r!   z'test_agg_none_to_type.<locals>.<lambda>  s    s166!9~ r"   )r   ro   rp   r*   r+   rA   rB   r=   s     r    test_agg_none_to_typer     sV    	C$=	!B
))5
6C	y	, 0
-./0 0 0s   AA&c                      t        dd gi      } d}t        j                  t        |      5  | j	                  dd i       d d d        y # 1 sw Y   y xY w)Nr7   zargument must be ar   c                 2    t        | j                  d         S r   r   r   s    r    r!   z-test_transform_none_to_type.<locals>.<lambda>  s    S^ r"   )r   r*   r+   rA   rQ   r=   s     r    test_transform_none_to_typer     sL    	C$=	!B
C	y	, 6
c3456 6 6s   A

Ac                 P    t        j                  ddg      j                  dd      S )Nr
   r   r   )r&   arrayr)   r   s    r    r!   r!     s     "((Aq6"**2q1 r"   c                 
    ddgS Nr
   r   r   r   s    r    r!   r!      s
    1a& r"   c                     t        ddg      S r   )r   r   s    r    r!   r!   !  s    &!Q. r"   c                 &   t        t        j                  t        j                  dd      d      j	                  dd      dz   g d      }d	}t        j                  t        |
      5  |j                  | dd       d d d        y # 1 sw Y   y xY w)Nr   r   r   r   r   r
   r   r   z2too many dims to broadcast|cannot broadcast resultr   	broadcastr#   r%   )rR   r.   r/   s      r    test_apply_broadcast_errorr     sx     

		!7+Q/772>B
B ?C	z	- 8
A;78 8 8s   )BBc                     d}t        j                  t        |      5  t        j                  d      5  |j                  ddg|        d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)Nz3cannot combine transform and aggregation operationsr   ignoreallr\   sqrtr   r*   r+   r,   r&   errstaterB   )r$   float_framer/   s      r    test_transform_and_agg_err_aggr   0  sd    
?C	z	- 8[[X& 	8OOUFO$O7	88 8	8 	88 8s"   A(AA(A%	!A((A1zignore::FutureWarningz	func, msgr   z(cannot combine transform and aggregationz2cannot perform both aggregation and transformationc                     t        j                  t        |      5  t        j                  d      5  | j                  |       d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)Nr   r   r   r   string_seriesrR   r/   s      r    !test_transform_and_agg_err_seriesr   8  s[     
z	- $[[X& 	$d#	$$ $	$ 	$$ $s"   A"AA"A	A""A+c                     d}t        j                  t        |      5  |j                  ||        d d d        y # 1 sw Y   y xY w)NFunction did not transformr   r   r*   r+   r,   rQ   )r$   r   rR   r/   s       r    test_transform_wont_agg_framer   J  s?     'C	z	- /d./ / /s	   ;Ac                     d}t        j                  t        |      5  | j                  |       d d d        y # 1 sw Y   y xY w)Nr   r   r   r   s      r    test_transform_wont_agg_seriesr   S  s:     'C	z	- &%& & &s	   9A
op_wrapperc                     | S r;   r   r   s    r    r!   r!   ^  s    Q r"   c                     | gS r;   r   r   s    r    r!   r!   ^  s    1# r"   c                 
    d| iS Nr   r   r   s    r    r!   r!   ^  s
    #q r"   c                     d| giS r   r   r   s    r    r!   r!   ^  s    cTUSVZ r"   c                      ||       }t        dg di      }t        j                  ||      }d}t        j                  t
        |      5  |j                  |       d d d        y # 1 sw Y   y xY w)Nr   r   r   r   )r   r   get_objr*   r+   r,   rQ   )all_reductionsrW   r   oprX   r/   s         r    test_transform_reducer_raisesr   ]  sa    
 
N	#B
S)$
%C
**S/
*C
&C	z	- b  s   A&&A/).	itertoolsr   ro   numpyr&   r*   pandas.errorsr   pandasr   r   r   pandas._testing_testingr   markparametrizer0   r>   rC   rL   rO   rY   rc   rk   rm   rr   rx   r   r   r   get_cython_table_paramsrA   r   splitr   r   r   r   r   filterwarningsr   r   r   r   r   r   r"   r    <module>r      s    	   , 
  
3G 4G!- *VTN;1 <1 #@A3e"5cE7^7L!MN# O B# eU^ueneV_MN	- E;#78H 9H #@A3,ug!?@# A B#3 ${Qc
O&DkR))-9&x BC:Sz*+y).D-E$$ 	"""7==?###	"	"9%I&
	
 ! (06 
1 	8	88 34
%DEGGE*@	
	$	 5$ 5%.5&/!BC/ D/ 5%.65/!BC& D& ;/ACWX		r"   