python (3.12.0)

(root)/
lib/
python3.12/
test/
__pycache__/
test_picklebuffer.cpython-312.opt-1.pyc

ΑedZddlZddlmZddlZddlZddlmZGddeZ	GddejZed	k(rejyy)
z[Unit tests for the PickleBuffer object.

Pickling tests themselves are in pickletester.py.
N)PickleBuffer)
import_helperceZdZy)BN)__name__
__module____qualname__J/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_picklebuffer.pyrrsrrcTeZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZy
)PickleBufferTestc@t|5}t|5}|j|j|j|j|j|j|j|j|j|j|j
|j
|j|j|j|j|j|j|j|j|j|j|j|j|j|j|jddddddy#1swYxYw#1swYyxYwN)
memoryviewassertEqualnbytesreadonlyitemsizeshapestridesc_contiguousf_contiguousformattobytes)selfpbequivmexpecteds     rcheck_memoryviewz!PickleBufferTest.check_memoryviews6
^
	BqE"	
Bh  8??;  X->->?  X->->?  (..9  H,<,<=  1F1FG  1F1FG  8??;  h.>.>.@A	
B
	B
	B	
B	
B
	B
	Bs#FEF7FF	
FFcv|jt5tddd|jt5tddddtd}|j	|jt
5t|dddy#1swYwxYw#1swYZxYw#1swYyxYw)Nfoofoo)assertRaises	TypeErrorrrrelease
ValueError)rrs  rtest_constructor_failurez)PickleBufferTest.test_constructor_failure!s


y
)	N	


y
)	 	 
v			


z
*	O					 	 
		s"BB#B/B #B,/B8ctd}|jdt|t|5}|j	|j
dddtt
d}|jdt|t|5}|j|j
d|d<ddd|jdt|y#1swYxYw#1swY1xYw)Nr$0rs0oo)rrbytesr
assertTruer	bytearrayassertFalse)rrrs   rtest_basicszPickleBufferTest.test_basics,s
&
!r+
^	(qOOAJJ'	()F+
,r+
^	qQZZ(AaD		
r+	(	(
		sC!C!C!C*ctd}|j|jt5}t	|ddd|jdt
j|jy#1swY?xYw)Nr$z3operation forbidden on released PickleBuffer object)rr'r%r(rassertInstr	exceptionrrraisess   rtest_releasezPickleBufferTest.test_release9si
&
!





z
*	frN	

K&**+	-	

		sA;;Bctd}t|}||_tj|}~~tj|j|yNr$)rrcycleweakrefrefgccollectassertIsNone)rbrwpbs    r
test_cyclezPickleBufferTest.test_cycleCsF
fI
!_kk"o
r


#% rctjdj}|tt	ddd}|j|j|j|jt|}|j|||ddd}|j|j|j|jt|}|j|||tt	dddd	}|j|j|j|jt|}|j||y)
N_testbuffer<irr)rHrG)rGrErrr)r
import_modulendarraylistranger-rr/rrr!)rrNarrrs    rtest_ndarray_2dz PickleBufferTest.test_ndarray_2dLs--m<DDd59oVDA(()))*
#
b#&#A#h))*))*
#
b#&d59oVWTR(()))*
#
b#&rct|}|j5}|j|t|j	||dddy#1swYyxYwr)rrawassertIsInstancerr!)robjrrrs     r	check_rawzPickleBufferTest.check_rawcsL
#

VVX	,!!!Z0!!!U+	,	,	,s)AAcdtdfD]/}|j|5|j||ddd1y#1swY<xYw)Nr$)rV)r.subTestrW)rrVs  rtest_rawzPickleBufferTest.test_rawisQIf-.	)C#&
)sC(
)
)	)
)
)sAA
	ctjdj}|tt	ddd}d}|j|||tt	ddd}d	}|j|||tt	ddd
d}d	}|j|||dd
d}d}|j||y)NrDrH)rHz<hrJs)rKrHs)rKrGrLir
rIs)rrMrNrOrPrW)rrNrQrs    rtest_raw_ndarrayz!PickleBufferTest.test_raw_ndarrayns--m<DDd58nD>+sE"d58nF4@CsE"d58nFF!#DsE"cD1#sE"rct|}|jtd5|jdddy#1swYyxYw)Nznon-contiguous)rassertRaisesRegexBufferErrorrT)rrVrs   rcheck_raw_non_contiguousz)PickleBufferTest.check_raw_non_contiguouss;
#


#
#K1A
B	FFH			s	<Actjdj}|tt	dddddd}|j||tt	dddddd}|j|y)	NrDr\)r\rIrJrKrErF)rrMrNrOrPra)rrNrQs   rtest_raw_non_contiguousz(PickleBufferTest.test_raw_non_contiguoussr--m<DDd58nD>ssC%%c*d59oVDA#A#F%%c*rctd}|j|jt5}|j	dddy#1swYyxYwr9)rr'r%r(rTr5s   rtest_raw_releasedz"PickleBufferTest.test_raw_releasedsC
&
!





z
*	fFFH			sAAN)rrr	r!r)r0r7rBrRrWrZr]rarcrer
rrrrs?B	,!'.,)
#*
+rr__main__)__doc__r=picklerr;unittesttest.supportrr,rTestCaserrmainr
rr<module>rmsV

&		Cx((CLzHMMOr