
    Owg                     @    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      }t	        j
                  |      5  |dz  }d d d        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 # 1 sw Y   cxY w)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_cow_warningassert_frame_equalr   assert_series_equal)selffloat_framewarn_copy_on_writeabexpecteds         Z/var/www/horilla/myenv/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""#56 	FA	 q!fq!f-Sz#sT
a* 1a&c
=A
q(+	 	s   DD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}!!!    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/   routine1r0   routine2) ODr3   result1result2r4   )r2   wxwyr2   r2   r2   r   )r   r   )r   r"   )r"   r2   r2   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_pop1   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,   rH    r-   r%   r   r      s    ,2
"(r-   r   )
numpyr=   pandasr   r   r   pandas._testing_testingr   r   rL   r-   r%   <module>rQ      s!     
 =( =(r-   