o
    5c                  	   @   s  d dl m Z mZ d dlZd dlmZ d dlmZ dd Zdd Z	dd	 Z
d
d Zejde egdd Zejdddgdd Zejdddgejddddgfgdd Zejdddgejddddgddggfd g d!g d"gfgd#d$ Zd%d& ZdS )'    )copydeepcopyN)
MultiIndexc                 C   st   t | j|j t | j|j t | j|j | j|jus J | j|jks(J | j|jus0J | j|jks8J d S N)tmassert_copylevelsassert_almost_equalcodesnames	sortorder)r   original r   Z/var/www/html/gps/gps/lib/python3.10/site-packages/pandas/tests/indexes/multi/test_copy.pyassert_multiindex_copied   s   r   c                 C      |   }t||  d S r   )r   r   idxi_copyr   r   r   	test_copy      r   c                 C   r   r   )_viewr   r   r   r   r   test_shallow_copy#   r   r   c                 C   r   r   )viewr   )r   i_viewr   r   r   	test_view)   s   r   funcc                 C   sP   t ddgddggg dg dgddgd	}| |}||usJ ||s&J d S )
Nfoobarfizzbuzzr   r   r      r   r   r"   r"   firstsecondr   r
   r   )r   equals)r   r   idx_copyr   r   r   test_copy_and_deepcopy.   s   r)   deepTFc                 C   sH   t ddgddggg dg dgddgd	}|j| d
}||s"J d S )Nr   r   r   r    r!   r#   r$   r%   r&   r*   )r   r   r'   )r*   r   r(   r   r   r   test_copy_method;   s   r,   zkwarg, valuer   thirdfourthc                 C   sX   t ddgddggg dg dgddgd	}|jdi ||d
| i}t|||ks*J d S )Nr   r   r   r    r!   r#   r$   r%   r&   r*   r   )r   r   getattr)r*   kwargvaluer   r(   r   r   r   test_copy_method_kwargsF   s   	r2   zparam_name, param_valuer   foo2bar2fizz2buzz2r
   )r"   r   r   r   )r"   r"   r   r   c                 C   s   t ddgddggg dg dgddgd	}tt |jdd
| i||i}W d    n1 s1w   Y  dd t||D |ksDJ d S )Nr   r   r   r    r!   r#   r$   r%   r&   r*   c                 S   s   g | ]}t |qS r   )list).0ir   r   r   
<listcomp>j   s    z3test_copy_deprecated_parameters.<locals>.<listcomp>r   )r   r   assert_produces_warningFutureWarningr   r/   )r*   
param_nameparam_valuer   r(   r   r   r   test_copy_deprecated_parametersX   s   
 r?   c                  C   sJ   t ddgddggg dg dgddgd	} | jd
d}|j| ju s#J d S )Nr   r   r   r    r!   r#   r$   r%   r&   Fr+   )r   r   _id)r   resr   r   r   test_copy_deep_false_retains_idm   s   rB   )r   r   pytestpandasr   pandas._testing_testingr   r   r   r   r   markparametrizer)   r,   r2   r?   rB   r   r   r   r   <module>   s8    



