
    bMh              	           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 Z
d Zej                            d ej        ddgd	
          ej                            dd	dg          g          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                    t          g g g d                              g d          }|                    g dd          }t          ||           }t	          | |          }| dk    rt
          nd }d}t          j        ||          5   || j        }d d d            n# 1 swxY w Y   |j        }t          j	        ||           d S )NabcF)
group_keysfillna%DataFrameGroupBy.fillna is deprecatedmatch)
r   	set_indexgroupbygetattrr   FutureWarningtmassert_produces_warningindexassert_index_equal)	groupby_funcdfgbmethodargswarnwarn_msgresultexpecteds	            e/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/groupby/test_all_methods.py,test_multiindex_group_all_columns_when_emptyr!      s   	"2..	/	/	9	9///	J	JB	OOO	6	6BR&&F"<44D(H44==$D6H		#D	9	9	9 % %$% % % % % % % % % % % % % % %xH&(+++++s   	B  B$'B$c                 B   |dk    r5d}|                      t          j                            |                     t	          g dg dg dgt          d                    }t          ||          }|                    d	|
          }|dk    rt          nd }d}t          j
        ||          5   t          ||          | }	d d d            n# 1 swxY w Y   |                    g dd          }
t          ||
          }|
                    d	|
          }|dk    rt          nd }d}t          j
        ||          5   t          ||          | }d d d            n# 1 swxY w Y   |dvr|                    ddi          }t          j        |	|           d S )Ncorrwithz:GH#50845 - corrwith fails when there are duplicate columns)reason)         )r%         )         abbcolumnsr   )as_indexr   r   r   r   r%   )axis)sizengroupcumcountr	   r   )applymarkerpytestmarkxfailr   listr   r   r   r   r   r   set_axisrenameassert_equal)requestr   r0   msgr   r   r   r   r   r   expected_dfexpected_argsexpected_gbr   s                 r    test_duplicate_columnsrB   %   sH   z!!JFK--S-99:::	IIIyyy)))4d5kk	J	J	JB"<44D	C(	+	+B(H44==$D6H		#D	9	9	9 2 2*\**D12 2 2 2 2 2 2 2 2 2 2 2 2 2 2 ++oooA+66K+L+FFM%%cH%==K(H44==$D6H		#D	9	9	9 F F57;55}EF F F F F F F F F F F F F F F999??C:?66OFH%%%%%s$   1CCCE##E'*E'idxr   foo)name)r   r   rF   bar)namesc                    | dv rt          j        d|             t          ddgg|          }|                    dg          }t	          | |          }| dk    rt
          nd }d}t          j        ||          5   t          ||           | }d d d            n# 1 swxY w Y   |j	        d	k    sJ t          j
        |j        |           d S )
N>   r2   r3   r4   zNot applicable for r%   r.   r   r   r   r   )r%   r*   )r6   skipr   r   r   r   r   r   r   shaper   r/   )r   rC   r   grp_byr   r   r   r   s           r    test_dup_labels_output_shaperM   >   s*    5558,88999	QF8S	)	)	)BZZ__F"<44D(H44==$D6H		#D	9	9	9 6 6...56 6 6 6 6 6 6 6 6 6 6 6 6 6 6 <6!!!!&.#.....s   =BB!$B!)__doc__r6   pandaspdr   pandas._testing_testingr   pandas.tests.groupbyr   r!   rB   r7   parametrizeIndex
MultiIndexfrom_tuplesrM        r    <module>rZ      s                      8 8 8 8 8 8, , ,& & &2 	#s%(((
!!":5%.!QQ / / / / /rY   