o
    i/                  
   @   s   d dl m Z  d dlZd dlZd dlmZmZmZ d dlm	Z
 d dlmZ d dlmZ ejde
ded die
jed ddd	gejd
dd Zdd Zejdee
jgdd ZdS )    )datetimeN)	DataFrameIndexSeries)"maybe_normalize_deprecated_kernels)get_groupby_method_argsobjA
   namez)ignore:tshift is deprecated:FutureWarningc                 C   s$  t | tr|dv rtd|  t|}|dv rtnd }| tdd}t |	dt
| s2J t|| }tj|dd t||| }|j|g|R  }W d    n1 sYw   Y  h d}t | trt||v rtt |tjssJ n	t |t
| s}J t |trt|| d S t|| d S )	N>   corrwithzNot applicable for Series and )madtshiftr   r
   zis deprecatedmatch>   sizengroupcumcount)
isinstancer   pytestskipr   FutureWarninggroupbynparange	get_grouptyper   tmassert_produces_warninggetattraggr   SubclassedSeriesassert_frame_equalassert_series_equal)r   groupby_funcwarngroupedargsresult1result2slices r,   e/var/www/edux/Edux_v2/venv/lib/python3.10/site-packages/pandas/tests/groupby/test_groupby_subclass.pytest_groupby_preserves_subclass   s$   

r.   c                  C   s   t g dg dg dd} d| jv sJ d| _| dD ]\}}|jdks)J qdd	 }| d|}t jdgd
 tg dddd}t || dd }t g d}d|_|| d |}t || || d 	|}t || d S )N)         )r/   r/   r0   )      	   )abctestattrhellor7   c                 S   $   t | tjsJ t| dsJ | jS Nr8   )r   r   SubclassedDataFramehasattrr8   groupr,   r,   r-   funcC      z-test_groupby_preserves_metadata.<locals>.funcr1   r   )indexc                 S   r:   r;   )r   r   r"   r=   r8   r>   r,   r,   r-   func2L   rA   z.test_groupby_preserves_metadata.<locals>.func2)
r   r<   	_metadatar8   r   applyr"   r   r$   r!   )	custom_df_group_dfr@   resultexpectedrC   custom_seriesr,   r,   r-   test_groupby_preserves_metadata:   s     rL   c                 C   s   | d  g dtdddddtdddddtdd	dd
dtdd	dd	dtdddddtdddddgd}|d}d}tjt|d |dd }W d    n1 sYw   Y  t	|| seJ d S )NzCarl Carl Carl Carl Joe Carl)   r1      r/   r4   r1   i  r4   r/      r   rN   r
      r1      r0      )BuyerQuantityDaterU   z!The default value of numeric_onlyr   rS   5D)
splitr   	set_indexr   r   r   r   resamplesumr   )r   dfmsgrI   r,   r,   r-   (test_groupby_resample_preserves_subclassY   s$   
r]   )r   numpyr   r   pandasr   r   r   pandas._testing_testingr   pandas.core.groupby.baser   pandas.tests.groupbyr   markparametrizer<   r   r"   filterwarningsr.   rL   r]   r,   r,   r,   r-   <module>   s$    
"