3
Ud                 @   s0   d dl Z d dlmZ d dlj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   s:  t dddgdddgd}|j }|j|j|j d}|j }dd	dg|d
< tj|| |jdd d}tj|| tj|| |jdd	dgd}tj|| tj|| |j|j|j d}|jdddjd
did}tj|| |j|j|j d}|j }dddg|d< tj|| |jdd d}tj|| d S )N                  )AB)Cg      @r   c             S   s   | j | j S )N)r   r
   )x r   Z/var/www/html/virt/lib64/python3.6/site-packages/pandas/tests/frame/methods/test_assign.py<lambda>   s    z(TestAssign.test_assign.<locals>.<lambda>)r   r   )Zaxis)columns)r
      	   r
   c             S   s   | j | j S )N)r
   r   )r   r   r   r   r   (   s    )	r   copyassignr   r
   tmassert_frame_equalZdroprename)selfdforiginalresultexpectedr   r   r   test_assign   s*    zTestAssign.test_assignc             C   s   t ddgddgddggddgd	}|jd
ddg|jdd d}t ddd
ddgdddddgdddddggtdd	}tj|| d S )Nr   r   r   r   r   r	   r
   r   )r   r      r   c             S   s   | j S )N)r   )r   r   r   r   r   -   s    z1TestAssign.test_assign_multiple.<locals>.<lambda>)r   DEZABCDE)r   r   r
   listr   r   )r   r   r   r   r   r   r   test_assign_multiple+   s
    "2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 ddddgddd	dggtd
d}tj|| |j|j|j |j|j d}t ddddgdddd	ggtdd}tj|| d S )Nr   r   r   r   r
   r   )r   )r    r   r   ZABDC)r   r    ABCDr%   r%   r%   )r   r   r
   r   r"   r   r   )r   r   r   r   r   r   r   test_assign_order3   s    $$zTestAssign.test_assign_orderc             C   s   t dddgdddgd}d}tjt|d	 |jd
d  W d Q R X d}tjt|d	 |j|j|j|j d W d Q R X d S )Nr   r   r   r   r   r	   )r
   r   z7assign\(\) takes 1 positional argument but 2 were given)matchc             S   s   | j S )N)r
   )r   r   r   r   r   F   s    z,TestAssign.test_assign_bad.<locals>.<lambda>z''DataFrame' object has no attribute 'C')r   r    )r   pytestZ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 ddddgddddggtd	d
}tj|| |jdd dd d}t ddddgddddggtd	d
}tj|| d S )Nr   r   r   r   )r
   r   c             S   s   | d | d  S )Nr
   r   r   )r   r   r   r   r   N   s    z2TestAssign.test_assign_dependent.<locals>.<lambda>)r   r    r$   )r   c             S   s   | j S )N)r
   )r   r   r   r   r   R   s    c             S   s   | d | d  S )Nr
   r   r   )r   r   r   r   r   R   s    )r   r   r
   r"   r   r   )r   r   r   r   r   r   r   test_assign_dependentK   s    $$z TestAssign.test_assign_dependentN)__name__
__module____qualname__r   r#   r&   r,   r-   r   r   r   r   r      s
   #r   )r(   Zpandasr   Zpandas._testingZ_testingr   r   r   r   r   r   <module>   s   
