Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.9/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.9/test/__pycache__/test_memoryview.cpython-39.opt-1.pyc

a

��g"G�@sPdZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
Gdd�d�ZGdd�de�ZGdd�de�Z
Gd	d
�d
�ZGdd�d�ZGd
d�d�ZGdd�dejee�ZGdd�dejee
�ZGdd�dejee�ZGdd�dejee
�ZGdd�dejee�ZGdd�dejee
�ZGdd�dej�Zedk�rLe��dS)z�Unit tests for the memoryview

   Some tests are in test_bytes. Many tests that require _testbuffer.ndarray
   are in test_buffer.
�Nc@s�eZdZdZedd��Zedd��Zdd�Zdd	�Zd
d�Z	dd
�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8S)9�AbstractMemoryTests�abcdefcCs|jS�N)�source_bytes��self�r�0/usr/local/lib/python3.9/test/test_memoryview.py�_sourceszAbstractMemoryTests._sourcecCstd|j|jg�Sr)�filter�ro_type�rw_typerrrr	�_typesszAbstractMemoryTests._typescs$||j�}t�|�}|�|��|��dtd��|��dt�|��dtd��|��dtd��|��dtd��|�t	�fdd��|�t	�fd	d��|�t	�fd
d��|�t	�fdd��|�t
�fdd��|�t
�fd
d��|�t
�fdd��d�|�t�|�|�dS)Nr�a��f���i����cs�dS)N�rr��mrr	�<lambda>'�z=AbstractMemoryTests.check_getitem_with_type.<locals>.<lambda>cs�dS)N���rrrrr	r(rcs
�tjSr��sys�maxsizerrrr	r)rcs�tjSrrrrrr	r*rcs�dSrrrrrr	r,rcs�dS)N�rrrrr	r-rcs�dS)N�arrrrr	r.r)r
r�getrefcount�_view�assertEqual�ord�assertIsInstance�int�assertRaises�
IndexError�	TypeError)r�tp�b�oldrefcountrrr	�check_getitem_with_types"


z+AbstractMemoryTests.check_getitem_with_typecCs|jD]}|�|�qdSr)rr*)rr'rrr	�test_getitem2s
z AbstractMemoryTests.test_getitemcsJ|jD]>}||j�}|�|��|�t���fdd�tt���D��qdS)Ncsg|]}�|�qSrr)�.0�irrr	�
<listcomp>:rz1AbstractMemoryTests.test_iter.<locals>.<listcomp>)rr
rr �list�range�len)rr'r(rrr	�	test_iter6s


zAbstractMemoryTests.test_itercs�|js|�d�|�|j�}t�|�}|�|���fdd�}|�t|d�|�t|d�|�t|td��d�|�	t�|�|�dS)N�no read-only type to testcs|�d<dS)Nrr)�valuerrr	�setitemBsz:AbstractMemoryTests.test_setitem_readonly.<locals>.setitemr�A)
r�skipTestr
rrrr$r&�
memoryviewr )rr(r)r5rrr	�test_setitem_readonly<s


z)AbstractMemoryTests.test_setitem_readonlyc	s�|js|�d�|j�|�|j�}t�|�}|�|��td��d<|��|d��d��dd�<|��|d��d��dd	�<|��|d
��d��dd�<|��|d
��d��dd�<|��|d��d
d��dd	�<|��|d��d��dd�<�dd	��d
d�<|��|d���fdd�}|�t	|dd�|�t	|dd�|�t	|tj
d�|�t	|tj
d�|�t|dd�|�t|dd�|�t|tddd�dfd�|�t|dtddd�fd�|�t|dd�|�t|dd�tddd�tddd
�f}|�t
||d��jdk�r tnt}|�||dd�|�||dd�|�t|tdd�d�|�t|tdd
�d�d�|�t�|�|�dS)N�no writable type to test�1rs1bcdef�0�s0bcdefs12�s012defrr�rscdedefsababcfcs�|��|<dSrr)�keyr4�rr'rr	r5csz:AbstractMemoryTests.test_setitem_writable.<locals>.setitemrrrr)rr�csab)r
r7r
rrrr!�_check_contentsr$r%rr&�slice�NotImplementedError�format�
ValueErrorr )rr(r)r5Zslices�excrrAr	�test_setitem_writableJsR


z)AbstractMemoryTests.test_setitem_writablec	Cs�|jD]|}||j�}|�|�}|�t��|d=Wd�n1sD0Y|�t��|dd�=Wd�q1sx0YqdS)Nr=�)rr
rr$r&�rr'r(rrrr	�test_delitem~s


$z AbstractMemoryTests.test_delitemcsX�jD]L}��|�j��}|��}d��fdd�dD��}��||���|t�qdS)Nrc3s|]}��t|g��VqdSr)�getitem_type�bytes)r,rBrrr	�	<genexpr>�sz3AbstractMemoryTests.test_tobytes.<locals>.<genexpr>r)rrr
�tobytes�joinr r"rN)rr'rr(Zexpectedrrr	�test_tobytes�s
�z AbstractMemoryTests.test_tobytescCs8|jD],}|�||j��}|��}|�|td��qdS)Nr)rrr
�tolistr r/)rr'r�lrrr	�test_tolist�s
zAbstractMemoryTests.test_tolistcs�|jD�]�}|�||j���|jD]p}|��|d�k�|��|d�k�|��|d�k�|��|d�k�|��|d�k�|��|d�k�q"|���k�|���dd�k�|��dd��dd�k�|��dd��k�|��dk�|��dk�|�d�k�|�d�k��dfD]^�|�t��fdd	��|�t��fd
d	��|�t��fdd	��|�t��fdd	���q,qdS)
Nrsabcdesabcde1rrrZabcdefcs��kSrrr�rBrrr	r�rz2AbstractMemoryTests.test_compare.<locals>.<lambda>cs��kSrrrrVrr	r�rcs��kSrrrrVrr	r�rcs��kSrrrrVrr	r�r)rrr
�
assertTrueZassertFalser$r&)rr'Ztp_comprrVr	�test_compare�s,
z AbstractMemoryTests.test_comparecCs�|�||j��}|�|j|j�|�|j|j�|�|jd�|�|jd�|�t|�d�|�|j|jf�|�|j	d�|S)Nr=)rrr)
rr
r rF�itemsize�ndim�shaper1�strides�
suboffsets)rr'rrrr	�check_attributes_with_type�sz.AbstractMemoryTests.check_attributes_with_typecCs.|js|�d�|�|j�}|�|jd�dS)Nr3T)rr7r^r �readonly�rrrrr	�test_attributes_readonly�s
z,AbstractMemoryTests.test_attributes_readonlycCs.|js|�d�|�|j�}|�|jd�dS)Nr:F)r
r7r^r r_r`rrr	�test_attributes_writable�s
z,AbstractMemoryTests.test_attributes_writablecCs~|jD]r}||j�}t�|�}|�|�}t�|�}t|d�}|�|||�d��|�t�|�|�d}|�t�|�|�qdS)Nzutf-8)	rr
rrr�strrC�encoder )rr'r(r)rZoldviewrefcount�srrr	�test_getbuffer�s





z"AbstractMemoryTests.test_getbufferc	Cs�|jD]�}t|t�sqGdd�d�}Gdd�d|�}Gdd�d�}||d��}|�|�}|�}||_||_t�|�}d}}}t�	�|�
|�du|��||d��}|�}||_||_t�|�}d}}t�	�|�
|�du|��qdS)Nc@seZdZdd�ZdS)z+AbstractMemoryTests.test_gc.<locals>.MyViewcSst|�|_dSr)r8r)r�baserrr	�__init__�sz4AbstractMemoryTests.test_gc.<locals>.MyView.__init__N)�__name__�
__module__�__qualname__rhrrrr	�MyView�srlc@seZdZdS)z-AbstractMemoryTests.test_gc.<locals>.MySourceN�rirjrkrrrr	�MySource�srnc@seZdZdS)z-AbstractMemoryTests.test_gc.<locals>.MyObjectNrmrrrr	�MyObject�sro�abc)r�
isinstance�typerr�o�weakref�ref�gcZcollectrW�x)	rr'rlrnror(rrs�wrrrr	�test_gc�s.




zAbstractMemoryTests.test_gcc	Cs�|�td�}|�t|�Wd�n1s.0Y|�|��Wd�n1sZ0Y|�|��Wd�n1s�0Y|�|dWd�n1s�0Y|�d|d<Wd�n1s�0Y|�t|�Wd�n1�s0Y|�|jWd�n1�s80Y|�|jWd�n1�sd0Y|�|jWd�n1�s�0Y|�|j	Wd�n1�s�0Y|�|j
Wd�n1�s�0Y|�|jWd�n1�s0Y|�6|�Wd�n1�s@0YWd�n1�s`0Y|�dt
|��|�dt|��|�||�|�|t||j���|�|||j��dS)NZreleasedr�xzreleased memory)ZassertRaisesRegexrGrNrPrSr1rFrYrZr_r[r\ZassertInrc�reprr ZassertNotEqualr8r
)rrr'�checkrrr	�_check_released�s*,,,,,.,,,,,,@z#AbstractMemoryTests._check_releasedc	Cs�|jD]�}||j�}|�|�}|�}|�||�Wd�n1sD0Y|�||�|�|�}|�|��Wd�q1s�0YqdSr)rr
r�assertIsr}�release)rr'r(r�cmrrr	�test_contextmanagers


*
z'AbstractMemoryTests.test_contextmanagercCsL|jD]@}||j�}|�|�}|��|�||�|��|�||�qdSr)rr
rrr}rKrrr	�test_release#s


z AbstractMemoryTests.test_releasecCsJ|j}|dur|�d�||j�}|�|�}t�d�}|�t|j|�dS)Nr3sZZZZ)	rr7r
r�io�BytesIOr$r&�readinto)rr'r(rr-rrr	�test_writable_readonly-s



z*AbstractMemoryTests.test_writable_readonlycCs|�t|ji�dSr)r$r&rrrrr	�test_getbuf_fail8sz$AbstractMemoryTests.test_getbuf_failcCs�|j}|dur|�d�||j�}|�|�}|�t|�td��|��|�t|�td��|�|�}|��|�tt|�dS)Nr3r)	rr7r
rr �hashrr$rGrKrrr	�	test_hash;s



zAbstractMemoryTests.test_hashcCs>|j}|dur|�d�||j�}|�|�}|�tt|�dS)Nr:)r
r7r
rr$rGr�rKrrr	�test_hash_writableMs


z&AbstractMemoryTests.test_hash_writablecs||jD]p}||j�}|�|�}g�|f�fdd�	}t�||�}|�|�|�~tj��|�|�d�|��d|�qdS)Ncs��|�dSr)�append)rxr(��Lrr	�callback\sz2AbstractMemoryTests.test_weakref.<locals>.callbackr)	rr
rrtrur~�test�support�
gc_collect)rr'r(rr�rxrr�r	�test_weakrefVs



z AbstractMemoryTests.test_weakrefc	Csj|jD]^}||j�}|�|�}tt|����}|�tt|��|�|�tt|��t|ddd���qdS)Nr)rr
rr/�reversedrSr )rr'r(rZaslistrrr	�
test_reversedes


z!AbstractMemoryTests.test_reversedcCsl|jD]`}||j�}|�|�}|��}|�|j�|�t|�j�|�|��|���|�	�|��qdSr)
rr
r�
toreadonlyrWr_r8r rSr)rr'r(rZmmrrr	�test_toreadonlyms


z#AbstractMemoryTests.test_toreadonlycCs�t�dgd��}t|�}|�d�}|�d�}|dd�}t|�}~|�|dd�|�|dd�|�|jd�|�|jd�|�d�}|�|dd�|�|dd�|�|jd�|�|jd�dS)N�H)�r�r�r��Brr?r��I)�arrayr8�castr rF)rrrwrr(rB�d�_rrr	�test_issue22668xs 


z#AbstractMemoryTests.test_issue22668N) rirjrkr�propertyr
rr*r+r2r9rIrLrRrUrXr^rarbrfryr}r�r�r�r�r�r�r�r�r�r�rrrr	rs<

4	

&
	rc@s eZdZeZeZeZdZdZ	dS)�BaseBytesMemoryTestsr=r�N)
rirjrkrNr�	bytearrayr
rMrYrFrrrr	r��s
r�c@sTeZdZdZdd�Zdd�Ze�d�jZdZe	�
d�dd��Ze	�
d	�d
d��ZdS)�BaseArrayMemoryTestsNcCst�dt|��S�Nr-)r�r/�rr(rrr	r�rzBaseArrayMemoryTests.<lambda>cCst�dt|����Sr�)r�r/rPr�rrr	r�rr-z/XXX test should be adapted for non-byte bufferscCsdSrrrrrr	rf�sz#BaseArrayMemoryTests.test_getbufferz:XXX NotImplementedError: tolist() only supports byte viewscCsdSrrrrrr	rU�sz BaseArrayMemoryTests.test_tolist)
rirjrkrr
rMr�rYrF�unittest�skiprfrUrrrr	r��s
r�c@seZdZdd�Zdd�ZdS)�BaseMemoryviewTestscCst|�Sr�r8)r�objrrr	r�szBaseMemoryviewTests._viewcCs|�|||��dSr�r �rr'r��contentsrrr	rC�sz#BaseMemoryviewTests._check_contentsN)rirjrkrrCrrrr	r��sr�c@s(eZdZdZdd�Zdd�Zdd�ZdS)	�BaseMemorySliceTests�XabcdefYcCst|�}|dd�S�Nr=�r��rr�rrrr	r�szBaseMemorySliceTests._viewcCs|�|dd�||��dSr�r�r�rrr	rC�sz$BaseMemorySliceTests._check_contentscCsF|jD]:}t||j��}t�|�}|dd�|�t�|�|�qdS)Nr=r?)rr8r
rrr )rr'rr)rrr	�	test_refs�s


zBaseMemorySliceTests.test_refsN)rirjrkrrrCr�rrrr	r��sr�c@s eZdZdZdd�Zdd�ZdS)�BaseMemorySliceSliceTestsr�cCst|�}|dd�dd�S)Nr�r=r�r�rrr	r�szBaseMemorySliceSliceTests._viewcCs|�|dd�||��dSr�r�r�rrr	rC�sz)BaseMemorySliceSliceTests._check_contentsN)rirjrkrrrCrrrr	r��sr�c@seZdZdd�ZdS)�BytesMemoryviewTestcCsv|jD]j}||j�}|�t|��|�t|d��|�tt�|�tt||�|jtt|d�|jtt|dd�qdS)N)�object)�argumentT)rr
rWr8r$r&)rr'�obrrr	�test_constructor�s

z$BytesMemoryviewTest.test_constructorN)rirjrkr�rrrr	r��sr�c@seZdZdd�ZdS)�ArrayMemoryviewTestcCsHt�dtd��}t|�}t�dtddd��}||dd�<|�||�dS)Nr-�
�	r)r�r0r8r )rrrZnew_arrr	�test_array_assign�s
z%ArrayMemoryviewTest.test_array_assignN)rirjrkr�rrrr	r��sr�c@seZdZdS)�BytesMemorySliceTestNrmrrrr	r��sr�c@seZdZdS)�ArrayMemorySliceTestNrmrrrr	r��sr�c@seZdZdS)�BytesMemorySliceSliceTestNrmrrrr	r��sr�c@seZdZdS)�ArrayMemorySliceSliceTestNrmrrrr	r��sr�c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�	OtherTestc	Cs�tj�d�}t|�d��}|��}t|��d�}|dd�|dd�<|dd�|dd�<|�|jd�dD]�}|�	|��p|��}t|��|�}t|��|�dd�|dd�<t|��|�dd�|dd�<|�|jd�Wd�qj1s�0YqjdS)N�ctypesg333333�?r�r?ZBbc)
r�r��
import_modulerNZc_doubler8r�r r4ZsubTest)rr�Zp6r�rrFrrr	�test_ctypes_cast�szOtherTest.test_ctypes_castcCs6dd}t|�}|ddd�}|�|��dd�dS)Nr<i@
rZ30)r8r �hex)rrwZm1Zm2rrr	�test_memoryview_hexszOtherTest.test_memoryview_hexcCs@td�}|�t��t�|�Wd�n1s20YdS)Nrp)r8r$r&�copyr`rrr	�	test_copyszOtherTest.test_copyc	CsVtd�}ttjd�D]:}|�t��t�||�Wd�q1sF0YqdS)Nrpr=)r8r0�pickle�HIGHEST_PROTOCOLr$r&�dumps)rr�protorrr	�test_pickleszOtherTest.test_pickleN)rirjrkr�r�r�r�rrrr	r��sr��__main__)�__doc__r�Ztest.supportr�rrvrtr�r�r�r�rr�r�r�r�r�ZTestCaser�r�r�r�r�r�r�ri�mainrrrr	�<module>sN
�
�����'


Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists