
    BwgV                     H    d dl Z d dlmZmZmZ d dlmZ d dlZ G d d      Zy)    N)assert_assert_array_equalassert_raises)randomc                   N    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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      Y/var/www/horilla/myenv/lib/python3.12/site-packages/numpy/random/tests/test_regression.pytest_VonMises_rangez"TestRegression.test_VonMises_range   si     ++c2q) 	?B&&r1b1ABFF1v:&=266!ruu*+=>	?    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    ryy//2r/CaGHIryy//Ar/CaGHI .
 KK%'	0KK9: 	8CBII,,c2Q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yy""3Q"/ vvdai 1$tAh&89tS!vvdai 1$tAh&89tS!r   c                 H   g dg dg dg dfD ]  }t         j                  j                  d       t        |      }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   r1   listshufflearrayobjectr   )r   tshuffledexpecteds       r   test_shuffle_mixed_dimensionz+TestRegression.test_shuffle_mixed_dimension2   s    !0+&( 	KA IINN5!AwHNN8$xx1qtQqT1Q4 8GHrxx?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    rI   r   r   r   i  r   g      $@)r   p)	r   r   RandomStaterA   ranger1   r   choiceones)r   mresis       r   test_call_within_randomstatez+TestRegression.test_call_within_randomstate>   sx    II!!#hh56q 	NAIINN1FF4Lqxxrwwr{3xGM		N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_typesH   sq     			%%qcQC5q%9
		%%qcQC5rwwqz%B
		%%qcQC5rxx{%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_parametersP   sK     			z"IINN66N4BFF288A;'')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=   )rK   g?)r   r   r1   float16float32float64rA   r3   rN   r   r   
ValueError)r   acountsdtprobscs         r   "test_choice_sum_of_probs_tolerancez1TestRegression.test_choice_sum_of_probs_toleranceW   s     			t**bjj"**4 	HBHHV2.V<E		  e ,AAFO*bii&6&6U3YG		Hr   c                     t         j                  j                  d       t        j                  ddg      }t	        d      D ]!  }t         j                  j                  |       # dd l}|j                          y )Nra   rf     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarZ   r   )r   r   r1   rA   rM   r@   gccollectr   rf   _rn   s       r   1test_shuffle_of_array_of_different_length_stringsz@TestRegression.test_shuffle_of_array_of_different_length_stringsd   sZ     			tHHc:&'s 	!AII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 )Nra   r   r    r=   r.   r   )
r   r   r1   rA   arangerB   rM   r@   rn   ro   rp   s       r    test_shuffle_of_array_of_objectsz/TestRegression.test_shuffle_of_array_of_objectss   sl     			tHHbiilBIIaL1@t 	!AIIa 	! 	


r   c                     G d dt         j                        }t         j                  j                  d       t        j                  d      j                  |      }t         j                  j                  |      }t        |t        j                  g d             t        |t        j                  d      j                  |              G d d      }t         j                  j                  d        |       }t         j                  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   rx      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)rf   )r   r>   copys      r   	__array__z=TestRegression.test_permutation_subclass.<locals>.M.__array__   s    vvr   )NN)ry   rz   r{   r   rt   rf   r   r|   r   r   Mr~      s    		!Ar   r   )r0   r   r    r   r   r
   )
r   ndarrayr   r1   rt   viewpermutationr   rA   r   )r   r4   origpermr   rP   s         r   test_permutation_subclassz(TestRegression.test_permutation_subclass   s    	

 	 			qyy|  #yy$$T*4)!4541!2!21!56	 	 			qCyy$$Q'4/!:;1;;="))A,7r   N)ry   rz   r{   r   r,   r8   rF   rS   rX   r_   rk   rr   ru   r   r|   r   r   r   r   	   s>    ?8 " 
KNDCH8r   r   )	r%   numpy.testingr   r   r   numpyr   r   r   r|   r   r   <module>r      s&    
   L8 L8r   