1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
U
O±d*ã@s:ddlZddlZddlZddlmZmZGdd„dƒZdS)éN)Úassert_array_equalÚIS_PYPYc@søeZdZejjedddd„ƒZdd„Zdd„Z    ejjeddd    d
„ƒZ
ej  d e j e je je je je je je je je je je je jg ¡d d „ƒZdd„Zdd„Zdd„Zej  dedƒ¡dd„ƒZdd„Z dd„Z!dd„Z"dd„Z#d d!„Z$d"d#„Z%d$S)%Ú
TestDLPackzPyPy can't get refcounts.)ÚreasoncCs<t d¡}| ¡}t |¡dks$t‚~t |¡dks8t‚dS©Nééé)ÚnpÚarangeÚ
__dlpack__ÚsysÚ getrefcountÚAssertionError©ÚselfÚxÚy©rúSd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\numpy/core/tests/test_dlpack.pyÚtest_dunder_dlpack_refcount    s
 
z&TestDLPack.test_dunder_dlpack_refcountc    Cs<t d¡}|jddt t¡|jddW5QRXdS)Nr)Ústreamé)r
r r ÚpytestÚraisesÚ RuntimeError©rrrrrÚtest_dunder_dlpack_streams
  z$TestDLPack.test_dunder_dlpack_streamc    CsTt dtjfdtjfg¡}tjd|d}|d}t t¡t |¡W5QRXdS)NÚintÚchar)r©Údtype)    r
r!Úint32Úint8ÚzerosrrÚ BufferErrorÚ from_dlpack)rÚdtrÚzrrrÚ%test_strides_not_multiple_of_itemsizes
 z0TestDLPack.test_strides_not_multiple_of_itemsizecCs>t d¡}t |¡}t |¡dks&t‚~t |¡dks:t‚dSr)r
r r&r rrrrrrÚtest_from_dlpack_refcount s
 
 
z$TestDLPack.test_from_dlpack_refcountr!cCs6tjd|d}t |¡}|j|jks(t‚t||ƒdS)Nrr )r
r r&r!rr)rr!rrrrrÚtest_dtype_passthrough(s
z!TestDLPack.test_dtype_passthroughc    Cs4t t d¡¡}t t¡t |¡W5QRXdS)Nz
2021-05-27)r
ZasarrayZ
datetime64rrr%r&rrrrÚtest_invalid_dtype5s zTestDLPack.test_invalid_dtypec    Cs@t d¡ ¡}tjd|d}t t¡t |¡W5QRXdS)Nz=i8rr )r
r!Z newbyteorderr rrr%r&)rr'rrrrÚtest_invalid_byte_swapping;s z%TestDLPack.test_invalid_byte_swappingcCs¢t d¡ d¡}|d}t|t |¡ƒ|dd…df}t|t |¡ƒ|ddd…f}t|t |¡ƒ|d}t|t |¡ƒt |¡ ¡}t|t |¡ƒdS)Né)rrrr)r
r Zreshaperr&ZdiagonalÚcopy)rrÚy1Úy2Zy3Zy4Zy5rrrÚtest_non_contiguousBszTestDLPack.test_non_contiguousÚndimé!cCs0d|}tj|tjd}|t |¡jks,t‚dS)N)rr )r
r$Úfloat64r&Úshaper)rr3r6rrrrÚtest_higher_dimsTszTestDLPack.test_higher_dimscCsVt d¡}| ¡dkst‚t |¡}| ¡dks4t‚|ddd…}| ¡dksRt‚dS)Nr)rrr    )r
r Z__dlpack_device__rr&)rrrr(rrrÚtest_dlpack_device[s 
 
zTestDLPack.test_dlpack_devicecCst d¡}| ¡}t‚dS)Nr)r
r r r)rrÚ_rrrÚdlpack_deleter_exceptioncs
z#TestDLPack.dlpack_deleter_exceptionc    Cs"t t¡| ¡W5QRXdS)N)rrrr:)rrrrÚ test_dlpack_destructor_exceptionhs z+TestDLPack.test_dlpack_destructor_exceptionc    Cs4t d¡}d|j_t t¡| ¡W5QRXdS)NrF)r
r ÚflagsZ    writeablerrr%r rrrrÚ test_readonlyls
 zTestDLPack.test_readonlycCs"t d¡}t |¡}t||ƒdS)Ngð?)r
Úarrayr&rrrrrÚ
test_ndim0rs
 
zTestDLPack.test_ndim0cCs8tjdddtjdtjddd}t |¡}t||ƒdS)NZf8)é
rr)ééPéièr ÚF)r!r6ÚstridesÚbufferÚorder)r
ZndarrayZonesÚuint8r&rrrrrÚtest_size1dims_arraysws 
ÿ
z TestDLPack.test_size1dims_arraysN)&Ú__name__Ú
__module__Ú __qualname__rÚmarkZskipifrrrr)r*Z parametrizer
r#Úint16r"Úint64rHZuint16Zuint32Zuint64Úfloat16Úfloat32r5Z    complex64Z
complex128r+r,r-r2Úranger7r8r:r;r=r?rIrrrrrsB
 
ü
 
r)r rÚnumpyr
Z numpy.testingrrrrrrrÚ<module>s