o
    %jJ                  	   @   s   d dl Z d dlmZmZ d dlmZ d dlmZm	Z	 e j
ddddgfdddgfgd	d
 Ze j
dddiddiddiddiddigdd Zdd Zdd Zdd Zdd Zdd ZdS )    N)	DataFrameSeries)
MergeErrormerge)	input_coloutput_colsbaa_xZa_yc                 C   s   t dddgi}t | ddgi}| }| }t||dd}t |d g d|d g d	i}t|| t|| t|| d S )
Nr	            crosshowr   )r   r   r   r   )r   r   r   r   )r   copyr   tmassert_frame_equal)r   r   leftrightZ	left_copyZ
right_copyresultexpected r   l/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/pandas/tests/reshape/merge/test_merge_cross.pytest_merge_cross   s    r   kwargs
left_indexTright_indexonZleft_onZright_onc                 C   sn   t dddgi}t dddgi}d}tjt|d t||fdd	i|  W d    d S 1 s0w   Y  d S )
Nr	   r   r   r   r   MCan not pass on, right_on, left_on or set right_index=True or left_index=Truematchr   r   )r   pytestraisesr   r   )r   r   r   msgr   r   r    test_merge_cross_error_reporting   s   "r%   c                  C   sX   t g ddgd} t tddgd}t| |dd}t g dg d	d
}t|| d S )Nr	   r   cA)columns   Br   r   )r	   r	   r   r   r'   r'   )r   r   r   r   r   r   r(   r+   )r   ranger   r   r   r   r   r   r   r   r   r   test_merge_cross_mixed_dtypes4   s
   r/   c                  C   sn   t tdddgd} t tdtddd}t| |dd	}t g d
g dg dg dd}t|| d S )Nabr*   r   r,   r      )CDr   r   )r	   r	   r   r   )r*   r*   r   r   )r   r   r   r   )r      r   r4   )r(   r+   r2   r3   )r   listr-   r   r   r   r.   r   r   r   %test_merge_cross_more_than_one_column=   s   r6   c                 C   sd   t dd| gi}t ddgddgd}t||dd}t dd| | gg d	g d
d}t|| d S )Nr	   r   r         ?       @)r   r'   r   r   )r	   r   r	   r   )r7   r8   r7   r8   r&   )r   r   r   r   )Znulls_fixturer   r   r   r   r   r   r   test_merge_cross_null_valuesM   s   
r9   c                  C   sh   t dddgi} t dddgi}d}tjt|d | j|ddd W d    d S 1 s-w   Y  d S )	Nr	   r   r   r   r   r    r   )r   r   )r   r"   r#   r   join)r   r   r$   r   r   r   test_join_cross_error_reporting\   s   "r;   c                  C   s`   t g dg ddd} t g dg ddd}t| |dd}t|  | dd}t|| d S )N)r   r*   r   r   r   )indexname)r   r   r4   r1   r   r   r   )r   r   Zto_framer   r   )Zlsrsresr   r   r   r   test_merge_cross_seriesh   s
   r@   )r"   Zpandasr   r   Zpandas._testingZ_testingr   Zpandas.core.reshape.merger   r   markZparametrizer   r%   r/   r6   r9   r;   r@   r   r   r   r   <module>   s.    


	