a
    é´«j  ã                   @   s„   d 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„ Z
dd„ Zej d	ejd
d
gdd�ejjdddgd�g¡dd„ ƒZdS )a;  
Tests that apply to all groupby operation methods.

The only tests that should appear here are those that use the `groupby_func` fixture.
Even if it does use that fixture, prefer a more specific test file if it available
such as:

 - test_categorical
 - test_groupby_dropna
 - test_groupby_subclass
 - test_raises
é    N)Ú	DataFrame)Úget_groupby_method_argsc           	      C   s¢   t g g g dœƒ g d¢¡}|jg d¢dd�}t|| ƒ}t| |ƒ}| dkrLtnd }d}tj||d�� ||Ž j}W d   ƒ n1 s‚0    Y  |j}t 	||¡ d S )N©ÚaÚbÚcF)Z
group_keysÚfillnaú%DataFrameGroupBy.fillna is deprecated©Úmatch)
r   Z	set_indexÚgroupbyÚgetattrr   ÚFutureWarningÚtmÚassert_produces_warningÚindexÚassert_index_equal)	Úgroupby_funcÚdfÚgbÚmethodÚargsÚwarnÚwarn_msgÚresultÚexpected© r   úd/var/www/html/laksyashrimp/venv/lib/python3.9/site-packages/pandas/tests/groupby/test_all_methods.pyÚ,test_multiindex_group_all_columns_when_empty   s    

(r   c                 C   sP  |dkr d}|   tjj|d�¡ tg d¢g d¢g d¢gtdƒd�}t||ƒ}|jd	|d
�}|dkrftnd }d}t	j
||d�� t||ƒ|Ž }	W d   ƒ n1 s 0    Y  |jg d¢dd�}
t||
ƒ}|
jd	|d
�}|dkràtnd }d}t	j
||d�� t||ƒ|Ž }W d   ƒ n1 �s0    Y  |dv�r@|jddid�}t	 |	|¡ d S )NZcorrwithz:GH#50845 - corrwith fails when there are duplicate columns)Úreason)é   é   é   )r    é   é   )é   é   é   Zabb©Úcolumnsr   )Úas_indexr   r	   r
   r   r    )Zaxis)ÚsizeÚngroupÚcumcountr   r   )ZapplymarkerÚpytestÚmarkZxfailr   Úlistr   r   r   r   r   r   Zset_axisÚrenameZassert_equal)Úrequestr   r*   Úmsgr   r   r   r   r   r   Zexpected_dfZexpected_argsZexpected_gbr   r   r   r   Útest_duplicate_columns%   s(    "
,
.
r4   Úidxr   Zfoo)Úname)©r   r   r7   Úbar)Únamesc                 C   s°   | dv rt  d| › �¡ tddgg|d�}| dg¡}t| |ƒ}| dkrLtnd }d}tj||d�� t|| ƒ|Ž }W d   ƒ n1 s†0    Y  |j	d	ksžJ ‚t 
|j|¡ d S )
N>   r,   r+   r-   zNot applicable for r    r(   r   r   r	   r
   )r    r%   )r.   Úskipr   r   r   r   r   r   r   Úshaper   r)   )r   r5   r   Zgrp_byr   r   r   r   r   r   r   Útest_dup_labels_output_shape>   s    
,r<   )Ú__doc__r.   ZpandasÚpdr   Zpandas._testingZ_testingr   Zpandas.tests.groupbyr   r   r4   r/   ZparametrizeÚIndexZ
MultiIndexÚfrom_tuplesr<   r   r   r   r   Ú<module>   s   þþ