
    .i~              
          d dl Z d dlZd dlZd dlmc mZ d dlZ	 G d d      Z
ej                  j                  dd ej                  d ej                  d            g      ej                  j                  d	d
d
gg dg      d               Zej                  j                  dd ej                  d ej                  d            g      ej                  j                  d	d
d
gg dg      d               Zy)    Nc            	          e Zd Zd Zddddej
                   ej                  d       ej                  d      gZ	e
j                  j                  dg e	dd	 ej                  d       ej                  d            d
        Ze
j                  j                  dg e	dd ej                  d            d        Ze
j                  j                  dg e	d      d        Zy)TestSetitemValidationc                 (   d|d|j                    d}t        j                  |      }t        j                  t
        |      5  ||d<   d d d        t        j                  t
        |      5  ||d d  d d d        t        j                  t
        |      5  ||dg<   d d d        t        j                  |      }t        j                  t
        |      5  ||d<   d d d        y # 1 sw Y   xY w# 1 sw Y   ~xY w# 1 sw Y   `xY w# 1 sw Y   y xY w)NzInvalid value 'z' for dtype ''matchr   )dtypereescapepytestraises	TypeErrorpdSeries)selfarrinvalidmsgsers        f/var/www/app/trading-bot/venv/lib/python3.12/site-packages/pandas/tests/arrays/masked/test_indexing.py_check_setitem_invalidz,TestSetitemValidation._check_setitem_invalid   s    {-		{!Diin]]9C0 	CF	 ]]9C0 	CF	 ]]9C0 	CH	 iin]]9C0 	CF	 	%	 		 		 		 	s0   C$-C0C<D$C-0C9<DDy      ?       @True1z1.0NaTr      g      ?c                 Z    t        j                  g dd      }| j                  ||       y )N)TFNbooleanr	   r   arrayr   )r   r   r   s      r   #test_setitem_validation_scalar_boolz9TestSetitemValidation.test_setitem_validation_scalar_bool/   s%     hh*)<##C1    Tg      ?c                 Z    t        j                  g d|      }| j                  ||       y N)r      Nr   r   )r   r   any_int_ea_dtyper   s       r   "test_setitem_validation_scalar_intz8TestSetitemValidation.test_setitem_validation_scalar_int6   s#    hh|+;<##C1r"   c                 Z    t        j                  g d|      }| j                  ||       y r$   r   )r   r   float_ea_dtyper   s       r   $test_setitem_validation_scalar_floatz:TestSetitemValidation.test_setitem_validation_scalar_float;   s"    hh|>:##C1r"   N)__name__
__module____qualname__r   r   r   np
datetime64timedelta64_invalid_scalarsr   markparametrizeint64float64r!   r'   r*    r"   r   r   r      s   4 	
eu [[J%JqJ#Jxrxx{JJBJJqMJ22 [[Y(W*:(WD(W#(WzrzzRU(WX2 Y2 [[Y(A*:(AD(AB2 C2r"   r   r	   Float64zfloat64[pyarrow]pyarrow)marksindexerr   )FTFc                     t        j                  dt         j                  dg|       }t        j                  ||<   |st        j
                  |d         sJ y |d   t         j                  u sJ y )Nr   r   r   )r   r    NAr.   nanisnan)r	   r:   using_nan_is_nar   s       r   !test_setitem_nan_in_float64_arrayr@   A   sX     ((Aruua=
.C66CLxxA1vr"   Int64int64[pyarrow]c                 t   t        j                  g d|       }|sgt        }d}| dk(  rdd l}|j                  j
                  }d}t        j                  ||      5  t        j                  ||<   d d d        |d   dk(  sJ y t        j                  ||<   |d   t         j                  u sJ y # 1 sw Y   ?xY w)	N)r   r   r%   r   z%Invalid value 'nan' for dtype 'Int64'rB   r   z%Could not convert nan with type floatr   r   )r   r    r   r8   libArrowInvalidr   r   r.   r=   r<   )r	   r:   r?   r   errr   pas          r   test_setitem_nan_in_int64_arrayrH   S   s     ((9E
*C5$$ &&%%C9C]]3c* 	"66CL	"1v{{vvG1v	" 	"s   B..B7)r
   numpyr.   r   pandas.util._test_decoratorsutil_test_decoratorstdpandasr   r   r2   r3   param
skip_if_nor@   rH   r6   r"   r   <module>rQ      s   	   ) ) 32 32l '}r}}Y/GH Q-A$BC D %]R]]9-EF Q-A$BC Dr"   