
    i_                     @    d dl Zd dlmZmZmZ d dlmZ  G d d      Z	y)    N)	DataFrame
MultiIndexSeriesc                       e Zd Zd Zd Zd Zy)TestDataFramePopc                    d|j                   _        |j                  d       d|vsJ d|d<   |j                  d       d|vsJ |j                   j                  dk(  sJ t        g dg dgg ddd	g
      }|j                  d      }|dz  }t        ddgddggddgdd	g
      }t	        j
                  ||       t        ddgdd	gd      dz   }t	        j                  ||       y )NbazAbarfoo)         )         )r
   BCXY)columnsindexr   r   r   r   r   r   r   r   )r   name)r   r   popr   tmassert_frame_equalr   assert_series_equal)selffloat_frameabexpecteds        `/app/cer_product_mecsu/.venv/lib/python3.12/site-packages/pandas/tests/frame/methods/test_pop.pytest_popzTestDataFramePop.test_pop   s    #( +%%%"EK'''""''5000 y),ocSVZXEE#J	Q q!fq!f-Sz#sT
a* 1a&c
=A
q(+    c                 R   t        ddgddgddgd      }g d|_        |j                  d      }t        |      t         k(  sJ t	        |      dk(  sJ t	        |j                        dk(  sJ d	|j                  v sJ d|j                  vsJ t	        |j
                        dk(  sJ y )
Nr   r   r   r   )r   r   r   )r    r!   r    r    r   r!   )r   r   r   typelenr   )r   dfress      r#   test_pop_non_unique_colsz)TestDataFramePop.test_pop_non_unique_cols$   s    Aq6q!f!Q89$
ffSkCyI%%%3x1}}2::!###bjj   "**$$$288}!!!r%   c                    g dg dg dg}t        t        |       }t        j                  |      }t	        t
        j                  j                  d      j                  d      |      }|j                         }|j                         }|j                  d      }|j                  d      }t        j                  ||d	
       t        j                  ||       |j                  dk(  sJ |d   }|j                  dgd      }|j                  d      }t        j                  ||       t        j                  ||       y )N)r    topr-   routine1r.   routine2) ODr1   result1result2r2   )r0   wxwyr0   r0   r0   r   )r   r   )r   r    )r    r0   r0   F)check_namesr-   r   )axis)sortedzipr   from_tuplesr   nprandomdefault_rngstandard_normalcopyr   r   r   r   r   drop)	r   arraystuplesr   r)   df1df2resultr"   s	            r#   test_mixed_depth_popz%TestDataFramePop.test_mixed_depth_pop0   s   C=(
 V%&&v.ryy,,Q/??GQVWggiggi77=)
xUC
c3'{{c!!!u:hhwQh'
h/
c3'r%   N)__name__
__module____qualname__r$   r+   rF    r%   r#   r   r      s    ,0
"(r%   r   )
numpyr;   pandasr   r   r   pandas._testing_testingr   r   rJ   r%   r#   <module>rO      s!     
 <( <(r%   