U
    /e                     @   sv   d dl Z e d d dlZd dlZd dlmZ d dlm	Z	m
Z
mZ dd Zdd Zdd	 Zd
d Zdd Zdd ZdS )    Nnumpy)coarsengetitemkeepdims_wrapperc                  C   s   ddd} t | }|| ksttddddd}| |}||dd	}||d
d	}|jdksbt|jt ksrt|dks~t|jdkst|jdkst|dk st|jdkst|jt kst|dkstd S )Nc                 S   s   | j |dS Naxissumar    r   ?/tmp/pip-unpacked-wheel-dbjnr7gq/dask/array/tests/test_chunk.pysummer   s    z-test_keepdims_wrapper_no_axis.<locals>.summer               T)keepdimsFr   i  )r   r   r   r   )N)	r   AssertionErrornparangereshapendimshapetupleallr   Zsummer_wrappedr   rrwZrwfr   r   r   test_keepdims_wrapper_no_axis   s     
r!   c                  C   sB  ddd} t | }|| ksttddddd}| |dd}||dd	d
}||ddd
}|jdksjt|jdksxt|tddddgddddgggk st|jdkst|jdkst|tddddggddddggggk st|jdks t|jdkst|tddddgddddgggk s>td S )Nc                 S   s   | j |dS r   r	   r   r   r   r   r   )   s    z.test_keepdims_wrapper_one_axis.<locals>.summerr   r   r   r   r   r   Tr   r   F)r   r   r               0   3   6   9   )r   r   r   r   )N	r   r   r   r   r   r   r   arrayr   r   r   r   r   test_keepdims_wrapper_one_axis(   s     
,0r-   c                  C   s  ddd} t | }|| ksttddddd}| |dd	}||dd
d}||ddd}|jdksjt|jdksxt|tdddggk st|jdkst|jdkst|tdgdgdggggk st|jdkst|jdkst|tdddggk std S )Nc                 S   s   | j |dS r   r	   r   r   r   r   r   D   s    z.test_keepdims_wrapper_two_axes.<locals>.summerr   r   r   r   r   )r   r   r   Tr"   F<   \   |   )r   r   r   r   )Nr+   r   r   r   r   test_keepdims_wrapper_two_axesC   s     
&r1   c                  C   s\   t jjddd} tt j| ddd}|jdks2t|d t | d dd df ksXtd S )	N
   )r   r   )sizer   r   )r   r   )r#      )r   r   )r   randomrandintr   r
   r   r   )xyr   r   r   test_coarsen^   s    r9   c                   C   s"   t jddddjdkstd S )N)r   r4   r   )chunksr   ))r   r   )r   r   )dazerosZrechunkr:   r   r   r   r   r   test_integer_inputo   s    r=   c                  C   s|   t jd} t| tdd}|jjs(tt| tdd jjr@tt| tdd}|jjr^tt| tdd jjrxtd S )Ni@B x   z   r   )	r   r5   Zrandr   sliceflagsZowndatar   operator)r7   r8   Zy_opr   r   r   test_getitems   s    rC   )ZpytestZimportorskiprB   r   r   Z
dask.arrayr,   r;   Zdask.array.chunkr   r   r   r!   r-   r1   r9   r=   rC   r   r   r   r   <module>   s   
