
    OwgJ              	          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                  j                  ddddgfdddgfg      d	        Ze j                  j                  d
ddiddiddiddiddig      d        Zd Zd Zd Zd Zd Zy)    N)	DataFrameSeries)
MergeErrormerge)	input_coloutput_colsbaa_xa_yc                 R   t        dddgi      }t        | ddgi      }|j                         }|j                         }t        ||d      }t        |d   g d|d   g d	i      }t        j                  ||       t        j                  ||       t        j                  ||       y )
Nr
            crosshowr   )r   r   r   r   )r   r   r   r   )r   copyr   tmassert_frame_equal)r   r   leftright	left_copy
right_copyresultexpecteds           b/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/reshape/merge/test_merge_cross.pytest_merge_crossr      s    
 cAq6]#Dy1a&)*E		IJ4G,F+a.,AUVH&(+$	*%,    kwargs
left_indexTright_indexonleft_onright_onc                     t        dddgi      }t        dddgi      }d}t        j                  t        |      5  t	        ||fdd	i|  d d d        y # 1 sw Y   y xY w)
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   msgs       r    test_merge_cross_error_reportingr-      sk     cAq6]#DsQFm$E	  
z	- 2dE1w1&12 2 2s   AAc                      t        g ddg      } t        t        d      dg      }t        | |d      }t        g dg d	d
      }t        j                  ||       y )Nr
   r	   cA)columns   Br   r   )r
   r
   r	   r	   r0   r0   )r   r   r   r   r   r   r1   r4   )r   ranger   r   r   r   r   r   r   s       r   test_merge_cross_mixed_dtypesr8   4   sQ    _se4DeAh.E4G,F=DVWXH&(+r   c                      t        t        d      ddgd      } t        t        d      t        dd      d      }t        | |d	      }t        g d
g dg dg dd      }t	        j
                  ||       y )Nabr3   r   r5   r      )CDr   r   )r
   r
   r	   r	   )r3   r3   r   r   )r   r   r   r   )r      r   r>   )r1   r4   r<   r=   )r   listr6   r   r   r   r7   s       r   %test_merge_cross_more_than_one_columnr@   =   sm    4:QF34DE!H5A;78E4G,F%		
H &(+r   c                     t        dd| gi      }t        ddgddgd      }t        ||d      }t        dd| | gg d	g d
d      }t        j                  ||       y )Nr
   r   r	         ?       @)r	   r0   r   r   )r
   r	   r
   r	   )rB   rC   rB   rC   r/   )r   r   r   r   )nulls_fixturer   r   r   r   s        r   test_merge_cross_null_valuesrE   M   sn    cA}-./DS#Jc3Z89E4G,FQ}5%%	
H &(+r   c                      t        dddgi      } t        dddgi      }d}t        j                  t        |      5  | j	                  |dd       d d d        y # 1 sw Y   y xY w)	Nr
   r   r   r   r'   r(   r   )r   r#   )r   r*   r+   r   join)r   r   r,   s      r   test_join_cross_error_reportingrH   \   sg    cAq6]#DsQFm$E	  
z	- .		%W	-. . .s   AA#c                      t        g dg dd      } t        g dg dd      }t        | |d      }t        | j                         |j                         d      }t        j                  ||       y )N)r   r3   r   r   r   )indexname)r   r   r>   r;   r   r   r   )r   r   to_framer   r   )lsrsresr   s       r   test_merge_cross_seriesrP   h   sV    	Lv	>B	Lw	?B
BG
$CR[[]BKKMw?H#x(r   )r*   pandasr   r   pandas._testing_testingr   pandas.core.reshape.merger   r   markparametrizer   r-   r8   r@   rE   rH   rP    r   r   <module>rX      s       C#s#4sUEN6K"L
-
- 	t		s	C	S		2		2,, ,	.)r   