
    0Ph	                     N    d dl Zd dlmZmZ d dlmZ d Zd Zd Z	d Z
d Zd	 ZdS )
    N)assert_array_almost_equalassert_array_equalmurmurhash3_32c                     t          d          dk    sJ t          dd          dk    sJ t          dd          dk    sJ t          dd          dk    sJ t          ddd	          dk    sJ t          ddd	          dk    sJ t          dd
          dk    sJ t          ddd
	          dk    sJ t          ddd
	          dk    sJ d S )N   iq	2r   )seed*   i#UFpositive)r	   r   Tl   #z& r        c/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/sklearn/utils/tests/test_murmurhash.pytest_mmhash3_intr   
   s   !	))))!!$$$	1111!"%%%4444!e,,,	9999!!e444	AAAA!"u555DDDD!d+++y8888!!d333y@@@@!"t444
BBBBBBr   c                  f   t           j                            d          } |                     ddd                              t           j                  }|                    d          }dD ]_t          j        fd|j        D                       }|                    |j	                  }t          t          |          |           `dD ]at          j        fd	|j        D                       }|                    |j	                  }t          t          |d
          |           bd S )Nr
   iziE    )size)r         )r   r
   c                 J    g | ]}t          t          |                     S r   )r   int.0kr	   s     r   
<listcomp>z*test_mmhash3_int_array.<locals>.<listcomp>   s)    MMMa^CFFD99MMMr   c                 4    g | ]}t          |d           S )Tr   r   r   s     r   r   z*test_mmhash3_int_array.<locals>.<listcomp>#   s(    WWW^AtdCCCWWWr   Tr   )nprandomRandomStaterandintastypeint32reshapearrayflatshaper   r   )rngkeysexpectedr	   s      @r   test_mmhash3_int_arrayr*      s3   
)


#
#C;;xi;88??IID<<	""D A A8MMMM49MMMNN##DJ//>$55x@@@@ P P8WWWWTYWWWXX##DJ//>$tDDDhOOOOP Pr   c                      t          dd          dk    sJ t          dd          dk    sJ t          ddd          dk    sJ t          ddd          d	k    sJ d S )
Ns   foor    ĥr
   H/Tr       DKm    H^b r   r   r   r   test_mmhash3_bytesr0   (   s~    &!$$
2222&"%%4444&!d333zAAAA&"t444
BBBBBBr   c                      t          dd          dk    sJ t          dd          dk    sJ t          ddd          dk    sJ t          ddd          d	k    sJ d S )
Nfoor   r,   r
   r-   Tr   r.   r/   r   r   r   r   test_mmhash3_unicoder3   0   s~    %##z1111%$$3333%T222j@@@@%d333zAAAAAAr   c                      t                      } t          d          D ]#}t          d|z  d          }|| vs
J d            $d S )Nd    r   z'Found collision on growing empty string)setranger   )previous_hashesihs      r   test_no_collision_on_byte_ranger<   8   s^    eeO3ZZ S S37A&&''')R''''S Sr   c                  >   d\  } }t          j        | t           j                  }t          |          D ]$}|t	          |d          | z  xx         dz  cc<   %||z  }t          j        | d| z            }t          ||z  t          j        |           d           d S )N)
   i )dtypeTr   r   g      ?r   )r   zerosfloat64r8   r   fullr   ones)n_bins	n_samplesbinsr:   meansr)   s         r   test_uniform_distributionrH   ?   s    "FI8F"*---D9 = =^A---67771<77779EwvsV|,,Heh.CCCCCr   )numpyr   numpy.testingr   r   sklearn.utils.murmurhashr   r   r*   r0   r3   r<   rH   r   r   r   <module>rL      s        G G G G G G G G 3 3 3 3 3 3C C CP P P C C CB B BS S S
D 
D 
D 
D 
Dr   