U
    #c                     @   s:   d dl Z d dlZd dlmZmZmZmZ G dd dZdS )    N)assert_assert_raisesassert_array_equalHAS_REFCOUNTc                   @   s4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )TestTakec                 C   s  ddgddgg}ddgddgg}d	d
dg}ddg}t jdt jdt jt t jdt jdt jdg}dtdddddddd}ttt dgf}|D ]}t jt 	|t j
r|n||d}	t|	j }
|D ]}|jdkrd|j |
d _d|j |
d _|D ]}|D ]}|| | }|tkrP|jdkrP|d| tt|	j||dd n\|jdkr|d| |	j||dd}t||
|  n$|	j||dd}t|jd|j k qq qqd S )N               1   2   3   4raisewrapclipr   dtype)r   r   )r   r
   )r   r   r   ) i2r	   )r   )modeZaxis)npemptyZintptuple
IndexErrorintobjectr   arrayZ
issubdtypenumberlistTcopysizeshapeputr   taker   r   )selfaZa_strmodesindicesZindex_arraysZreal_indicestypesttaZtresultZindex_arrayr   indexZ
real_indexres r0   H/tmp/pip-unpacked-wheel-b2rbor69/numpy/core/tests/test_item_selection.pytest_simple
   sF    

 

 zTestTake.test_simplec              	   C   s   dd t dD }dD ]}t|}tddddddg}|j||d d	 |d
 ~trnttdd |D  t|d d d d }|j||d d	 |d
 ~trttdd |D  qd S )Nc                 S   s   g | ]
}t  qS r0   )r   ).0ir0   r0   r1   
<listcomp>2   s     z-TestTake.test_refcounting.<locals>.<listcomp>
   )r   r   r   r   r
      r	      )outr   c                 s   s   | ]}t |d kV  qdS r	   Nsysgetrefcountr3   or0   r0   r1   	<genexpr>9   s     z,TestTake.test_refcounting.<locals>.<genexpr>c                 s   s   | ]}t |d kV  qdS r:   r;   r>   r0   r0   r1   r@   ?   s     )ranger   r   r&   r   r   all)r'   Zobjectsr   r(   br0   r0   r1   test_refcounting1   s    
zTestTake.test_refcountingc                 C   s*   t d}dd}tt|jd|d d S )Nr6   s   äUTF8r7   )r   )r   Zarangedecoder   
ValueErrorr&   )r'   dkr0   r0   r1   test_unicode_modeA   s    

zTestTake.test_unicode_modec                 C   sB   t ddddddg}| }|t jg t jd t|| d S )Nr   r   r
   r8      r6   r   )r   r   r"   	partitionint16r   )r'   Z
a_originalr(   r0   r0   r1   test_empty_partitionF   s    zTestTake.test_empty_partitionc                 C   sP   t ddddddg}|t jg t jd}t dddd	dd
g}t|| d S )Nr   r   r
   r8   rK   r6   r   r   r	   r7   )r   r   ZargpartitionrM   r   )r'   r(   rC   r0   r0   r1   test_empty_argpartitionP   s    z TestTake.test_empty_argpartitionN)__name__
__module____qualname__r2   rD   rJ   rN   rO   r0   r0   r0   r1   r   	   s
   '
r   )	r<   Znumpyr   Znumpy.testingr   r   r   r   r   r0   r0   r0   r1   <module>   s   