Ë
    7Š·jd  ã                   óX   — d dl Z d dlZd dlZd dlZd dlmZ d dlmZmZm	Z	  G d„ d«      Z
y)é    N)Úrandom)Úassert_Úassert_array_equalÚassert_raisesc                   óú  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zej                  j!                  ej$                  j&                  dk(  d¬«      ej                  j)                  dej,                  ej.                  ej0                  ej2                  ej4                  ej6                  ej8                  ej:                  ej<                  ej>                  j@                  g
«      de!ddfd„«       «       Z"y)ÚTestRegressionc                 ó.  — t        j                  ddd«      D ]{  }t        j                  j	                  |dd«      }t        t        j                  |t         j                   kD  «      xr& t        j                  |t         j                  k  «      «       Œ} y )Ng      Àg      @é   é   é2   )ÚnpÚlinspacer   ÚmtrandÚvonmisesr   ÚallÚpi)ÚselfÚmuÚrs      úX/root/workspace/.venv/lib/python3.12/site-packages/numpy/random/tests/test_regression.pyÚtest_VonMises_rangez"TestRegression.test_VonMises_range   si   € ô —+‘+˜c 2 qÓ)ò 	?ˆBÜ—‘×&Ñ& r¨1¨bÓ1ˆAÜ”B—F‘F˜1¤§¡˜v™:Ó&Ò=¬2¯6©6°!´r·u±u±*Ó+=Õ>ñ	?ó    c           
      óâ  — t        t        j                  t        j                  j	                  dddd¬«      dk  «      «       t        t        j                  t        j                  j	                  dddd¬«      dkD  «      «       dg}t
        j                  d	kD  }|r$t
        j                  d
k7  r|j                  d«       |D ]*  }t        t        j                  j                  |Ž dkD  «       Œ, y )Né   é   é   é
   ©Úsizeé   r   )éþÿ r!   r!   l        Úwin32)ì   þÿÿr#   r#   )	r   r   r   r   ÚhypergeometricÚsysÚmaxsizeÚplatformÚappend)r   ÚargsÚ	is_64bitsÚargs       r   Útest_hypergeometric_rangez(TestRegression.test_hypergeometric_range   sÀ   € ä”—‘”r—y‘y×/Ñ/°°2°rÀÐ/ÓCÀaÑGÓHÔIÜ”—‘”r—y‘y×/Ñ/°°A°rÀÐ/ÓCÀaÑGÓHÔIð .ð
ˆô —K‘K %Ñ'ˆ	ÙœŸ™¨Ò0à�K‰KÐ9Ô:Øò 	8ˆCÜ”B—I‘I×,Ñ,¨cÐ2°QÑ6Õ7ñ	8r   c                 óL  — d}t         j                  j                  d«       t         j                  j                  d|¬«      }t        j                  |dk(  «      |z  }d|d›d�}t        |d	kD  |«       t        j                  |d
k(  «      |z  }d|d›d�}t        |dk  |«       y )Néè  r   gš™™™™™é?r   r   zFrequency was Úfz, should be > 0.45gÍÌÌÌÌÌÜ?é   z, should be < 0.23gq=
×£pÍ?)r   r   ÚseedÚ	logseriesÚsumr   )r   ÚNÚrvsnÚfreqÚmsgs        r   Útest_logseries_convergencez)TestRegression.test_logseries_convergence$   sž   € àˆÜ
�	‰	�‰�qÔÜ�y‰y×"Ñ" 3¨QÐ"Ó/ˆô �v‰v�d˜a‘iÓ  1Ñ$ˆØ˜t A˜hÐ&8Ð9ˆÜ��t‘˜SÔ!ä�v‰v�d˜a‘iÓ  1Ñ$ˆØ˜t A˜hÐ&8Ð9ˆÜ��t‘˜SÕ!r   c                 ó@  — g d¢g d¢g d¢g d¢fD ]�  }t         j                  j                  d«      }t        |«      }|j	                  |«       t        j
                  |d   |d   |d   |d	   gt        ¬
«      }t        t        j
                  |t        ¬
«      |«       Œ� y )N)r   r0   r   N)©r   r   ©r0   r0   ©r   r   N)r   r;   r<   N)r:   r0   r   Ni90  r   r   r   r0   ©Údtype)r   r   ÚRandomStateÚlistÚshuffleÚarrayÚobjectr   )r   ÚtÚrngÚshuffledÚexpecteds        r   Útest_shuffle_mixed_dimensionz+TestRegression.test_shuffle_mixed_dimension4   sŠ   € â!Ú0Ú+Ú&ð(ò 	KˆAô —)‘)×'Ñ'¨Ó.ˆCÜ˜A“wˆHØ�K‰K˜Ô!Ü—x‘x  1¡ q¨¡t¨Q¨q©T°1°Q±4Ð 8ÄÔGˆHÜœrŸx™x¨¼Ô?ÀÕJñ	Kr   c           
      óV  — t         j                  j                  «       }t        j                  g d¢«      }t	        d«      D ]f  }t         j                  j                  |«       |j                  d«       t        |j                  ddt        j                  d«      dz  ¬«      |«       Œh y )N)
r   é   é   r0   r   é	   r    rK   r   r   r   iá  r   g      $@)r   Úp)	r   r   r?   rB   Úranger1   r   ÚchoiceÚones)r   ÚmÚresÚis       r   Útest_call_within_randomstatez+TestRegression.test_call_within_randomstate@   sy   € ä�I‰I×!Ñ!Ó#ˆÜ�h‰hÒ5Ó6ˆÜ�q“ò 	PˆAÜ�I‰I�N‰N˜1ÔØ�F‰F�4ŒLä˜qŸx™x¨°´r·w±w¸r³{ÀSÑ7H˜xÓIÈ3ÕOñ		Pr   c                 ó.  — t         j                  j                  dgdggd¬«       t         j                  j                  dgdggt        j                  d«      ¬«       t         j                  j                  dgdggt        j                  d«      ¬«       y )Nr   r   r   )r   r   Úmultivariate_normalÚint_Úint64)r   s    r   Ú#test_multivariate_normal_size_typesz2TestRegression.test_multivariate_normal_size_typesJ   sq   € ô 	�	‰	×%Ñ% q c¨Q¨C¨5°qÐ%Ô9Ü
�	‰	×%Ñ% q c¨Q¨C¨5´r·w±w¸q³zÐ%ÔBÜ
�	‰	×%Ñ% q c¨Q¨C¨5´r·x±xÀ³{Ð%ÕCr   c                 óì   — t         j                  j                  d«       t         j                  j                  ddd¬«      }t	        t        j
                  t        j                  |«      «       d«       y )NiÒ–Ig-Cëâ6?éd   r   zNans in np.random.beta)r   r   r1   Úbetar   ÚanyÚisnan)r   Úxs     r   Útest_beta_small_parametersz)TestRegression.test_beta_small_parametersR   sK   € ô 	�	‰	�‰�zÔ"Ü�I‰I�N‰N˜6 6°ˆNÓ4ˆÜ”B—F‘Fœ2Ÿ8™8 A›;Ó'Ð'Ð)AÕBr   c                 ó¸  — t         j                  j                  d«       g d¢}g d¢}t         j                  t         j                  t         j
                  fD ]�  }t        j                  ||¬«      t        |«      z  }t         j                  j                  ||¬«      }t        ||v «       t        t        t         j                  j                  ||dz  ¬«       Œƒ y )NéÒ  )r   r0   r   )r    r    r0   r=   )rM   gÍÌÌÌÌÌì?)r   r   r1   Úfloat16Úfloat32Úfloat64rB   r3   rO   r   r   Ú
ValueError)r   ÚaÚcountsÚdtÚprobsÚcs         r   Ú"test_choice_sum_of_probs_tolerancez1TestRegression.test_choice_sum_of_probs_toleranceY   s›   € ô 	�	‰	�‰�tÔÚˆÚˆÜ—*‘*œbŸj™j¬"¯*©*Ð4ò 	JˆBÜ—H‘H˜V¨2Ô.´°V³Ñ<ˆEÜ—	‘	× Ñ   eÐ Ó,ˆAÜ�A˜�FŒOÜœ*¤b§i¡i×&6Ñ&6¸¸UÀS¹[ÖIñ		Jr   c                 óö   — t         j                  j                  d«       t        j                  ddg«      }t	        d«      D ]!  }t         j                  j                  |«       Œ# dd l}|j                  «        y )Nrb   rg   Áè  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar[   r   )r   r   r1   rB   rN   rA   ÚgcÚcollect©r   rg   Ú_ro   s       r   Ú1test_shuffle_of_array_of_different_length_stringsz@TestRegression.test_shuffle_of_array_of_different_length_stringsf   sZ   € ô 	�	‰	�‰�tÔä�H‰H�c˜:Ð&Ó'ˆä�s“ò 	!ˆAÜ�I‰I×Ñ˜aÕ ð	!ó 	Ø
�
‰
�r   c                 óN  — t         j                  j                  d«       t        j                  t        j                  d«      t        j                  d«      gt
        ¬«      }t        d«      D ]!  }t         j                  j                  |«       Œ# dd l}|j                  «        y )Nrb   r   r    r=   r.   r   )
r   r   r1   rB   ÚarangerC   rN   rA   ro   rp   rq   s       r   Ú test_shuffle_of_array_of_objectsz/TestRegression.test_shuffle_of_array_of_objectsu   sl   € ô 	�	‰	�‰�tÔÜ�H‰H”b—i‘i “l¤B§I¡I¨a£LÐ1¼Ô@ˆä�t“ò 	!ˆAÜ�I‰I×Ñ˜aÕ ð	!ó 	Ø
�
‰
�r   c                 óš  —  G d„ dt         j                  «      }t         j                  j                  d«      }t        j                  d«      j                  |«      }|j                  |«      }t        |t        j                  g d¢«      «       t        |t        j                  d«      j                  |«      «        G d„ d«      }t         j                  j                  d«      } |«       }|j                  |«      }t        |t        j                  g d¢«      «       t        |j                  «       t        j                  d	«      «       y )
Nc                   ó   — e Zd Zy)ú3TestRegression.test_permutation_subclass.<locals>.NN)Ú__name__Ú
__module__Ú__qualname__© r   r   r4   ry   „   s   „ Ør   r4   r   r   )r   r0   r   c                   ó8   — e Zd Z ej                  d«      Zdd„Zy)ú3TestRegression.test_permutation_subclass.<locals>.Mr
   Nc                 ó   — | j                   S )N)rg   )r   r>   Úcopys      r   Ú	__array__z=TestRegression.test_permutation_subclass.<locals>.M.__array__�   s   € Ø—v‘v�r   )NN)rz   r{   r|   r   ru   rg   r‚   r}   r   r   ÚMr   �   s   „ Ø�—	‘	˜!“ˆAôr   rƒ   )r0   r   r    r   r   r
   )
r   Úndarrayr   r?   ru   ÚviewÚpermutationr   rB   r‚   )r   r4   rE   ÚorigÚpermrƒ   rQ   s          r   Útest_permutation_subclassz(TestRegression.test_permutation_subclassƒ   sÞ   € ô	”—
‘
ô 	ô �i‰i×#Ñ# AÓ&ˆÜ�y‰y˜‹|× Ñ  Ó#ˆØ�‰˜tÓ$ˆÜ˜4¤§¡ª)Ó!4Ô5Ü˜4¤§¡¨1£×!2Ñ!2°1Ó!5Ô6÷	ñ 	ô �i‰i×#Ñ# AÓ&ˆÙ‹CˆØ�‰˜qÓ!ˆÜ˜4¤§¡ª/Ó!:Ô;Ü˜1Ÿ;™;›=¬"¯)©)°A«,Õ7r   r0   zPython running -OO)ÚreasonÚclsÚreturnNc                 óÈ   — t        |d«      sJ ‚	 t        j                  |«       y # t        $ r2 t	        j
                  d|j                  › d|j                  › �«       Y y w xY w)NÚ__text_signature__zinvalid signature: ú.)ÚhasattrÚinspectÚ	signaturerf   ÚpytestÚfailr{   r|   )r   r‹   s     r   Útest_inspect_signaturez%TestRegression.test_inspect_signature™   s`   € ô" �sÐ0Ô1Ð1Ð1ð	SÜ×Ñ˜cÕ"øÜò 	SÜ�K‰KÐ-¨c¯n©nÐ-=¸Q¸s×?OÑ?OÐ>PÐQÖRð	Sús   �& ¦8A!Á A!)#rz   r{   r|   r   r,   r8   rH   rT   rY   r`   rl   rs   rv   r‰   r“   ÚmarkÚskipifr%   ÚflagsÚoptimizeÚparametrizer   Ú	GeneratorÚMT19937ÚPCG64Ú	PCG64DXSMÚPhiloxr?   ÚSFC64ÚBitGeneratorÚSeedSequenceÚbit_generatorÚSeedlessSeedSequenceÚtyper•   r}   r   r   r   r      s   „ ò?ò8ò "ò 
KòPòDòCòJòòò8ð, ‡[�[×Ñ˜Ÿ	™	×*Ñ*¨aÑ/Ð8LÐÓMØ‡[�[×ÑØà×ÑØ�N‰NØ�L‰LØ×ÑØ�M‰MØ×ÑØ�L‰LØ×ÑØ×ÑØ× Ñ ×5Ñ5ð	
óðS¨$ð S°4ò Sóó Nñ Sr   r   )r‘   r%   r“   Únumpyr   r   Únumpy.testingr   r   r   r   r}   r   r   ú<module>r¨      s(   ðÛ Û 
ã ã Ý ß DÑ D÷cSò cSr   