Your IP : 216.73.216.85


Current Path : /opt/alt/python38/lib64/python3.8/test/__pycache__/
Upload File :
Current File : //opt/alt/python38/lib64/python3.8/test/__pycache__/test_picklebuffer.cpython-38.pyc

U

i�f��@sjdZddlZddlmZddlZddlZddlmZGdd�de�Z	Gdd�dej
�Zed	krfe�
�dS)
z[Unit tests for the PickleBuffer object.

Pickling tests themselves are in pickletester.py.
�N)�PickleBuffer)�supportc@seZdZdS)�BN)�__name__�
__module__�__qualname__�rr�;/opt/alt/python38/lib64/python3.8/test/test_picklebuffer.pyrsrc@sleZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZdS)�PickleBufferTestc
Cs�t|���}t|���}|�|j|j�|�|j|j�|�|j|j�|�|j|j�|�|j|j�|�|j|j�|�|j|j�|�|j	|j	�|�|�
�|�
��W5QRXW5QRXdS�N)�
memoryview�assertEqual�nbytes�readonly�itemsize�shape�strides�c_contiguous�f_contiguous�format�tobytes)�self�pb�equiv�mZexpectedrrr	�check_memoryviews

z!PickleBufferTest.check_memoryviewc	Csl|�t��t�W5QRX|�t��td�W5QRXtd�}|��|�t��t|�W5QRXdS)NZfoo�foo)�assertRaises�	TypeErrorrr�release�
ValueError)rrrrr	�test_constructor_failure!sz)PickleBufferTest.test_constructor_failurec	Cs�td�}|�dt|��t|��}|�|j�W5QRXttd��}|�dt|��t|��}|�|j�d|d<W5QRX|�dt|��dS)Nr�0rs0oo)rr
�bytesr�
assertTruer�	bytearray�assertFalse)rrrrrr	�test_basics,s

zPickleBufferTest.test_basicsc	CsLtd�}|��|�t��}t|�W5QRX|�dt|j��|��dS)Nrz3operation forbidden on released PickleBuffer object)rrrr rZassertIn�strZ	exception�rrZraisesrrr	�test_release9s�zPickleBufferTest.test_releasecCs<td�}t|�}||_t�|�}~~t��|�|��dS�Nr)rr�cycle�weakref�ref�gcZcollectZassertIsNone)r�brZwpbrrr	�
test_cycleCs
zPickleBufferTest.test_cyclecCs�t�d�j}|ttd��ddd�}|�|j�|�|j�t	|�}|�
||�|ddd�}|�|j�|�|j�t	|�}|�
||�|ttd��dddd	�}|�|j�|�|j�t	|�}|�
||�dS)
N�_testbuffer�����<i�rr�)r6r5)r5r3�rrr)r�
import_module�ndarray�list�ranger$rr&rrr)rr<�arrrrrr	�test_ndarray_2dLs z PickleBufferTest.test_ndarray_2dc	Cs8t|�}|���}|�|t�|�||�W5QRXdSr)r�rawZassertIsInstancerr)r�objrrrrrr	�	check_rawcs
zPickleBufferTest.check_rawc
Cs:dtd�fD](}|j|d��|�||�W5QRXqdS)Nr)rB)r%ZsubTestrC)rrBrrr	�test_rawiszPickleBufferTest.test_rawcCs�t�d�j}|ttd��ddd�}d}|�||�|ttd��ddd�}d	}|�||�|ttd��dd
dd�}d	}|�||�|dd
dd�}d}|�||�dS)Nr2r6)r6z<hr8s�)r9r6s)r9r5r:i�rr7s�)rr;r<r=r>rC)rr<r?rrrr	�test_raw_ndarrayns�z!PickleBufferTest.test_raw_ndarrayc	Cs,t|�}|�td��|��W5QRXdS)Nznon-contiguous)rZassertRaisesRegex�BufferErrorrA)rrBrrrr	�check_raw_non_contiguous�sz)PickleBufferTest.check_raw_non_contiguouscCsdt�d�j}|ttd��ddd�ddd�}|�|�|ttd��ddd�ddd�}|�|�dS)	Nr2rE)rEr7r8r9r3r4)rr;r<r=r>rH)rr<r?rrr	�test_raw_non_contiguous�s
 
 z(PickleBufferTest.test_raw_non_contiguousc	Cs2td�}|��|�t��}|��W5QRXdSr+)rrrr rAr)rrr	�test_raw_released�sz"PickleBufferTest.test_raw_releasedN)rrrrr!r'r*r1r@rCrDrFrHrIrJrrrr	r
s


		r
�__main__)�__doc__r/�picklerr-ZunittestZtestrr#rZTestCaser
r�mainrrrr	�<module>s