§
    2@ÄjÅ  ã                   óœ   — d dl Z d dlZd dlZd dlmZmZ d dlmZ d dl	m
Z
 d dlmZ  G d„ de¦  «        Zedk    r ej        ¦   «          dS dS )	é    N)ÚjitÚnjit)Útypes)Úusecases)ÚTestCasec                   ó®  — e Zd Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Z	ej        d„ ¦   «         Z
ej        d„ ¦   «         Zej        d„ ¦   «         Zej        d	„ ¦   «         Zej        d
„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         ZdS )ÚTestUsecasesc                 óò   — t           j        } t          t          j        t          j        f¦  «        |¦  «        }d}d}t          j        ||¦  «        D ]"}|                       ||Ž  ||Ž d|›�¦  «         Œ#d S )N)éÿÿÿÿr   é   é	   é
   é   zargs )r   Úandorr   r   Úint32Ú	itertoolsÚproductÚassertEqual)ÚselfÚpyfuncÚcfuncÚxsÚysÚargss         úJC:\Projects\Historical\venv\Lib\site-packages\numba/tests/test_usecases.pyÚ
test_andorzTestUsecases.test_andor   s�   € å”ˆØ0••e”k¥5¤;Ð/Ñ0Ô0°Ñ8Ô8ˆð !ˆØ ˆåÔ% b¨"Ñ-Ô-ð 	Oð 	OˆDØ×Ò˜V˜V T˜]¨E¨E°4¨L¨LÀtÀtÐ:MÑNÔNÐNÐNð	Oð 	Oó    c                 óì   — t           j        } t          t          j        t          j        f¦  «        |¦  «        }d}d}t          j        ||¦  «        D ]}|                       ||Ž  ||Ž |¦  «         Œ d S ©N©r   r   r   éd   éÈ   )r   Úsum1dr   r   r   r   r   r   ©r   r   r   ÚssÚesr   s         r   Ú
test_sum1dzTestUsecases.test_sum1d   ó„   € å”ˆØ0••e”k¥5¤;Ð/Ñ0Ô0°Ñ8Ô8ˆàˆØˆåÔ% b¨"Ñ-Ô-ð 	@ð 	@ˆDØ×Ò˜V˜V T˜]¨E¨E°4¨L¸$Ñ?Ô?Ð?Ð?ð	@ð 	@r   c                 óð   — t           j        } t          t          j        t          j        fd¬¦  «        |¦  «        }d}d}t          j        ||¦  «        D ]}|                       ||Ž  ||Ž |¦  «         Œ d S )NT©Úforceobjr    )r   r#   r   r   r   r   r   r   r$   s         r   Útest_sum1d_pyobjzTestUsecases.test_sum1d_pyobj&   s‰   € å”ˆØ>••U”[¥%¤+Ð.¸Ð>Ñ>Ô>¸vÑFÔFˆàˆØˆåÔ% b¨"Ñ-Ô-ð 	@ð 	@ˆDØ×Ò˜V˜V T˜]¨E¨E°4¨L¸$Ñ?Ô?Ð?Ð?ð	@ð 	@r   c                 óì   — t           j        } t          t          j        t          j        f¦  «        |¦  «        }d}d}t          j        ||¦  «        D ]}|                       ||Ž  ||Ž |¦  «         Œ d S r   )r   Úsum2dr   r   r   r   r   r   r$   s         r   Ú
test_sum2dzTestUsecases.test_sum2d1   r(   r   c                 óì   — t           j        } t          t          j        t          j        f¦  «        |¦  «        }d}d}t          j        ||¦  «        D ]}|                       ||Ž  ||Ž |¦  «         Œ d S r   )r   Úwhile_countr   r   r   r   r   r   r$   s         r   Útest_while_countzTestUsecases.test_while_count<   s…   € åÔ%ˆØ0••e”k¥5¤;Ð/Ñ0Ô0°Ñ8Ô8ˆàˆØˆåÔ% b¨"Ñ-Ô-ð 	@ð 	@ˆDØ×Ò˜V˜V T˜]¨E¨E°4¨L¸$Ñ?Ô?Ð?Ð?ð	@ð 	@r   c                 óP  — t           j        }t          j        t          j        dd¦  «        } t          ||f¦  «        |¦  «        }d}|D ]Z}t          j        |d¬¦  «        }t          j        |¦  «        }||f} ||Ž  |  	                    ||t          |¦  «        ¬¦  «         Œ[d S )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_arrayszTestUsecases.test_copy_arraysG   s´   € åÔ%ˆÝ”K¥¤¨Q°Ñ4Ô4ˆ	Ø,•�i Ð+Ñ,Ô,¨VÑ4Ô4ˆàˆàð 	9ð 	9ˆBÝ”	˜" GÐ,Ñ,Ô,ˆAÝ”˜aÑ Ô ˆAØ�a�4ˆDàˆE�4ˆLˆLØ×#Ò# A q­c°$©i¬iÐ#Ñ8Ô8Ð8Ð8ð	9ð 	9r   c                 óˆ  — t           j        }t          j        t          j        dd¦  «        } t          ||f¦  «        |¦  «        }d}|D ]v}|\  }}t          j        ||z  d¬¦  «                             ||¦  «        }t          j	        |¦  «        }	||	f}
 ||
Ž  |  
                    ||	t          |
¦  «        ¬¦  «         Œwd S )Né   r4   ))r   r   )r   r   )rG   é   )é   é   r   r5   r7   )r   Úcopy_arrays2dr   r:   r   r   r;   r<   Úreshaper=   r>   r?   )r   r   r@   r   rA   rB   Úd1Úd2rC   rD   r   s              r   Útest_copy_arrays2dzTestUsecases.test_copy_arrays2dW   sÑ   € åÔ'ˆÝ”K¥¤¨Q°Ñ4Ô4ˆ	Ø,•�i Ð+Ñ,Ô,¨VÑ4Ô4ˆà-ˆàð 	9ð 	9ˆBØ‰FˆB�Ý”	˜"˜r™'¨Ð1Ñ1Ô1×9Ò9¸"¸bÑAÔAˆAÝ”˜aÑ Ô ˆAØ�a�4ˆDàˆE�4ˆLˆLØ×#Ò# A q­c°$©i¬iÐ#Ñ8Ô8Ð8Ð8ð	9ð 	9r   c                 óþ   — t           j        } t          t          j        t          j        fd¬¦  «        |¦  «        }d}d}t          j        ||¦  «        D ]&\  }}||f}|                       ||Ž  ||Ž |¦  «         Œ'd S )NTr*   )r   r   r   )r   Ústring_concatr   r   r   r   r   r   )r   r   r   r   r   ÚxÚyr   s           r   Útest_string_concatzTestUsecases.test_string_concath   s—   € åÔ'ˆØ>••U”[¥%¤+Ð.¸Ð>Ñ>Ô>¸vÑFÔFˆàˆØˆåÔ% b¨"Ñ-Ô-ð 	@ð 	@‰DˆAˆqØ�a�4ˆDØ×Ò˜V˜V T˜]¨E¨E°4¨L¸$Ñ?Ô?Ð?Ð?ð	@ð 	@r   c                 ód  — t           j        } t          t          j        fd¬¦  «        |¦  «        }d}|                       ||¦  «         ||¦  «        ¦  «         d}|                       ||¦  «         ||¦  «        ¦  «         d}|                       ||¦  «         ||¦  «        ¦  «         d S )NTr*   Ú123456Ú1Ú )r   Ú
string_lenr   r   Úpyobjectr   ©r   r   r   Útest_strs       r   Útest_string_lenzTestUsecases.test_string_lent   s¸   € åÔ$ˆØ5••U”^Ð%°Ð5Ñ5Ô5°fÑ=Ô=ˆàˆØ×Ò˜˜ Ñ)Ô)¨5¨5°©?¬?Ñ;Ô;Ð;ØˆØ×Ò˜˜ Ñ)Ô)¨5¨5°©?¬?Ñ;Ô;Ð;ØˆØ×Ò˜˜ Ñ)Ô)¨5¨5°©?¬?Ñ;Ô;Ð;Ð;Ð;r   c                 óz  — t           j        } t          t          j        fdz  d¬¦  «        |¦  «        }d}|                       ||dd¦  «         ||dd¦  «        ¦  «         |                       ||dd¦  «         ||dd¦  «        ¦  «         |                       ||dd¦  «         ||dd¦  «        ¦  «         d S )	Né   Tr*   rV   r   r   rH   rG   )r   Ústring_slicingr   r   rZ   r   r[   s       r   Útest_string_slicingz TestUsecases.test_string_slicing€   sÑ   € åÔ(ˆØ9••U”^Ð%¨Ñ)°DÐ9Ñ9Ô9¸&ÑAÔAˆàˆØ×Ò˜˜ ¨!¨QÑ/Ô/°°°xÀÀAÑ1FÔ1FÑGÔGÐGØ×Ò˜˜ ¨!¨QÑ/Ô/°°°xÀÀAÑ1FÔ1FÑGÔGÐGØ×Ò˜˜ ¨!¨QÑ/Ô/°°°xÀÀAÑ1FÔ1FÑGÔGÐGÐGÐGr   c                 óR  — t           j        } t          t          j        fd¬¦  «        |¦  «        }|                       |d¦  «         |d¦  «        ¦  «          t          t          j        fd¬¦  «        |¦  «        }|                       |d¦  «         |d¦  «        ¦  «         d S )NTr*   r   gš™™™™™ñ?)r   Ústring_conversionr   r   r   r   Úfloat32)r   r   r   s      r   Útest_string_conversionz#TestUsecases.test_string_conversionŠ   s�   € åÔ+ˆà2••U”[�N¨TÐ2Ñ2Ô2°6Ñ:Ô:ˆØ×Ò˜˜ ™œ E E¨!¡H¤HÑ-Ô-Ð-à4••U”]Ð$¨tÐ4Ñ4Ô4°VÑ<Ô<ˆØ×Ò˜˜ ™œ e e¨C¡j¤jÑ1Ô1Ð1Ð1Ð1r   c                 óT  — dd l }t          j        } t          t          j        t          j        t          j        fd¬¦  «        |¦  «        }d}d}|j        }|                       ||||¦  «         ||||¦  «        ¦  «         d}d}|j        }|                       ||||¦  «         ||||¦  «        ¦  «         d}d}|j        }|                       ||||¦  «         ||||¦  «        ¦  «         d}d}|j        }|                       ||||¦  «         ||||¦  «        ¦  «         d S )Nr   Tr*   Ú123Ú456)	Úoperatorr   Ústring_comparisonr   r   rZ   Úeqr   Úne)r   ri   r   r   Ú	test_str1Ú	test_str2Úops          r   Útest_string_comparisonsz$TestUsecases.test_string_comparisons”   s„  € àˆˆˆÝÔ+ˆð#••U”^¥U¤^µU´^ÐDØ!ð#ñ #ô #Ø#)ñ+ô +ˆð ˆ	Øˆ	ØŒ[ˆØ×Ò˜˜ 	¨9°bÑ9Ô9ØˆE�)˜Y¨Ñ+Ô+ñ	-ô 	-ð 	-ð ˆ	Øˆ	ØŒ[ˆØ×Ò˜˜ 	¨9°bÑ9Ô9ØˆE�)˜Y¨Ñ+Ô+ñ	-ô 	-ð 	-ð ˆ	Øˆ	ØŒ[ˆØ×Ò˜˜ 	¨9°bÑ9Ô9ØˆE�)˜Y¨Ñ+Ô+ñ	-ô 	-ð 	-ð ˆ	Øˆ	ØŒ[ˆØ×Ò˜˜ 	¨9°bÑ9Ô9ØˆE�)˜Y¨Ñ+Ô+ñ	-ô 	-ð 	-ð 	-ð 	-r   c                 ó²   — t           j        } t          t          j        f¦  «        |¦  «        }d}|D ]"}|f}|                       ||Ž  ||Ž |¦  «         Œ#d S )N)g      à¿r   g      à?)r   Úblackscholes_cndr   r   rd   r   )r   r   r   ÚdsÚdr   s         r   Útest_blackscholes_cndz"TestUsecases.test_blackscholes_cnd³   sv   € åÔ*ˆØ&••e”mÐ%Ñ&Ô& vÑ.Ô.ˆàˆàð 	@ð 	@ˆAØ�4ˆDØ×Ò˜V˜V T˜]¨E¨E°4¨L¸$Ñ?Ô?Ð?Ð?ð	@ð 	@r   N)Ú__name__Ú
__module__Ú__qualname__r   Úrun_test_in_subprocessr   r'   r,   r/   r2   rE   rO   rT   r]   ra   re   rp   ru   © r   r   r	   r	      sÁ  € € € € € ð Ô$ð	Oð 	Oñ %Ô$ð	Oð Ô$ð@ð @ñ %Ô$ð@ð Ô$ð@ð @ñ %Ô$ð@ð Ô$ð@ð @ñ %Ô$ð@ð Ô$ð@ð @ñ %Ô$ð@ð Ô$ð9ð 9ñ %Ô$ð9ð Ô$ð9ð 9ñ %Ô$ð9ð  Ô$ð	@ð 	@ñ %Ô$ð	@ð Ô$ð	<ð 	<ñ %Ô$ð	<ð Ô$ðHð Hñ %Ô$ðHð Ô$ð2ð 2ñ %Ô$ð2ð Ô$ð-ð -ñ %Ô$ð-ð< Ô$ð@ð @ñ %Ô$ð@ð @ð @r   r	   Ú__main__)r   ÚunittestÚnumpyr;   Únumbar   r   Ú
numba.corer   Únumba.testsr   Únumba.tests.supportr   r	   rv   Úmainrz   r   r   ú<module>rƒ      sÕ   ðØ Ð Ð Ð Ø €€€Ø Ð Ð Ð à Ð Ð Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  Ø (Ð (Ð (Ð (Ð (Ð (ðq@ð q@ð q@ð q@ð q@�8ñ q@ô q@ð q@ðh ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr   