HOME


sh-3ll 1.0
DIR:/usr/local/lib64/python3.6/site-packages/numpy/lib/tests/__pycache__/
Upload File :
Current File : //usr/local/lib64/python3.6/site-packages/numpy/lib/tests/__pycache__/test_mixins.cpython-36.pyc
3

���hv�@s�ddlZddlZddlZddlmZmZmZGdd�dejj	j
�Zdd�Zddd�Z
ejejejejejejejejejejejejeeejejejejej gZ!Gd	d
�d
�Z"dS)�N)�assert_�assert_equal�
assert_raisesc@s0eZdZdd�ZejejfZdd�Z	dd�Z
dS)�	ArrayLikecCstj|�|_dS)N)�npZasarray�value)�selfr�r	�</tmp/pip-build-5_djhm0z/numpy/numpy/lib/tests/test_mixins.py�__init__szArrayLike.__init__cs�|jdf�}x&||D]}t|�jtf�stSqWtdd�|D��}|r`tdd�|D��|d<t||�||�}t|�tkr�t�fdd�|D��S|dkr�dSt��|�SdS)N�outcss"|]}t|t�r|jn|VqdS)N)�
isinstancerr)�.0�xr	r	r
�	<genexpr>sz,ArrayLike.__array_ufunc__.<locals>.<genexpr>css"|]}t|t�r|jn|VqdS)N)r
rr)rrr	r	r
r"sc3s|]}t��|�VqdS)N)�type)rr)rr	r
r(s�at)�getr
�_HANDLED_TYPESr�NotImplemented�tuple�getattrr)rZufunc�method�inputs�kwargsrr�resultr	)rr
�__array_ufunc__s 
zArrayLike.__array_ufunc__cCsdt|�j|jfS)Nz%s(%r))r�__name__r)rr	r	r
�__repr__0szArrayLike.__repr__N)r�
__module__�__qualname__rrZndarray�numbers�Numberrrrr	r	r	r
rsrcCs*t|�tkrtdd�|D��St|�SdS)Ncss|]}t|�VqdS)N)r)r�rr	r	r
r6sz"wrap_array_like.<locals>.<genexpr>)rrr)rr	r	r
�wrap_array_like4sr$cCs�tt|�t|�|d�t|t�r\tt|�t|�|d�xXt||�D]\}}t|||�qBWn4t|j|j|d�tt|jdd�t|jdd�|d�dS)N)�err_msg�dtype)	rrr
r�len�zip�_assert_equal_type_and_valuerr)r�expectedr%Zresult_itemZ
expected_itemr	r	r
r);s
r)c@sdeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dS)�TestNDArrayOperatorsMixincCs�dd�}|td�d�|dtd��|td�tjd��|tjd�td��|ttjd��d�|dttjd���|ttjd��tjd��|tjd�ttjd���dS)NcSst|td��dS)Nr)r)r)rr	r	r
�checkbsz<TestNDArrayOperatorsMixin.test_array_like_add.<locals>.checkr)rr�array)rr,r	r	r
�test_array_like_add`sz-TestNDArrayOperatorsMixin.test_array_like_addcCs`ttjdg��}|d7}t|ttjdg���tjdg�}|td�7}t|ttjdg���dS)Nr�)rrr-r))r�
array_liker-r	r	r
�test_inplaceqsz&TestNDArrayOperatorsMixin.test_inplacecCs�Gdd�d�}td�}|�}t|||k�t|||k�tt��||7}WdQRXtt��||WdQRXtt��||WdQRXdS)Nc@s$eZdZdZdZdd�Zdd�ZdS)z6TestNDArrayOperatorsMixin.test_opt_out.<locals>.OptOutz(Object that opts out of __array_ufunc__.NcSs|S)Nr	)r�otherr	r	r
�__add__�sz>TestNDArrayOperatorsMixin.test_opt_out.<locals>.OptOut.__add__cSs|S)Nr	)rr2r	r	r
�__radd__�sz?TestNDArrayOperatorsMixin.test_opt_out.<locals>.OptOut.__radd__)rrr �__doc__rr3r4r	r	r	r
�OptOut|sr6r/)rrr�	TypeError)rr6r0Zopt_outr	r	r
�test_opt_outzs



z&TestNDArrayOperatorsMixin.test_opt_outcCs@Gdd�dt�}td�}|d�}t|||�t|||�dS)Nc@seZdZdZdS)z=TestNDArrayOperatorsMixin.test_subclass.<locals>.SubArrayLikez&Should take precedence over ArrayLike.N)rrr r5r	r	r	r
�SubArrayLike�sr9rr/)rr))rr9r�yr	r	r
�
test_subclass�s
z'TestNDArrayOperatorsMixin.test_subclasscCsftd�}t�}tt��||WdQRXtt��||WdQRXtt��||7}WdQRXdS)Nr)r�objectrr7)rr�objr	r	r
�test_object�s


z%TestNDArrayOperatorsMixin.test_objectcCsPtjddddg�}t|�}x0tjtjttjgD]}t||�t||���q.WdS)Nr/r����)	rr-r�operator�neg�pos�abs�invertr))rr-r0�opr	r	r
�test_unary_methods�sz,TestNDArrayOperatorsMixin.test_unary_methodscCs\tjddddg�}t|�}x<tD]4}t||d��}||d�}dj|�}t|||d�q WdS)Nr/rr?zfailed for operator {})r%r@)rr-r�_ALL_BINARY_OPERATORSr$�formatr))rr-r0rFr*�actualr%r	r	r
�test_forward_binary_methods�s


z5TestNDArrayOperatorsMixin.test_forward_binary_methodscCsFx@tD]8}t|dd��}|dtd��}dj|�}t|||d�qWdS)Nr?r/zfailed for operator {})r%)rHr$rrIr))rrFr*rJr%r	r	r
�test_reflected_binary_methods�s


z7TestNDArrayOperatorsMixin.test_reflected_binary_methodscCsdtjddgtjd�}t|�}ttjd��}t|tj||��t|tj||��t|tj||��dS)Nr/r?)r&�)rr-Zfloat64rr)�matmulrA)rr-r0r*r	r	r
�test_matmul�sz%TestNDArrayOperatorsMixin.test_matmulcCsPttjddddg��}ttjj|tjddg��dk�t|tddddg��dS)Nr/r?��rr@���)rrr-r�negativerr))rr-r	r	r
�
test_ufunc_at�s z'TestNDArrayOperatorsMixin.test_ufunc_atcCsPtjd�\}}t|�t|�f}ttjtd��|�ttjttjd���|�dS)	Nr?rP���g�?rUg�?rUg�?)r�frexprr)r-)rZmantissa�exponentr*r	r	r
�test_ufunc_two_outputs�sz0TestNDArrayOperatorsMixin.test_ufunc_two_outputsN)rrr r.r1r8r;r>rGrKrLrOrTrXr	r	r	r
r+^s	

		
r+)N)#r!rAZnumpyrZ
numpy.testingrrr�libZmixinsZNDArrayOperatorsMixinrr$r)�lt�le�eq�ne�gt�ge�add�sub�mul�truediv�floordiv�mod�divmod�pow�lshift�rshift�and_�xor�or_rHr+r	r	r	r
�<module>s4)