
    sh                         S SK r S SKrS SKrS SKJrJr  S SKJr  S SK	J
r
  S SKJr   " S S\5      r\S:X  a  \R                  " 5         gg)	    N)jitnjit)types)usecases)TestCasec                      \ rS rSr\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r	\R
                  S 5       r
\R
                  S 5       r\R
                  S 5       r\R
                  S	 5       r\R
                  S
 5       r\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r\R
                  S 5       rSrg)TestUsecases   c                     [         R                  n[        [        R                  [        R                  45      " U5      nSnSn[
        R                  " X45       H   nU R                  U" U6 U" U6 SU< 35        M"     g )N)r      	   
   r
   zargs )r   andorr   r   int32	itertoolsproductassertEqual)selfpyfunccfuncxsysargss         m/Users/tiagomarins/Projetos/claudeai/copy_bank/venv/lib/python3.13/site-packages/numba/tests/test_usecases.py
test_andorTestUsecases.test_andor   se    ekk5;;/08 ! %%b-DVT]E4Lt:MN .    c                     [         R                  n[        [        R                  [        R                  45      " U5      nSnSn[
        R                  " X45       H  nU R                  U" U6 U" U6 U5        M     g Nr   r   r   d      )r   sum1dr   r   r   r   r   r   r   r   r   ssesr   s         r   
test_sum1dTestUsecases.test_sum1d   `    ekk5;;/08%%b-DVT]E4L$? .r   c                     [         R                  n[        [        R                  [        R                  4SS9" U5      nSnSn[
        R                  " X45       H  nU R                  U" U6 U" U6 U5        M     g )NTforceobjr!   )r   r$   r   r   r   r   r   r   r%   s         r   test_sum1d_pyobjTestUsecases.test_sum1d_pyobj&   sb    U[[%++.>vF%%b-DVT]E4L$? .r   c                     [         R                  n[        [        R                  [        R                  45      " U5      nSnSn[
        R                  " X45       H  nU R                  U" U6 U" U6 U5        M     g r    )r   sum2dr   r   r   r   r   r   r%   s         r   
test_sum2dTestUsecases.test_sum2d1   r*   r   c                     [         R                  n[        [        R                  [        R                  45      " U5      nSnSn[
        R                  " X45       H  nU R                  U" U6 U" U6 U5        M     g r    )r   while_countr   r   r   r   r   r   r%   s         r   test_while_countTestUsecases.test_while_count<   sb    %%ekk5;;/08%%b-DVT]E4L$? .r   c                 B   [         R                  n[        R                  " [        R                  SS5      n[        X"45      " U5      nSnU HO  n[        R                  " USS9n[        R                  " U5      nXg4nU" U6   U R                  Xg[        U5      S9  MQ     g )Nr   A)r   r   r   r"   r   dtypemsg)r   copy_arraysr   Arrayr   r   nparange
empty_likeassertPreciseEqualstr)	r   r   	arraytyper   ndandabr   s	            r   test_copy_arraysTestUsecases.test_copy_arraysG   s    %%KKQ4	i+,V4B		"G,Aa A4D4L##Ac$i#8 r   c                 l   [         R                  n[        R                  " [        R                  SS5      n[        X"45      " U5      nSnU Hd  nUu  pg[        R                  " Xg-  SS9R                  Xg5      n[        R                  " U5      n	X4n
U" U
6   U R                  X[        U
5      S9  Mf     g )N   r9   ))r   r   )r   r   )rM      )      r   r:   r<   )r   copy_arrays2dr   r?   r   r   r@   rA   reshaperB   rC   rD   )r   r   rE   r   rF   rG   d1d2rH   rI   r   s              r   test_copy_arrays2dTestUsecases.test_copy_arrays2dW   s    ''KKQ4	i+,V4-BFB		"'199"AAa A4D4L##Ac$i#8 r   c                     [         R                  n[        [        R                  [        R                  4SS9" U5      nSnSn[
        R                  " X45       H!  u  pVXV4nU R                  U" U6 U" U6 U5        M#     g )NTr,   )r   r   r   )r   string_concatr   r   r   r   r   r   )r   r   r   r   r   xyr   s           r   test_string_concatTestUsecases.test_string_concath   sm    ''U[[%++.>vF%%b-DA4DVT]E4L$? .r   c                 "   [         R                  n[        [        R                  4SS9" U5      nSnU R                  U" U5      U" U5      5        SnU R                  U" U5      U" U5      5        SnU R                  U" U5      U" U5      5        g )NTr,   1234561 )r   
string_lenr   r   pyobjectr   r   r   r   test_strs       r   test_string_lenTestUsecases.test_string_lent   s    $$U^^%5f=)5?;)5?;)5?;r   c                 8   [         R                  n[        [        R                  4S-  SS9" U5      nSnU R                  U" USS5      U" USS5      5        U R                  U" USS5      U" USS5      5        U R                  U" USS5      U" USS5      5        g )	N   Tr,   r^   r   r   rN   rM   )r   string_slicingr   r   rb   r   rc   s       r   test_string_slicing TestUsecases.test_string_slicing   s    ((U^^%)D9&A!Q/xA1FG!Q/xA1FG!Q/xA1FGr   c                    [         R                  n[        [        R                  4SS9" U5      nU R                  U" S5      U" S5      5        [        [        R                  4SS9" U5      nU R                  U" S5      U" S5      5        g )NTr,   r   g?)r   string_conversionr   r   r   r   float32)r   r   r   s      r   test_string_conversion#TestUsecases.test_string_conversion   sl    ++U[[NT26:E!H-U]]$t4V<eCj1r   c                 &   SS K n[        R                  n[        [        R
                  [        R
                  [        R
                  4SS9" U5      nSnSnUR                  nU R                  U" XEU5      U" XEU5      5        SnSnUR                  nU R                  U" XEU5      U" XEU5      5        SnSnUR                  nU R                  U" XEU5      U" XEU5      5        SnSnUR                  nU R                  U" XEU5      U" XEU5      5        g )Nr   Tr,   123456)	operatorr   string_comparisonr   r   rb   eqr   ne)r   rt   r   r   	test_str1	test_str2ops          r   test_string_comparisons$TestUsecases.test_string_comparisons   s   ++U^^U^^U^^D!##)+ 		[[	b9)+	- 		[[	b9)+	- 		[[	b9)+	- 		[[	b9)+	-r   c                     [         R                  n[        [        R                  45      " U5      nSnU H  nU4nU R                  U" U6 U" U6 U5        M!     g )N)g      r   g      ?)r   blackscholes_cndr   r   rn   r   )r   r   r   dsdr   s         r   test_blackscholes_cnd"TestUsecases.test_blackscholes_cnd   sS    **emm%&v.A4DVT]E4L$? r    N)__name__
__module____qualname____firstlineno__r   run_test_in_subprocessr   r(   r.   r2   r6   rJ   rU   r[   re   rj   ro   r{   r   __static_attributes__r   r   r   r	   r	      sd    $$	O %	O $$@ %@ $$@ %@ $$@ %@ $$@ %@ $$9 %9 $$9 %9  $$	@ %	@ $$	< %	< $$H %H $$2 %2 $$- %-< $$@ %@r   r	   __main__)r   unittestnumpyr@   numbar   r   
numba.corer   numba.testsr   numba.tests.supportr   r	   r   mainr   r   r   <module>r      sC           (q@8 q@h zMMO r   