U
    }h	                     @   sX   d dl Zd dlZd dlmZ d dlmZmZ dZi i i e	dddZ
dd Zd	d
 ZdS )    N)KDTree)Paralleldelayed   )p)Z	euclideanZ	manhattanZ	chebyshevZ	minkowskic               	   C   s:   t jdddgtd} tjtdd t|  W 5 Q R X dS )z/Check that we do not accept object dtype array.)      r   )r      )r	   r	   r   r   )Zdtypez(setting an array element with a sequence)matchN)nparrayobjectpytestZraises
ValueErrorr   )X r   H/tmp/pip-unpacked-wheel-ig1s1lm8/sklearn/neighbors/tests/test_kd_tree.pytest_array_object_type   s    r   c                     sJ   t jd} | d}t|dd tddd fddd|g D  d	S )
zgMake sure that KDTree queries work when joblib memmaps.

    Non-regression test for #21685 and #21228.r   )
   r   r   )Z	leaf_sizer   )Zn_jobsZ
max_nbytesc                 3   s   | ]}t  j|V  qd S )N)r   query).0datatreer   r   	<genexpr>   s     z4test_kdtree_picklable_with_joblib.<locals>.<genexpr>N)r   randomZRandomStateZrandom_sampler   r   )rngr   r   r   r   !test_kdtree_picklable_with_joblib   s    
r   )Znumpyr   r   Zsklearn.neighbors._kd_treer   Zsklearn.utils.parallelr   r   Z	DIMENSIONdictZMETRICSr   r   r   r   r   r   <module>   s   