
    JEf                     J   d dl Z d dlZd dlmZ d dlmZ e j                  j                  dddg ddfddg d	dfddg d
dfddg d
dfdgdg ddfddgdg ddfddgdg ddfddg ddfddg d
dfdgdgg ddfddgddgg ddfg d
g dg ddfddg ddfdej                  g ddfddg ddfg ddg ddfg      e j                  j                  d      d               Ze j                  j                  ddd d!d gd"fd d#d!dgdfd!d!d!dgdfddd!dgd$fg      d%        Zd& Zd' Zy)(    N)Categoricalz)to_replace,value,expected,flip_categories      )r   r      F   )r   r   r   r   r   r         r   )r   r   r   )r   r   r   )r   r   r   )r	   r	   r   )r	   r
   )r	   r   r   )r   r   r   )Nr   r   4)r   r   r   )r   r   35)r   r   r   Tz:ignore:.*with CategoricalDtype is deprecated:FutureWarningc                 ~   t        j                  g dd      }|j                  | |      }t        j                  |d      }|j                  | |d       |r5|j                  j	                  |j                  j
                  d d d         }t        j                  ||d       t        j                  ||d       y )	Nr   categorydtypeTinplaceFcheck_category_order)pdSeriesreplacecatset_categories
categoriestmassert_series_equal)
to_replacevalueexpectedflip_categoriesserresults         e/var/www/VTS_Report/venv/lib/python3.12/site-packages/pandas/tests/arrays/categorical/test_replace.pytest_replace_categorical_seriesr&      s    @ ))IZ
0C[[U+Fyy4HKK
E4K0<<..x||/F/Ftt/LM8V%H8SuE    z-to_replace, value, result, expected_error_msgbcaz$Categorical.categories are differentdz+Categorical.categories length are differentc                    t        ddg      }t        |      }d}|t        nd }t        j                  ||      5  t	        j
                  |d      j                  | |      j                  }d d d        t        j                  ||       | dk(  r:t        j                  t        |      5  t        j                  ||       d d d        t	        j
                  |d      }t        j                  ||      5  |j                  | |d       d d d        t        j                  ||       y # 1 sw Y   xY w# 1 sw Y   wxY w# 1 sw Y   8xY w)	Nr*   r(   OThe behavior of Series\.replace \(and DataFrame.replace\) with CategoricalDtypematchF)copyTr   )r   FutureWarningr   assert_produces_warningr   r   r   _valuesassert_categorical_equalpytestraisesAssertionError)	r   r    r$   expected_error_msgr   r!   msgwarnr#   s	            r%   test_replace_categoricalr;   4   s'    sCj
!C6"H	   /:=D		#	#D	4 O3U+33JFNNO 1S]]>1CD 	7''X6	7 ))Ce
$C		#	#D	4 5Jt45X.O O
	7 	7
5 5s#   2D-,D99E-D69EEc                     t        t        j                  ddgd            } d}t        j                  t
        |      5  t        j                  |       j                  ddgdt        j                  g      j                  }d d d        t        t        j                  dt        j                  gd            }t        j                  |       y # 1 sw Y   PxY w)Nr*   r(   stringr   r-   r.   r)   )r   r   arrayr   r2   r1   r   r   NAr3   r4   )r   r9   r$   r!   s       r%   !test_replace_categorical_ea_dtyper@   V   s    
bhhSz:
;C	   
	#	#M	= J3''c
S"%%LAIIJ288S"%%LABH1J Js    ACCc                     t        j                  g dd      } t        j                  g d|       }d}t        j                  t
        |      5  |j                  dd      }d d d        t        j                  d	dgd      }t        j                  g d
|      }t        j                  |d       y # 1 sw Y   TxY w)N)r   r   r   T)orderedr   r-   r.   r   r   r   )r   r   r   r   )r   CategoricalDtyper   r   r2   r1   r   r   )r   r#   r9   r$   expected_dtyper!   s         r%   test_replace_maintain_orderingrE   c   s    	48E
))IU
+C	   
	#	#M	= #Q"#((!Q>Nyy.9H8V$G	# #s   B66B?)r5   pandasr   r   pandas._testing_testingr   markparametrizer?   filterwarningsr&   r;   r@   rE    r'   r%   <module>rM      s       / 
Ay% 	
Ay% 	
Ay% 	
Ay% 
aE"
QIu%
QIu%	Ay%(	Iu%
qc9e$
Q!QE*	Iy%0	
D,&	
BEE<'	
Ce$	c=$/+4 @F5:F 3	cC:EF	cC:t$	cC:t$	dS$K!NO	/	/0
2Hr'   