
    i              
           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fddg dfd	d
g dfddg dfg      d        Z	e j                  j                  dddg      d        Z
d Zd Zd Zy)    N)Categoricalzto_replace,value,expected      r         r   )r   r   r   )      r   r   r   )r   r   r   c                     t        j                  g dd      }|j                  | |      }t        j                  t        |g d            }t	        j
                  ||       y )Nr   categorydtype
categories)pdSeriesreplacer   tmassert_series_equal)
to_replacevalueexpectedserresults        i/app/cer_product_mecsu/.venv/lib/python3.12/site-packages/pandas/tests/arrays/categorical/test_replace.pytest_replace_categorical_seriesr      sI     ))IZ
0C[[U+FyyX)DEH68,    zto_replace,value)r   r	   )r   r	   c                     t        j                  g dd      }t        j                  t        d      5  |j                  | |       d d d        y # 1 sw Y   y xY w)Nr   r   r   3Cannot setitem on a Categorical with a new categorymatch)r   r   pytestraises	TypeErrorr   )r   r   r   s      r   3test_replace_categorical_series_new_category_raisesr&      sK     ))IZ
0C	N
 ' 	J&' ' 's   AAc                      t        j                  g dd      } t        j                  g d|       }|j                  dd      }t        j                  g d|       }t	        j
                  ||d       y )	N)r   r   r   T)orderedr   r   r   )r   r   r   )check_category_order)r   CategoricalDtyper   r   r   r   )r   r   r   r   s       r   test_replace_maintain_orderingr+   -   sV    	48E
))IU
+C[[AFyy%0H8V$Gr   c                  T   t        t        j                  g dd            } t        j                  |       j	                  ddgddg      j
                  }t        t        j                  dgdz  d      t        j                  g dd            }t        j                  ||       y )	N)abcstringr   r-   r.   r/   r   r   )r   r   arrayr   r   _valuesr   assert_categorical_equal)catr   r   s      r   !test_replace_categorical_ea_dtyper5   6   s}    
bhhh?
@CYYs^##S#Jc
;CCF
#(+88O8<H 1r   c                     t        t        j                  ddgd            } t        j                  t
        d      5  t        j                  |       j                  ddgdt        j                  g       d d d        y # 1 sw Y   y xY w)Nr-   r.   r0   r   r    r!   r/   )	r   r   r1   r#   r$   r%   r   r   NA)r4   s    r   7test_replace_categorical_ea_dtype_different_cats_raisesr8   A   sh    
bhhSz:
;C	N
 9 			#SzC<89 9 9s   8A??B)r#   pandasr   r   pandas._testing_testingr   markparametrizer   r&   r+   r5   r8    r   r   <module>r?      s         
Ay	
Ay	I	I
-
-  		''H29r   