o
    _~#g                     @   s2   d dl Z d dlmZ d dlmZ G dd dZdS )    N)	DataFramec                   @   s4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )
TestAssignc                 C   s0  t g dg dd}| }|j|j|j d}| }g d|d< t|| |jdd d}t|| t|| |jg dd}t|| t|| |j|j|j d	}|jd
ddjdd
id}t|| |j|j|j d}| }g d|d< t|| |jdd d}t|| d S )N                  AB)C)r	   g      @r   r   c                 S   s   | j | j S N)r   r   x r   /var/www/static.ux5.de/https/Moving-Object-Detection-with-OpenCV/env/lib/python3.10/site-packages/pandas/tests/frame/methods/test_assign.py<lambda>       z(TestAssign.test_assign.<locals>.<lambda>r   r   r   )axiscolumnsr   )r
      	   r   c                 S   s   | j | j S r   r   r   r   r   r   r   (   r   )	r   copyassignr   r   tmassert_frame_equaldroprename)selfdforiginalresultexpectedr   r   r   test_assign   s*   zTestAssign.test_assignc                 C   sn   t ddgddgddggddgd	}|jg d
|jdd d}t g dg dg dgtdd	}t|| d S )Nr   r	   r   r
   r   r   r   r   r   )r      r   c                 S      | j S r   r   r   r   r   r   r   -       z1TestAssign.test_assign_multiple.<locals>.<lambda>)r   DE)r   r	   r   r   r	   )r   r
   r*   r   r
   )r   r   r   r   r   ABCDEr   r   r   listr    r!   r$   r%   r'   r(   r   r   r   test_assign_multiple+   s   "zTestAssign.test_assign_multiplec                 C   s   t ddgddggddgd}|j|j|j |j|j d}t g d	g d
gtdd}t|| |j|j|j |j|j d}t g dg dgtdd}t|| d S )Nr   r   r   r	   r   r   r   )r-   r   )r   r   r   )r   r	   r   r4   ABDCr   r-   )r   r   r4   r   )r   r	   r4   r   ABCD)r   r   r   r   r1   r    r!   r2   r   r   r   test_assign_order3   s   zTestAssign.test_assign_orderc                 C   s   t g dg dd}d}tjt|d |dd  W d    n1 s&w   Y  d}tjt|d |j|j|j|j d	 W d    d S 1 sLw   Y  d S )
Nr   r   r   z7assign\(\) takes 1 positional argument but 2 were given)matchc                 S   r+   r   r   r   r   r   r   r   F   r,   z,TestAssign.test_assign_bad.<locals>.<lambda>z''DataFrame' object has no attribute 'C'r6   )r   pytestraises	TypeErrorr   AttributeErrorr   r   )r$   r%   msgr   r   r   test_assign_bad@   s   "zTestAssign.test_assign_badc                 C   s   t ddgddgd}|j|jdd d}t g d	g d
gtdd}t|| |jdd dd d}t g d	g d
gtdd}t|| d S )Nr   r   r   r	   r   c                 S      | d | d  S Nr   r   r   r   r   r   r   r   N       z2TestAssign.test_assign_dependent.<locals>.<lambda>r6   )r   r   r   r   )r   r	   r   r	   r7   r   c                 S   r+   r   r   r%   r   r   r   r   R   r,   c                 S   r@   rA   r   rC   r   r   r   r   R   rB   r0   r2   r   r   r   test_assign_dependentK   s   z TestAssign.test_assign_dependentN)__name__
__module____qualname__r)   r3   r8   r?   rD   r   r   r   r   r      s    #r   )r:   pandasr   pandas._testing_testingr    r   r   r   r   r   <module>   s    