%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /lib64/python3.9/site-packages/numpy/lib/tests/__pycache__/
Upload File :
Create Path :
Current File : //lib64/python3.9/site-packages/numpy/lib/tests/__pycache__/test_shape_base.cpython-39.pyc

a

z[yc�d�@szddlZddlZddlZddlZddlmZmZmZm	Z	m
Z
mZmZm
Z
mZmZmZmZmZmZddlmZmZmZmZmZejdkZdd�ZGdd�d�ZGd	d
�d
�ZGdd�d�ZGd
d�d�Z Gdd�d�Z!Gdd�d�Z"Gdd�d�Z#Gdd�d�Z$Gdd�d�Z%Gdd�d�Z&Gdd�d�Z'Gdd�d�Z(Gdd �d �Z)Gd!d"�d"�Z*Gd#d$�d$�Z+Gd%d&�d&�Z,d'd(�Z-dS))�N)�apply_along_axis�apply_over_axes�array_split�split�hsplit�dsplit�vsplit�dstack�column_stack�kron�tile�expand_dims�take_along_axis�put_along_axis)�assert_�assert_equal�assert_array_equal�
assert_raises�assert_warns�cst����fdd��}|S)z: hack in keepdims behavior into a function taking an axis cs.�|fd|i|��}|dur d}tj||d�S)N�axisr�r)�npr
)�ar�kwargs�res��func��E/usr/lib64/python3.9/site-packages/numpy/lib/tests/test_shape_base.py�wrappedsz_add_keepdims.<locals>.wrapped)�	functools�wraps)rr rrr�
_add_keepdimssr#c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�TestTakeAlongAxisc
	Cs�ddlm}|ddd�}tjtjt�fttj�ttj�t�fttj	�ttj
�t�ftjtjtdd�fg}|D]`\}}}t
t|j��dgD]@}||fd	|i|��}||fd	|i|��}	t|t||	|d
��q�qldS)z- Test it translates from arg<func> to <func> r��rand����)ZkthNrr)�numpy.randomr&r�sortZargsort�dictr#�min�argmin�max�argmax�	partitionZargpartition�list�range�ndimrr)
�selfr&rZfuncsrZargfuncrrZa_funcZai_funcrrr�test_argequivalents�z$TestTakeAlongAxis.test_argequivalentcCs�t�d�}tjdtjd�}t||dd�ttt|t�d�dd�ttt||�t	�dd�ttt||�t
�dd�ttjt||dd�dS)z4 Test it errors when indices has too few dimensions )�
r8)r8r*��dtype�rr8N)r�ones�intprr�
ValueError�array�
IndexErrorZastype�bool�float�	AxisError�r6r�airrr�test_invalid1s
zTestTakeAlongAxis.test_invalidcCs:t�d�}tjdtjd�}t||dd�}t|j|j�dS)zC Test everything is ok with empty results, even with inserted dims )r'r(r))r'rr)r9r;rN�rr<r=rr�shape�r6rrE�actualrrr�
test_emptyBs
zTestTakeAlongAxis.test_emptycCs8t�d�}tjdtjd�}t||dd�}t|jd�dS)�D Test that non-indexing dimensions are broadcast in both directions �r'r(r;�r;r*r)r9r;r�r'r*r)NrGrIrrr�test_broadcastJs
z TestTakeAlongAxis.test_broadcastN)�__name__�
__module__�__qualname__r7rFrKrPrrrrr$sr$c@seZdZdd�Zdd�ZdS)�TestPutAlongAxiscCszt�gd�gd�g�}tt|j��dgD]J}|��}ttj�||d�}t||d|d�ttj	�||d�}t
||�q*dS)N)r8��)�<�(�2ri����)rr?r3r4r5�copyr#r1rr/r)r6Za_baserrZi_maxZi_minrrr�test_replace_maxSsz!TestPutAlongAxis.test_replace_maxcCsLt�d�}tjdtjd��d�d}t||ddd�tt||dd�d�d	S)
rLrMr8r9rNr(rVr;rN)rr<�aranger=�reshaperrrrDrrrrPcs
zTestPutAlongAxis.test_broadcastN)rQrRrSr[rPrrrrrTRsrTc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zej	fdd�Z
ej	fd
d�Zej	fdd�Zdd�Z
dd�Zdd�Zdd�Zdd�ZdS)�TestApplyAlongAxiscCs6t�dd�}tttd|�t|�t�|jd��dS)N�rVr8�drr;�rr<rr�lenrH�r6rrrr�test_simplels �zTestApplyAlongAxis.test_simplecCs6t�dd�}tttd|�t|�t�|jd��dS)N)r8�er`rr;rarcrrr�test_simple101qs �z!TestApplyAlongAxis.test_simple101cCs:t�d��d�}tttjd|�gd�gd�gd�g�dS)N��r'r'r'r)rgrU�!)�$�'�*)�-�0�3)rr\r]rr�sumrcrrr�test_3dvs�zTestApplyAlongAxis.test_3dcCs�dd�}Gdd�dtj�}t�ddgddgg��|�}t�ddgd	d
gg��|�}t|d|�}tt||��t||�t|d|�}tt||��t||�dS)NcSs|dS)Nr*r)�rowrrr�double|sz9TestApplyAlongAxis.test_preserve_subclass.<locals>.doublec@seZdZdS)z<TestApplyAlongAxis.test_preserve_subclass.<locals>.MyNDArrayN�rQrRrSrrrr�	MyNDArraysrurr;r*r'r(�)r�ndarrayr?�viewrr�
isinstancer)r6rsru�m�expected�resultrrr�test_preserve_subclass{s
z)TestApplyAlongAxis.test_preserve_subclasscCsJGdd�dtj�}dd�}t�d��|�}tt|d|�t�gd���dS)Nc@seZdZdZdS)z9TestApplyAlongAxis.test_subclass.<locals>.MinimalSubclassr;N)rQrRrS�datarrrr�MinimalSubclass�srcSs|jS�N)r~)r?rrr�minimal_function�sz:TestApplyAlongAxis.test_subclass.<locals>.minimal_function�rvr'r)r;r;r;)rrw�zerosrxrrr?)r6rr�rrrr�
test_subclass�s�z TestApplyAlongAxis.test_subclasscCsJt�d��|�}ttjd|�}tt||��t|t�gd���|��dS)Nr�r�rvrvrv)	rr<rxrrprryrr?)r6�clsrrrrr�test_scalar_array�sz$TestApplyAlongAxis.test_scalar_arraycCs�dd�}t�d��|�}t|d|�}tt||��t|t�gd���|��t|d|�}tt||��t|t�gd���|��dS)NcSs t|jd�t�tj|dd��S)z/ Sum x, returning a 0d array of the same class r;T)Zkeepdims)rr5r�squeezerp��xrrr�	sum_to_0d�sz3TestApplyAlongAxis.test_0d_array.<locals>.sum_to_0dr�rr�r;)r'r'r'r'r'r')rr<rxrrryrr?)r6r�r�rrrrr�
test_0d_array�sz TestApplyAlongAxis.test_0d_arraycs2�fdd��t�d��d��t�d��}tj��fdd�t�jd�D�d	d
����}tt	|�t	|��t||�t�d��}tj��fdd�t�jd�D�dd
����}tt	|�t	|��t||�t�d��d
��t�d��}tj��fdd�t�jd�D�d	d
����}tt	|�t	|��t||�dS)Ncs0t|jd�|ddd�|dd�df���S)�/produces an asymmetric non-square matrix from xr;N���)rr5rxr�)r�rr�f1to2�sz5TestApplyAlongAxis.test_axis_insertion.<locals>.f1to2�r�rcs g|]}��dd�|f��qSr�r��.0�i��a2dr�rr�
<listcomp>�sz:TestApplyAlongAxis.test_axis_insertion.<locals>.<listcomp>r;r�rcs g|]}��|dd�f��qSr�rr�r�rrr��s�Z)rvr)r'cs6g|].�tj���fdd�t�jd�D�dd��qS)cs"g|]}��|dd��f��qSr�rr�)�a3dr��jrrr��szETestApplyAlongAxis.test_axis_insertion.<locals>.<listcomp>.<listcomp>rr)r�stackr4rH)r�)r�r�)r�rr��s���r*)
rr\r]rr�r4rHrxr�type)r6r�rJr{r)r�r�r�r�r�test_axis_insertion�sB���
���
���z&TestApplyAlongAxis.test_axis_insertioncCs4Gdd�dtj�}|�|�|�|�|�|�dS)Nc@seZdZdS)zFTestApplyAlongAxis.test_subclass_preservation.<locals>.MinimalSubclassNrtrrrrr�sr)rrwr�r�r�)r6rrrr�test_subclass_preservation�s

z-TestApplyAlongAxis.test_subclass_preservationcCs�dd�}t�d��d�}t|d|�}tt|tjj��t|j	d�t
|dd�dd�dfj||dd�df�j�t
|dd�dd�dfj||dd�df�j�t
|dd�dd�dfj||dd�df�j�dS)	NcSs@t|jd�|ddd�|dd�df}tj�|ddk|�S)r�r;Nr�r)r)rr5r�maZmasked_where)r�rrrrr��sz8TestApplyAlongAxis.test_axis_insertion_ma.<locals>.f1to2r�r�rr'r;r*)rr\r]rrryr�Zmasked_arrayrr5r�mask)r6r�rrrrr�test_axis_insertion_ma�s00z)TestApplyAlongAxis.test_axis_insertion_mac	CsHdd�}t�|dt�ddgddgg��}t|t�ddgddgg��dS)NcSs|d|dfS)Nr;rrr�rrr�	sample_1d�sz7TestApplyAlongAxis.test_tuple_func1d.<locals>.sample_1dr;r*r'r()rrr?r)r6r�rrrr�test_tuple_func1d�s z$TestApplyAlongAxis.test_tuple_func1dcCs|dd�}t�d�}tttj|d|�tttj|d|�dd�}t�d�}t�|d|�}t|t�d	��tttj|d|�dS)
NcSstd�dS)NF)rr�rrr�
never_call�sz1TestApplyAlongAxis.test_empty.<locals>.never_call)rrrr;cSstt|�dk�dS)Nrr;)rrbr�rrr�
empty_to_1�sz1TestApplyAlongAxis.test_empty.<locals>.empty_to_1)r8rr8)r�emptyrr>rrr<)r6r�rr�rJrrrrK�s

zTestApplyAlongAxis.test_emptycCs�t�ddhddhddhgddhd	d
hddhgg�}t�d
d�d|�}t�hd�hd�hd�g�}t||�t�|j�D]}tt||�t||��qvdS)Nr;�r*�r'rir(�,r)�7rv�BcSs
tj|�Sr�)�set�union)rrrr�<lambda>�z>TestApplyAlongAxis.test_with_iterable_object.<locals>.<lambda>r>r;r�r(r�>r*r)r�r�>rir�r'rv)rr?rrZndindexrHr�)r6r`rJr{r�rrr�test_with_iterable_objects�
z,TestApplyAlongAxis.test_with_iterable_objectN)rQrRrSrdrfrqr}r�rrwr�r�r�r�r�r�rKr�rrrrr^ks
%r^c@seZdZdd�ZdS)�TestApplyOverAxescCsHt�d��ddd�}ttj|ddg�}t|t�dgdgdggg��dS)	N�r*r'r(rrW�\�|)rr\r]rrprr?)r6rZaoa_arrrrdszTestApplyOverAxes.test_simpleN)rQrRrSrdrrrrr�sr�c@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�TestExpandDimscCsRd}t�|�}tdd�D]4}t||�}t|j|dk�tt�|�j|k�qdS)N�r*r'r(r)���r(r;)rr�r4r
rrHr�)r6�srr�brrr�test_functionalitys

z!TestExpandDims.test_functionalitycCsnt�d�}tj|dd�jdks"J�tj|dd�jdks:J�tj|dd�jdksRJ�tj|d	d�jd
ksjJ�dS)Nrh�rr;r*r)r;r;r;r'r'r')rr����)r;r'r'r'r;r;)rr'r))r;r'r'r;r'r;)r���r�)r;r;r'r;r'r')rr�r
rHrcrrr�test_axis_tuple!s

zTestExpandDims.test_axis_tuplecCs\d}t�|�}ttjt|d�ttjt|d�t�d�}ttjt|d�ttjt|d�dS)Nr����r)rh)rr�)rr))rr�rrCr
)r6r�rrrr�test_axis_out_of_range(s

z%TestExpandDims.test_axis_out_of_rangecCst�d�}ttt|dd�dS)Nrh�r;r;r)rr�rr>r
rcrrr�test_repeated_axis2s
z!TestExpandDims.test_repeated_axiscCsft�d��d�}tjj||ddkd�}tj|dd�}tt|tjj��t	|j
d�t	|jj
d�dS)	Nr8)r*r)r'r�r�r;r)r*r;r))rr\r]r�r?r
rryZMaskedArrayrrHr�)r6rZexpandedrrr�test_subclasses6szTestExpandDims.test_subclassesN)rQrRrSr�r�r�r�r�rrrrr�s

r�c@sfeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zej	j
edd�d
d��Zdd�Z
dd�Zdd�ZdS)�TestArraySplitcCst�d�}ttt|d�dS)Nr8r)rr\rr>rrcrrr�test_integer_0_splitAs
z#TestArraySplit.test_integer_0_splitc
Cs�t�d�}t|d�}t�d�g}t||�t|d�}t�d�t�dd�g}t||�t|d�}t�d�t�dd�t�dd�g}t||�t|d�}t�d�t�dd�t�dd	�t�d	d�g}t||�t|d�}t�d�t�dd�t�dd�t�dd	�t�d	d�g}t||�t|d�}t�d�t�dd�t�dd�t�dd	�t�d	d
�t�d
d�g}t||�t|d�}t�d�t�dd�t�dd�t�dd�t�dd	�t�d	d
�t�d
d�g}t||�t|d	�}t�d�t�dd�t�dd�t�dd�t�dd�t�dd	�t�d	d
�t�d
d�g}t||�t|d
�}t�d�t�dd�t�dd�t�dd�t�dd�t�dd�t�dd	�t�d	d
�t�d
d�g	}t||�t|d�}t�d�t�dd�t�dd�t�dd�t�dd�t�dd�t�dd�t�dd	�t�d	d
�t�d
d�g
}t||�t|d�}t�d�t�dd�t�dd�t�dd�t�dd�t�dd�t�dd�t�dd	�t�d	d
�t�d
d�t�g�g}t||�dS)Nr8r;r*r)r'r(�rv��	r�)rr\r�compare_resultsr?�r6rr�desiredrrr�test_integer_splitEsr





 


�

�

�


�

�

�


�

�z!TestArraySplit.test_integer_splitcCs�t�t�d�t�d�g�}t|ddd�}t�t�d�g�t�t�d�g�t�d�g}t||�t|jj|djju�t|ddgdd�}t�d�t�t�d�g�t�t�d�g�g}t||�t|jj|djju�dS)Nr8r'rr�rr8r�r;�	rr?r\rr�r�rr:r��r6rr�tgtrrr�test_integer_split_2D_rows�s �
�
z)TestArraySplit.test_integer_split_2D_rowsc	Cs�t�t�d�t�d�g�}t|ddd�}t�t�d�t�d�g�t�t�dd�t�dd�g�t�t�dd�t�dd�g�g}t||�dS)Nr8r'r�rr(r�)rr?r\rr�r�rrr�test_integer_split_2D_cols�s�z)TestArraySplit.test_integer_split_2D_colscCsvt�t�d�t�d�g�}t|d�}t�t�d�g�t�t�d�g�t�d�g}t||�t|jj|djju�dS)z2 This will fail if we change default axis
        r8r'r�r�Nr�r�rrr�test_integer_split_2D_default�s
 �
z,TestArraySplit.test_integer_split_2D_defaultzNeeds 64bit platform)�reasoncCs\t�dgd�}t|d�}t�dgd�}|gd}tt|��D]}t||j||j�q<dS)Nr)rr*r()i@r*)rZbroadcast_torr4rbrrH)r6rr�chunkr�r�rrr�,test_integer_split_2D_rows_greater_max_int32�s

z;TestArraySplit.test_integer_split_2D_rows_greater_max_int32cCsZt�d�}gd�}t||dd�}t�dd�t�dd�t�dd�t�dd�g}t||�dS)	Nr8)r;r)r�r�rrr;r)r�)rr\rr��r6r�indicesrr�rrr�test_index_split_simple�s

�z&TestArraySplit.test_index_split_simplecCsXt�d�}gd�}t||dd�}t�g�t�dd�t�dd�t�dd�g}t||�dS)Nr8)rr)r�r�rrr)r��rr\rr?r�r�rrr�test_index_split_low_bound�s

�z)TestArraySplit.test_index_split_low_boundcCsht�d�}gd�}t||dd�}t�g�t�dd�t�dd�t�dd�t�g�t�g�g}t||�dS)Nr8)rr)r�r8�r�rrr)r�r�r�rrr�test_index_split_high_bound�s
�z*TestArraySplit.test_index_split_high_boundN)rQrRrSr�r�r�r�r��pytest�markZskipif�IS_64BITr�r�r�r�rrrrr�@s=
r�c@seZdZdd�Zdd�ZdS)�	TestSplitcCs8t�d�}t|d�}t�d�t�dd�g}t||�dS)Nr8r*r))rr\rr�r�rrr�test_equal_split�s

zTestSplit.test_equal_splitcCst�d�}ttt|d�dS)Nr8r')rr\rr>rrcrrr�test_unequal_split�s
zTestSplit.test_unequal_splitN)rQrRrSr�r�rrrrr��sr�c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�TestColumnStackcCstttd�dS�Nr;)r�	TypeErrorr
�r6rrr�test_non_iterable�sz!TestColumnStack.test_non_iterablecCsLt�d�}t�d�}t�ddgddgddgg�}t�||f�}t||�dS)N�r;r*r')r*r'r(r;r*r'r(�rr?r
r�r6rr�r{rJrrr�test_1D_arrays�s


�zTestColumnStack.test_1D_arrayscCsdt�dgdgdgg�}t�dgdgdgg�}t�ddgddgddgg�}t�||f�}t||�dS)Nr;r*r'r(r�r�rrr�test_2D_arrays�s
�zTestColumnStack.test_2D_arrayscCsBtt��&tdd�td�D��Wd�n1s40YdS)Ncss|]}t�d�VqdS�r'N�rr\�r��_rrr�	<genexpr>�r�z1TestColumnStack.test_generator.<locals>.<genexpr>r*)r�
FutureWarningr
r4r�rrr�test_generator�s
zTestColumnStack.test_generatorN)rQrRrSr�r�r�r�rrrrr��s

r�c@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�
TestDstackcCstttd�dSr�)rr�r	r�rrrr��szTestDstack.test_non_iterablecCs@t�d�}t�d�}t||g�}t�ddggg�}t||�dS�Nr;r*�rr?r	r�r6rr�rr�rrr�
test_0D_array�s


zTestDstack.test_0D_arraycCsDt�dg�}t�dg�}t||g�}t�ddggg�}t||�dSr�r�r�rrr�
test_1D_array�s
zTestDstack.test_1D_arraycCsXt�dgdgg�}t�dgdgg�}t||g�}t�ddggddggg�}t||�dSr�r�r�rrr�
test_2D_arrays
zTestDstack.test_2D_arraycCsNt�ddg�}t�ddg�}t||g�}t�ddgddggg�}t||�dSr�r�r�rrr�test_2D_array2s
zTestDstack.test_2D_array2cCsBtt��&tdd�td�D��Wd�n1s40YdS)Ncss|]}t�d�VqdSr�r�r�rrrr�r�z,TestDstack.test_generator.<locals>.<genexpr>r*)rr�r	r4r�rrrr�s
zTestDstack.test_generatorN)	rQrRrSr�r�r�r�r�r�rrrrr��sr�c@s0eZdZdZdd�Zdd�Zdd�Zdd	�Zd
S)�
TestHsplit�&Only testing for integer splits.

    cCstttdd�dSr�)rr>rr�rrrr�szTestHsplit.test_non_iterablecCs8t�d�}zt|d�td�Wnty2Yn0dS)Nr;r*r)rr?rrr>rcrrrr�!s

zTestHsplit.test_0D_arraycCsBt�gd��}t|d�}t�ddg�t�ddg�g}t||�dS�N�r;r*r'r(r*r;r'r(�rr?rr�r�rrrr�)s
zTestHsplit.test_1D_arraycCsZt�gd�gd�g�}t|d�}t�ddgddgg�t�ddgddgg�g}t||�dSr�rr�rrrr�/s
�
,zTestHsplit.test_2D_arrayN�rQrRrS�__doc__r�r�r�r�rrrrr�s
r�c@s0eZdZdZdd�Zdd�Zdd�Zdd	�Zd
S)�
TestVsplitr�cCstttdd�dSr�)rr>rr�rrrr�;szTestVsplit.test_non_iterablecCst�d�}ttt|d�dSr�)rr?rr>rrcrrrr�>s
zTestVsplit.test_0D_arraycCs<t�gd��}zt|d�td�Wnty6Yn0dS�Nrr*r)rr?rrr>rcrrrr�Bs
zTestVsplit.test_1D_arraycCsNt�gd�gd�g�}t|d�}t�gd�g�t�gd�g�g}t||�dS�Nrr*)rr?rr�r�rrrr�Js
�
 zTestVsplit.test_2D_arrayNrrrrrr7s
rc@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�
TestDsplitcCstttdd�dSr�)rr>rr�rrrr�TszTestDsplit.test_non_iterablecCst�d�}ttt|d�dSr��rr?rr>rrcrrrr�Ws
zTestDsplit.test_0D_arraycCs t�gd��}ttt|d�dSrrrcrrrr�[szTestDsplit.test_1D_arraycCsDt�gd�gd�g�}zt|d�td�Wnty>Yn0dSr)rr?rrr>rcrrrr�_s
�
zTestDsplit.test_2D_arraycCs�t�gd�gd�ggd�gd�gg�}t|d�}t�ddgddggddgddggg�t�ddgddggddgddggg�g}t||�dSr�)rr?rr�r�rrr�
test_3D_arrayhs
���
$$�zTestDsplit.test_3D_arrayN)rQrRrSr�r�r�r�r	rrrrrRs
	rc@seZdZdd�ZdS)�TestSqueezecCs�ddlm}|ddddd�}|ddddd�}|dddd�}tt�|�t�|d��tt�|�t�|d��tt�|�t�|d��d	ggg}t�|�}t|d	�t|jd�tt|�tj	�dS)
Nrr%rVr8r;)rVr8r8)rVr8rVr_g�?)
r+r&rrr�r]rr5r�rw)r6r&rr��crrrr�
test_basicts


zTestSqueeze.test_basicN�rQrRrSrrrrrr
ssr
c@sTeZdZdd�Zej�dejej	g�dd��Z
dd�Zej�dgd	��d
d��ZdS)
�TestKroncCs�Gdd�dtj�}t�ddg�}||j|j|j�}ttt||��tj�ttt||��|�ttt||��|�ttt||��|�dS)Nc@seZdZdZdS)z*TestKron.test_return_type.<locals>.myarrayg�?N)rQrRrSZ__array_priority__rrrr�myarray�srr*)	rrwr<rHr:r~rr�r)r6rrr�rrr�test_return_type�szTestKron.test_return_type�array_classcCsL|t�ddg��}|t�ddg��}|t�ddg��}tt�||�|�dS)Nr'r�)rr<rr)r6rrr��krrr�test_kron_smoke�szTestKron.test_kron_smokecCsjtjjddgddggddgddggd�}tjjt�gd��tjt�d�td�d�}t|t�||��dS)	Nr;r*r'r(rr�)r;r(r(�r9)rr�r?Zdiag�identityrArr)r6r�rrrr�test_kron_ma�s
(�zTestKron.test_kron_mazshape_a,shape_b))r�r�)r�)r(r)rv)�r*r*)r*r*r*))r;rr�)�r*rr*r))r*rrr*rc	Cs�t�|�}t�|�}dtdt|�t|��|}dtdt|�t|��|}t�||�}t�||�}t�|j|�s~Jd��dS)N)r;rzUnexpected shape from kron)rr<r0rbZmultiplyrZarray_equalrH)	r6Zshape_aZshape_brr�Znormalised_shape_aZnormalised_shape_bZexpected_shaperrrr�test_kron_shape�s


��zTestKron.test_kron_shapeN)
rQrRrSrr�r�ZparametrizerZasarrayZmatrrrrrrrr�s�
�	rc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�TestTilecCs�t�gd��}ddgddgg}tt|d�gd��tt|d�gd�gd�g�tt|d�gd�g�tt|d�gd	�gd
�g�tt|d�ddgddgddgddgg�tt|d�gd	�gd
�gd	�gd
�g�dS)Nr�r;r*r'r()rr;r*rr;r*r�r;r*)r;r*r;r*)r'r(r'r(�r*r;)rr?rr�r6rr�rrrr�s(�zTestTile.test_basiccCs0t�d�}t|d�}|d7}t|t�d��dS)Nr)r;r*)rr\rrrrrr�(test_tile_one_repetition_on_array_gh4679�s

z1TestTile.test_tile_one_repetition_on_array_gh4679cCsLt�ggg�}t�ggg�}t|d�j}t|d�j}t|d�t|d�dS)Nr*rO)r*r)r'r*r)rr?rrHr)r6rr�rr`rrrrK�s
zTestTile.test_emptyc
Csnddlm}gd�}gd�}|D]H}|dd|d�}|D]0}t�||j�}t||�}t||�}	t||	�q6q dS)Nr)�randint))r*rrr)r*r'r*)r'r*))r')r*r')r'r(r')r'r*r')r(r'r*r(rr8)�size)r+rrr<r:rrr)
r6rZrepsrHr�r��rrZlargeZklargerrr�test_kroncompare�s

zTestTile.test_kroncompareN)rQrRrSrrrKr"rrrrr�src@seZdZdd�ZdS)�TestMayShareMemoryc	Cs�t�d�}t�d�}tt�||��tt�||ddd���tt�||ddd���tt�||dd�ddd�f��tt�|ddd�|��tt�|ddd�|��tt�|dd�ddd�f|��tt�|dd�ddd�f|��dS)N)rYrW)rUrWrvr�r*r;)rr<rZmay_share_memory)r6r`Zd2rrrr�s

"$zTestMayShareMemory.test_basicNr
rrrrr#�sr#cCs:t|�t|�krtd��t||�D]\}}t||�q"dS)zCompare lists of arrays.z Iterables have different lengthsN)rbr>�zipr)rr�r��yrrrr��sr�).Znumpyrr!�sysr�Znumpy.lib.shape_baserrrrrrrr	r
rrr
rrZ
numpy.testingrrrrr�maxsizer�r#r$rTr^r�r�r�r�r�r�r�rrr
rrr#r�rrrr�<module>s4@
4'('!2(

Zerion Mini Shell 1.0