
    dot                     f   d Z ddlmZ ddlZddlZddlZddlmZ ddlm	Z	m
Z
mZmZmZmZ ddlmZ ddlmZmZmZmZ d Zd Zej                            d	ej        ej        fej        ej        fej        ej        fej        ej        fg          d
             Zej                            dg d          ej                            dddg          d                         Z ej                            dg dddgg          d             Z! G d d          Z"ej        #                    d          ej                            dg d          d                         Z$d Z%d Z&d Z'd Z(d Z)ej                            d d!ej*        g          d"             Z+d# Z,d$ Z-d% Z. G d& d'          Z/dS )(zX
The tests in this package are to ensure the proper resultant dtypes of
set operations.
    )datetimeN)find_common_type)CategoricalIndexIndex
MultiIndex
RangeIndexSeries	Timestamp)is_bool_dtypeis_datetime64tz_dtypeis_signed_integer_dtypepandas_dtypec                     |                                  }|                                  }|                    |          j        |j        k    sJ d S )N)sort_valuesuniondtype)indexidx1idx2s      \/var/www/html/t/fyr/venv311/lib/python3.11/site-packages/pandas/tests/indexes/test_setops.pytest_union_same_typesr      sN     DD::d!TZ//////    c                    | }|}|j         s'|j         s |j        j        dk    r|j        j        dk    s.|j         sh|j         sa|j        j        dk    rQ|j        j        dk    rAt          j                            dt          d          }|j                            |           t          |j        |j        g          }d }t          |          rt          |          sn|j        j        dk    r-|j        j        dvs\t          |j        t          j                  r=|j        j        dk    r4|j        j        dvst          |j        t          j                  st          }t          j        |j        |j        fv }t          |j                  }	t          |j                  }
|                                }|                                }t#          j        |d	          5  |                    |          }|                    |          }d d d            n# 1 swxY w Y   |rD|	s|
r@|j        t          j        d
          k    sJ |j        t          j        d
          k    sJ d S |j        |k    sJ |j        |k    sJ d S )NibzGH#44000 True==1F)reasonraisesstrictc)r   ufr   z'<' not supported betweenmatchO)	is_uniquer   kindpytestmarkxfail
ValueErrornode
add_markerr   len
isinstancenpRuntimeWarninguint64r   r   tmassert_produces_warningr   )
index_flatindex_flat2requestr   r   r(   common_dtypewarn
any_uint64idx1_signedidx2_signedres1res2s                r   test_union_different_typesr>   &   s    DD N&& JOs""JOs""N #  # JOs""JOs"" {  %j ! 
 
 	%%%#TZ$<==LDt99 CII 
3JO#777dj"(33 8 	
3JO#777dj"(33 8
 tz4:66J)$*55K)$*55K DD		#D0K	L	L	L    zz$zz$                               *{ *k *zRXc]]****zRXc]]******z\))))z\))))))s   +HHHzidx_fact1,idx_fact2c                      | d          } |d          }|                     |          }|                     |          }|j        |j        |j        fv sJ |j        |j        |j        fv sJ d S )N
      )r   r   )	idx_fact1	idx_fact2r   r   r<   r=   s         r   "test_compatible_inconsistent_pairsrD   l   s~     9R==D9R==D::dD::dD:$*dj11111:$*dj1111111r   zleft, right, expected))int64rE   rE   )rE   r1   object)rE   float64rG   )r1   rG   rG   )r1   r1   r1   )rG   rG   rG   )datetime64[ns]rE   rF   )rH   r1   rF   )rH   rG   rF   )datetime64[ns, CET]rE   rF   )rI   r1   rF   )rI   rG   rF   )	Period[D]rE   rF   )rJ   r1   rF   )rJ   rG   rF   names)foorL   rL   )rL   barNc                 \   t          |           } t          |          }t          g | |d                   }t          g ||d                   }|                    |          }|j        |k    sJ |j        |d         k    sJ |                    |          }|j        |d         k    sJ d S )Nr   )r   name      )r   r   r   r   rO   intersection)leftrightexpectedrK   ar   results          r   test_union_dtypesrX      s    , DEb58,,,AbE!H---AWWQZZF<8####;%("""" ^^AF;%(""""""r   valuesrP   rQ   rQ      r[   c                     t          |           }t          ddg          }|                    |          }t          dg          }t          j        ||           d S )Nr[   )r   rR   r2   assert_index_equal)rY   rV   r   rW   rU   s        r   test_intersection_duplicatesr^      sU     	fAq!fA^^AFaSzzH&(+++++r   c                      e Zd Zej                            dddg          ej                            dg d          d                         Zd Zej                            d          d	             Z	ej                            d          d
             Z
ej                            d          d             Zej                            dg d          d             Zej                            dg d          d             Zej                            dg d          d             Zej                            dg d          d             Zd Zd Zd Zd ZdS )
TestSetOpscaseg      ?xxxmethodrR   r   
differencesymmetric_differencec                     d}t          j        t          |          5   t          ||          |           d d d            d S # 1 swxY w Y   d S )Nz!Input must be Index or array-liker"   )r'   r   	TypeErrorgetattr)selfra   rc   r   msgs        r   test_set_ops_error_casesz#TestSetOps.test_set_ops_error_cases   s     2]9C000 	) 	)"GE6""4(((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   AA	A	c                    t          |t                    rd S |d d         }|d d         }|                    |          }t          j        ||          sJ t          |j                  rd S |                                |                                |	                                g}|D ].}|                    |          }t          j        ||          sJ /t          |t                    rOd}t          j        t          |          5  |                    g d           d d d            d S # 1 swxY w Y   d S d S )N   r[   .other must be a MultiIndex or a list of tuplesr"   rP   rQ   r[   )r.   r   rR   r2   equalContentsr   r   to_numpy	to_seriesto_listr   r'   r   rh   )	rj   r   firstsecond	intersectcasesra   rW   rk   s	            r   test_intersection_basez!TestSetOps.test_intersection_base   s   e-.. 	Fbqb	rr&&v..		622222 -- 	 F ""F$4$4$6$68H8HI 	4 	4D''--F#FF333333eZ(( 	.BCy444 . .""999---. . . . . . . . . . . . . . . . . .	. 	.s   D11D58D5Eignore:Falling back on a non-pyarrow:pandas.errors.PerformanceWarningc                 V   |dd          }|d d         }|}|                     |          }t          j        ||          sJ t          |j                  rd S |                                |                                |                                g}|D ].}|                     |          }t          j        ||          sJ /t          |t                    rOd}	t          j        t          |	          5  |                     g d           d d d            d S # 1 swxY w Y   d S d S )Nr[   rn   ro   r"   rp   )r   r2   rq   r   r   rr   rs   rt   r.   r   r'   r   rh   )
rj   r   ru   rv   
everythingr   rx   ra   rW   rk   s
             r   test_union_basezTestSetOps.test_union_base   s    abb	rr
F##z22222 -- 	 F ""F$4$4$6$68H8HI 	8 	8D[[&&F#FJ777777eZ(( 	'BCy444 ' 'III&&&' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '	' 	's   7DD #D c                    |dd          }|d d         }t          |          r0t          |                              t          |                    }n"t          |t                    rg }n
|dd          }|                    ||          }t          j        ||          sJ |                                |                                |	                                g}|D ]/}|                    ||          }t          j        ||          sJ 0t          |t                    rPd}	t          j        t          |	          5  |                    g d|           d d d            d S # 1 swxY w Y   d S d S )NrQ      ro   r"   rp   )r   setre   r.   r   r2   rq   rr   rs   rt   r   r'   r   rh   )
rj   sortr   ru   rv   answerrW   rx   ra   rk   s
             r   test_difference_basezTestSetOps.test_difference_base   s    abb	rr 	 ZZ**3v;;77FF/00 	FF122YF!!&$/////// ""F$4$4$6$68H8HI 	4 	4D%%dD11F#FF333333eZ(( 	2BCy444 2 2  D1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2	2 	2s   E((E,/E,c                    t          |t                    rd S t          |          dk     rd S |d         |dd          v s|d         |d d         v rd S |dd          }|d d         }|ddg         }|                    |          }t	          j        ||          sJ |                                |                                |                                g}|D ].}|                    |          }t	          j        ||          sJ /t          |t                    rOd}t          j        t          |          5  |                    g d           d d d            d S # 1 swxY w Y   d S d S )NrQ   r   rP   ro   r"   rp   )r.   r   r-   rf   r2   rq   rr   rs   rt   r   r'   r   rh   )	rj   r   ru   rv   r   rW   rx   ra   rk   s	            r   test_symmetric_differencez$TestSetOps.test_symmetric_difference  s    e-.. 	Fu::>>F8uQRRy  E"Iss$;$; Fabb	ss2w++F33///// ""F$4$4$6$68H8HI 	4 	4D//55F#FF333333eZ(( 	6BCy444 6 6**9995556 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6	6 	6s   ;E  E$'E$zfname, sname, expected_name)Ar   r   r   BN)r   NNNr   N)NNNc                 B   |j         st          j        d           |}|                                                    |          }|                                                    |          }|                    |          }|                                                    |          }	t          j        ||	           |                                                    |          }|                    |                              |          }|                    |          }|                                                    |          }	t          j        ||	           |                    |                              |          }|                                                    |          }|                    |          }|                                                    |          }	t          j        ||	           |                    |                              |          }|                    |                              |          }|                    |          }|                    |                              |          }	t          j        ||	           d S N-Randomly generated index_flat was not unique.)	r%   r'   skipcopy	set_namesr   r2   r]   drop
rj   r4   fnamesnameexpected_namer   ru   rv   r   rU   s
             r   test_corner_unionzTestSetOps.test_corner_union)  s    # 	IKGHHH 

&&u--''..F##::<<))-88
eX... 

&&u--E"",,U33F##::<<))-88
eX... 

5!!++E22''..F##::<<))-88
eX... 

5!!++E22E"",,U33F##::e$$..}==
eX.....r   c                    |j         st          j        d           |}|                                                    |          }|dd                              |          }|                    |                                          }|                    |                                          }	t          j        ||	           d S Nr   rP   )	r%   r'   r   r   r   r   r   r2   r]   r   s
             r   test_union_unequalzTestSetOps.test_union_unequalW  s     # 	IKGHHH 

&&u--qrr$$U++F##//11??=11==??
eX.....r   c                 F   |j         st          j        d           |}|                                                    |          }|                                                    |          }|                    |          }|                                                    |          }	t          j        ||	           |                                                    |          }|                    |                              |          }|                    |          }|                    |                              |          }	t          j        ||	           |                    |                              |          }|                                                    |          }|                    |          }|                    |                              |          }	t          j        ||	           |                    |                              |          }|                    |                              |          }|                    |          }|                    |                              |          }	t          j        ||	           d S r   )	r%   r'   r   r   r   rR   r2   r]   r   
rj   r4   r   r   r   r   ru   rv   rw   rU   s
             r   test_corner_intersectz TestSetOps.test_corner_intersectm  s,    # 	IKGHHH 

&&u--''..&&v..	::<<))-88
i222 

&&u--E"",,U33&&v..	::e$$..}==
i222 

5!!++E22''..&&v..	::e$$..}==
i222 

5!!++E22E"",,U33&&v..	::e$$..}==
i22222r   c                    |j         st          j        d           |}|                                                    |          }|dd                              |          }|                    |                                          }|dd                              |                                          }	t          j        ||	           d S r   )	r%   r'   r   r   r   rR   r   r2   r]   r   s
             r   test_intersect_unequalz!TestSetOps.test_intersect_unequal  s     # 	IKGHHH 

&&u--qrr$$U++&&v..::<<	9&&}55AACC
i22222r   c                    t          |t                    r5|                    t          t	          |j                                      }n|                    d          }t          j        |          }|                    |          }|j	        |j	        k    sJ |                    |d d                   }|j	        |j	        k    sJ |d d                             |          }|j	        |j	        k    sJ d S )NrL   r   )
r.   r   renamelistrangenlevelsr/   asarrayrR   rO   )rj   r   otherrW   s       r   .test_intersection_name_retention_with_namelessz9TestSetOps.test_intersection_name_retention_with_nameless  s    eZ(( 	(LLeEM&:&:!;!;<<EELL''E
5!!##E**{ej(((( ##E"1"I..{ej(((( rr''..{ej((((((r   c                     |j         sd S |                    ||          }|d d         }t          j        ||d           d S )Nr   r   Texact)r%   re   r2   r]   )rj   r   r   rW   rU   s        r   $test_difference_preserves_type_emptyz/TestSetOps.test_difference_preserves_type_empty  sV      	F!!%d!33!9
fhd;;;;;;r   c                    t          t                    rfd|D             }                    |d                                       |d                   }                    |          sJ                     |          }d d                             |d                   }t          j        ||           d S )Nc                 &    g | ]}|gj         z  S  )r   ).0xr   s     r   
<listcomp>zDTestSetOps.test_difference_name_retention_equals.<locals>.<listcomp>  s"    888QaS5=(888r   r   rP   rQ   )r.   r   r   equalsre   r2   r]   )rj   r   rK   r   rW   rU   s    `    r   %test_difference_name_retention_equalsz0TestSetOps.test_difference_name_retention_equals  s    eZ(( 	98888%888EU1X&&U1X&&||E"""""!!%((!9##E!H--
fh/////r   c                     |j         sd S |                    |d d                   }|                    ||          }t          j        ||d           d S )Nr   r   Tr   )r%   rR   re   r2   r]   )rj   r   r   interdiffs        r   (test_intersection_difference_match_emptyz3TestSetOps.test_intersection_difference_match_empty  sd    
  	F""5!9--D11
eT666666r   N)__name__
__module____qualname__r'   r(   parametrizerl   ry   filterwarningsr}   r   r   r   r   r   r   r   r   r   r   r   r   r   r`   r`      s]       [Vc5\22[QQQ ) )  32). . .2 [O ' ' '0 [O 2 2 22 [O 6 6 66 [%	
 	
 	
	 	"/ "/	 	"/H [%	
 	
 	
	 	
/ 
/	 	
/ [%	
 	
 	
	 	!3 !3	 	!3F [%	
 	
 	
	 	
3 
3	 	
3) ) )&< < <
0 
0 
0	7 	7 	7 	7 	7r   r`   rz   rc   rd   c                    | }|                     d          }t          |t                    rdnd} t          ||          ||          } t          ||          ||          }t	          j        |||            t          ||          |d d         |          } t          ||          |d d         |          }t	          j        |||           d S )NcategoryequivTr   r   rn   )astyper.   r   ri   r2   r]   )r4   r   rc   r   r   r   rW   rU   s           r   test_setop_with_categoricalr     s     ELL$$E!%44>GG$E#WUF##E555F%wuf%%e$777H&(%8888#WUF##E"1"ID999F%wuf%%eBQBid;;;H&(%888888r   c                     | j         rd S | }|g d         }|                    |                              |                    |                    sJ |                    |          j        sJ d S )Nr   r   rP   rQ   )emptyrR   r   r%   )r   idxidx_non_uniques      r   (test_intersection_duplicates_all_indexesr     s}    { 
C&NN++22>3N3Ns3S3STTTTTN++555555r   c                 t   | }t          g d|          }t          g d|          }t          g d|          }t          |t                    rt          g d          }|                    |          }t	          j        ||           |                    |d          }t	          j        ||           d S )NrZ   r   )r[   r[   r   )rP   rQ   rQ   r[   r[   r   Fr   r   r.   r   r   r2   r]   'any_dtype_for_small_pos_integer_indexesr   rV   r   rU   rW   s         r   0test_union_duplicate_index_subsets_of_each_otherr     s     4Elll%(((Aiiiu%%%A'''u555H!%&& -+++,,WWQZZF&(+++WWQUW##F&(+++++r   c                 $   | }t          g d|          }t          ddg|          }t          g d|          }|                    |          }t          j        ||           |                    |          }t          j        ||           d S )N)rP   r   r   r   r   rP   r   r   rP   r   r   r2   r]   r   s         r   1test_union_with_duplicate_index_and_non_monotonicr     s     4Eiiiu%%%Aq!fE"""AYYYe,,,HWWQZZF&(+++WWQZZF&(+++++r   c                      t          g d          } t          g d          }t          g d          }|                     |d          }t          j        ||           d S )NrZ   )10r   )rP   rQ   rQ   r[   r   r   r   Fr   r   )rV   r   rU   rW   s       r   +test_union_duplicate_index_different_dtypesr   )  sf    lllAoooA00011HWWQUW##F&(+++++r   c                      t          g d          } t          g d          }|                     |          }t          g d          }t          j        ||           d S )Nr   r   r   )rV   r   rW   rU   s       r   (test_union_same_value_duplicated_in_bothr   2  s]    iiiAlllAWWQZZF\\\""H&(+++++r   duprP   c                    t          t          j        dddg          }t          t          j        | ddg          }|                    |d          }t          t          j        | dddg          }t	          j        ||           d S )NrP   rQ   Fr   g      ?       @)r   r/   nanr   r2   r]   )r   rV   r   rW   rU   s        r   test_union_nan_in_bothr   ;  s|     	rvq!Q  ArvsAq!""AWWQUW##Fbfc3S122H&(+++++r   c                      t          ddd          } t          ddd          }|                     |d          }t          g d          }t          j        ||           d S )	NrP   d      2   r[   Tr   )rP   r      r@                        "   %   (   +   .   1   7   =   C   I   O   U   [   a   )r   r   r   r2   r]   )r   r   rW   rU   s       r   test_union_rangeindex_sort_truer   E  sr    aa  DaQDZZ4Z((F	
 	
 	
 H: &(+++++r   c                 p   | }t          g d|          }t          g d|          }t          g d|          }t          |t                    rt          g d          }|                    |          }t	          j        ||           |                    |          }t	          j        ||           d S )N)rP   r   rQ   r   r   r   r   r   s         r   <test_union_with_duplicate_index_not_subset_and_non_monotonicr   j  s     4Eiiiu%%%Aiiiu%%%A\\\///H!%&& '&&WWQZZF&(+++WWQZZF&(+++++r   c                     t          ddt          j        g          } | j        j        j        dk    sJ t          ddg          }|                    |           }t          ddt          j        gt          j                  }t          j
        ||           |                     |          }t          j
        ||           d S )NrP   rQ   r   r   )r   r/   r   
categoriesr   r&   r   r   rG   r2   r]   )cir   rW   rU   s       r   #test_union_int_categorical_with_nanr   |  s    	1a.	)	)B=#s****
A--CYYr]]FaBF^2:666H&(+++XXc]]F&(+++++r   c                      e Zd Zd Zej                            ddgd          d             Zej                            d eg dd	          df eg dd
	          df eg d          dfg          d             Z	ej                            ddgd          ej                            dg d          d                         Z
d Zej                            ddgd          d             Zej                            dej        eeg          ej                            ddgd          d                         Zej                            ddgd          d             Zej                            ddgd          ej                            dddg          d                         Zd Zej                            ddgd          d             Zej                            ddgd          d             Zej                            dddg          d             Zej                            dddg          d              Zd! Zej                            d" ed#d$ej        g           eg d%          f ed#d$g           eej        d&d'd(g          fg          d)             Zd* Zd+ Zd,S )-TestSetOpsUnsortedc                 $   t          ddd          t          ddd          g}t          |t                    }t          dgt                    }|                    |          }t          g t                    }t	          j        ||           d S )Ni  rQ   	   r   r   aa)r   r   rF   rR   r2   r]   )rj   dt_datesindex1index2rW   rU   s         r   test_intersect_str_datesz+TestSetOpsUnsorted.test_intersect_str_dates  s    T1a(((4B*?*?@xv...vV,,,$$V,,6***
fh/////r   r   stringT)indirectc                    |d d         }|d d         }|                     ||          }|'t          j        ||                                           t          j        ||          sJ |                     ||          }||u sJ d S )NrA   r@   r   )rR   r2   r]   r   rq   )rj   r   r   ru   rv   rw   r   s          r   test_intersectionz$TestSetOpsUnsorted.test_intersection  s    crc
ss&&vD&99	<!)V-?-?-A-ABBB	622222 ""5t"44~~~~~~r   zindex2,keeps_name)r[   r   rn   r   r   rO   r   Fc                     t          g dd          }t          g d          }|                    ||          }|rd|_        |j        |j        k    sJ t          j        ||           d S )NrP   rQ   r[   r   rn   r   r  r[   r   rn   )r   rR   rO   r2   r]   )rj   r  
keeps_namer   r  rU   rW   s          r   #test_intersection_name_preservationz6TestSetOpsUnsorted.test_intersection_name_preservation  s}     W555##$$VT22 	$#HM{hm++++
fh/////r   z$first_name,second_name,expected_name)r   r   r   c                     |dd         }|d d         }||_         ||_         |                    ||          }|j         |k    sJ d S Nrn   rA   r@   r   )rO   rR   )	rj   r   
first_namesecond_namer   r   ru   rv   rw   s	            r   $test_intersection_name_preservation2z7TestSetOpsUnsorted.test_intersection_name_preservation2  s]     adss
!&&vD&99	~......r   c                    t          ddgd          }t          ddgd          }t          dd	gd
          }|                    |                    ||          |          }|                    ||                              ||          }t          j        ||           t          ddgd          }t          g d          }t          g d          }	|                    |                    |	|          |          }|                    ||                              |	|          }t          j        ||           d S )NrP   rQ   i1r  rn   r   i2r[   r   i3r   j1j2j3r   )
rj   r   r  r  r  r   rU   r  r  r  s
             r   test_chained_unionz%TestSetOpsUnsorted.test_chained_union  sD   Aq6%%%Aq6%%%Aq6%%%"400t<<88BT8**00$0??
eX...Aq6%%%2D!!!2D!!!"400t<<88BT8**00$0??
eX.....r   c                     |dd         }|d d         }|d d         }|                     ||          }|'t          j        ||                                           t          j        ||          sJ d S r  )r   r2   r]   r   rq   )rj   r   r   ru   rv   r|   r   s          r   
test_unionzTestSetOpsUnsorted.test_union  s    adss3B3Z
F..<!%)?)?)A)ABBBz2222222r   klassc                    |dd         }|d d         }|d d         } ||j                   }|                    ||          }|'t          j        ||                                           t          j        ||          sJ d S r  )rY   r   r2   r]   r   rq   )	rj   r   r!  r   ru   rv   r|   ra   rW   s	            r   test_union_from_iterablesz,TestSetOpsUnsorted.test_union_from_iterables  s     adss3B3Z
uV]##T--<!&**@*@*B*BCCC
3333333r   c                     |dd         }|                     ||          }||u | u sJ |                     g |          }||u | u sJ t          g                                ||          }||u | u sJ d S )Nrn   rA   r   )r   r   )rj   r   r   ru   r   s        r   test_union_identityz&TestSetOpsUnsorted.test_union_identity  s    adE--H---- BT**H----b		D11H------r   zsecond_name,expected)NN)rO   rO   c                     |dd         }|d d         }|dd         }d|_         ||_         |                    ||          }t          j        ||          sJ ||j         J d S |j         |k    sJ d S )Nrn   rA   r@   rO   r   )rO   re   r2   rq   )	rj   r   r  rU   r   ru   rv   r   rW   s	            r   !test_difference_name_preservationz4TestSetOpsUnsorted.test_difference_name_preservation  s     adssr"u
!!!&t!44/////;&&&&&;(******r   c                 ~    |dd         }d|_         |                    g |          }t          j        ||           d S )Nrn   rA   rO   )rO   re   r2   r]   rj   r   r   ru   rW   s        r   test_difference_empty_argz,TestSetOpsUnsorted.test_difference_empty_arg  sD    ad
!!"d++
fe,,,,,r   c                     |dd         }d|_         |                    ||          }t          |          dk    sJ |j         |j         k    sJ d S )Nrn   rA   rO   r   )rO   re   r-   r)  s        r   test_difference_identityz+TestSetOpsUnsorted.test_difference_identity  s]    ad
!!%..6{{a{ej((((((r   c                     |dd         }|d d         }|                     ||          }|dd         }||                                }t          j        ||           d S )Nrn   rA   r@   )re   r   r2   r]   )rj   r   r   ru   rv   rW   rU   s          r   test_difference_sortz'TestSetOpsUnsorted.test_difference_sort!  sm    adss!!&$//B<<++--H
fh/////r   opnamere   rf   c                 6   t          dt          d          dg          }t          dt          d          dg          }t          j        ||          }t	          j        t                    5   ||          }d d d            n# 1 swxY w Y   t          dt          d          dt          d          g          }|dk    r
|d d         }t	          j        ||           t          j        ||d          } ||          }t	          j        ||           d S )	Nr[   2000rP   rQ   1999re   Fr   )r   r
   operatormethodcallerr2   r3   r0   r]   )rj   r/  rV   r   oprW   rU   s          r   test_difference_incomparablez/TestSetOpsUnsorted.test_difference_incomparable.  sQ   1i''+,,1i''+,,"61--'77 	 	RUUF	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 !Yv..9V3D3DEFF\!!|H
fh/// "615999A
fh/////s   -BB	B	c                 2   t          dt          d          dg          }t          dt          d          dg          }t          j        ||d          }d}t	          j        t          |	          5   ||           d d d            d S # 1 swxY w Y   d S )
Nr[   r1  rP   rQ   r2  Tr   z<'<' not supported between instances of 'Timestamp' and 'int'r"   )r   r
   r3  r4  r'   r   rh   )rj   r/  rV   r   r5  rk   s         r   !test_difference_incomparable_truez4TestSetOpsUnsorted.test_difference_incomparable_trueA  s    1i''+,,1i''+,,"614888L]9C000 	 	BqEEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   3BBBc                 \   t          j        t          g dg d                    }t          j        ddg          }|                    ||          }t          j        g d          }||                                }t          j        ||           t          j        ||          sJ d S )N)rL   rM   bazrp   )rL   rP   rM   r[   r   ))rM   rQ   )r:  r[   r;  )r   from_tuplesziprf   r   r2   r]   rq   )rj   r   r  r  rW   rU   s         r   test_symmetric_difference_miz/TestSetOpsUnsorted.test_symmetric_difference_miK  s    ',A,A,A999(M(MNN'Z(@AA,,V$,??)*N*N*NOO<++--H
fh///1111111r   zindex2,expectedr   rP   )r         @        r   r?  r@  c                     t          dt          j        ddg          }|                    ||          }||                                }t          j        ||           d S )NrP   rQ   r[   r   )r   r/   r   rf   r   r2   r]   )rj   r  rU   r   r  rW   s         r   !test_symmetric_difference_missingz4TestSetOpsUnsorted.test_symmetric_difference_missingU  sc     261a()),,V$,??<++--H
fh/////r   c                 h   t          g dd          }t          j        g d          }t          ddg          }|                    ||          }t	          j        ||          sJ |j        dk    sJ |                    |d|	          }t	          j        ||          sJ |j        dk    sJ d S )
N)rP   rQ   r[   r   r  r  )rQ   r[   r   rn   rP   rn   r   new_name)result_namer   )r   r/   arrayrf   r2   rq   rO   )rj   r   r  r  rU   rW   s         r   #test_symmetric_difference_non_indexz6TestSetOpsUnsorted.test_symmetric_difference_non_indexf  s    |||(333,,,''!Q==,,V$,??11111{h&&&&,,VRV,WW11111{j((((((r   c                     t          g d|          }t          g d|          }|                    |          }t          g d|          }t          j        ||           d S )Nrp   r   r  r  r   )rj   any_numeric_ea_and_arrow_dtyper   r   rW   rU   s         r   test_union_ea_dtypesz'TestSetOpsUnsorted.test_union_ea_dtypesr  so    III%CDDDYYY&DEEE40NOOO
fh/////r   N)r   r   r   r  r'   r(   r   r  r   r  r  r  r   r/   rF  r	   r   r#  r%  r'  r*  r,  r.  r6  r8  r>  r   rB  rG  rJ  r   r   r   r   r     s       0 0 0 [Wxj4@@
 
 A@
 [U???11148U???11159U???##U+	
 	0 	0 	0 [Wxj4@@[.>>> / /	  A@
// / /  [Wxj4@@3 3 A@3 [Wrx&>??[Wxj4@@
4 
4 A@ @?
4 [Wxj4@@. . A@. [Wxj4@@[3lDT5UVV+ + WV A@+ - - - [Wxj4@@) ) A@) [Wxj4@@
0 
0 A@
0 [X6L'MNN0 0 ON0$ [X6L'MNN  ON2 2 2 [UAq"&>""EE///$:$:;UAq6]]EE263S"9::;	
 0 0 0
) 
) 
)0 0 0 0 0r   r   )0__doc__r   r3  numpyr/   r'   pandas.core.dtypes.castr   pandasr   r   r   r   r	   r
   pandas._testing_testingr2   pandas.api.typesr   r   r   r   r   r>   r(   r   makeIntIndexmakeRangeIndexmakeFloatIndexmakeUIntIndexrD   rX   r^   r`   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   <module>rV     s                4 4 4 4 4 4                                0 0 0C* C* C*L 	"+,		BO,		B-.		B,-	 	2 	2 	2    ( #8:N"OPP# # QP) *# LLL1a&#9::, , ;:,s7 s7 s7 s7 s7 s7 s7 s7l	 K  MMM 9 9  9 
6 
6 
6, , ,", , , , , ,, , , BF,,, , -,,", ", ",J, , ,$, , ,n0 n0 n0 n0 n0 n0 n0 n0 n0 n0r   