o
    iC	                     @   sr   d dl Z d dlmZ d dlZd dlmZ d dlmZmZ d dl	m
Z
 dd Zejdg d	d
d Zdd ZdS )    N)chain)config_context)gen_even_slicesget_chunk_n_rows)assert_array_equalc                     s6   t d tt fddtddD  } t |  d S )N
   c                    s   g | ]} | qS  r   ).0sliceZ
some_ranger   p/var/www/html/eduruby.in/lip-sync/lip-sync-env/lib/python3.10/site-packages/sklearn/utils/tests/test_chunking.py
<listcomp>   s    z(test_gen_even_slices.<locals>.<listcomp>   )rangelistr   r   r   )Zjoined_ranger   r   r   test_gen_even_slices   s    r   )	row_bytes
max_n_rowsworking_memoryexpected))   N   r   )r   NgG?  )r   Nr     )r   Nr   r   )r   N   i   )r      r   r   )i   Nr   r   c              	   C   s   t   t dt t| ||d}W d    n1 sw   Y  ||ks'J t|t|u s1J t|d9 t   t dt t| |d}W d    n1 sRw   Y  ||ks]J t|t|u sgJ W d    d S 1 srw   Y  d S )Nerrorr   r   r   r   r   r   )warningscatch_warningssimplefilterUserWarningr   typer   )r   r   r   r   actualr   r   r   test_get_chunk_n_rows   s$   

"r&   c               	   C   s   d} d}d}d}d}t jt|d t| ||d}W d   n1 s#w   Y  ||ks.J t|t|u s8J t|d6 t jt|d t| |d}W d   n1 sVw   Y  ||ksaJ t|t|u skJ W d   dS 1 svw   Y  dS )	z<Check that warning is raised when working_memory is too low.i  Nr   zICould not adhere to working_memory config. Currently 1MiB, 2MiB required.)matchr   r   r   )pytestZwarnsr#   r   r$   r   )r   r   r   r   Zwarn_msgr%   r   r   r   test_get_chunk_n_rows_warns1   s,   "r)   )r    	itertoolsr   r(   Zsklearnr   Zsklearn.utils._chunkingr   r   Zsklearn.utils._testingr   r   markZparametrizer&   r)   r   r   r   r   <module>   s    
