zmc
2023-10-12 ed135d79df12a2466b52dae1a82326941211dcc9
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
U
O±dã@s®ddlZddlZddlZddlZddlmZddlmZmZddl    m
Z
m Z m Z m Z mZmZmZmZmZddl    mZmZmZddlmZmZmZmZmZmZGdd„dƒZdS)    éN)ÚPath)ÚNamedTemporaryFileÚ TemporaryFile)    ÚmemmapÚsumÚaverageÚproductÚndarrayÚisscalarÚaddÚsubtractÚmultiply)ÚarangeÚallcloseÚasarray)Úassert_Ú assert_equalÚassert_array_equalÚsuppress_warningsÚIS_PYPYÚ break_cyclesc@sÊeZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dd„Z e j jejdkdddd„ƒZdd„Zdd„Zdd„Zdd„Zd d!„Zd"d#„Zd$d%„Zd&d'„Zd(d)„Zd*d+„Zd,d-„Zd.S)/Ú
TestMemmapcCs:tdd|_d|_d|_td|jd|_|j |j¡dS)NÚmmap)Úprefix)ééÚfloat32é ©Údtype)rÚtmpfpÚshaperrÚdataÚresize©Úself©r&úSd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\numpy/core/tests/test_memmap.pyÚ setup_methods
 zTestMemmap.setup_methodcCs$|j ¡d|_tr tƒtƒdS)N)r Úcloser"rrr$r&r&r'Úteardown_methods
 
zTestMemmap.teardown_methodcCsrt|j|jd|jd}|jdd…|dd…<~t|j|jd|jd}tt|j|ƒƒt|j|ƒt|j    j
dƒdS)Núw+©rÚmoder!ÚrF) rr rr!r"rrrrÚflagsZ    writeable)r%ÚfpZnewfpr&r&r'Útest_roundtrip s ÿ ÿ zTestMemmap.test_roundtripcCs8|d}t||jd|jd}|jdd…|dd…<~dS)Nrr+r,)rrr!r")r%Útmp_pathÚtmpnamer0r&r&r'Útest_open_with_filename.s 
ÿz"TestMemmap.test_open_with_filenamec    Cs*tƒ}t||j|jd}~W5QRXdS©N©rr!)rrrr!)r%Úfr0r&r&r'Útest_unnamed_file5szTestMemmap.test_unnamed_filecCs>d}d}t|j|j||j|d}t||jƒt||jƒ~dS)Nér+)rr-r!Úoffset)rr rr!rr:r-)r%r:r-r0r&r&r'Útest_attributes:s ÿ  zTestMemmap.test_attributescCsn|d}t||jd|jd}ttj |¡ƒ}|jdd…|dd…<t||j    ƒ|dd…}t||j    ƒ~~dS©Nrr+r,r9)
rrr!rÚosÚpathÚabspathr"rÚfilename©r%r2r3r0r?Úbr&r&r'Ú test_filenameCs
ÿ   zTestMemmap.test_filenamecCs‚|d}tt|ƒ|jd|jd}tt|ƒ ¡ƒ}|jdd…|dd…<t|t|j ¡ƒƒ|dd…}t|t|j ¡ƒƒ~~dSr<)    rrrr!ÚstrÚresolver"rr@rAr&r&r'Ú    test_pathOsÿ zTestMemmap.test_pathcCs*t|j|jd|jd}t|j|jjƒdS)Nr+r,)rr rr!rr@Úname©r%r0r&r&r'Útest_filename_fileobj^s ÿz TestMemmap.test_filename_fileobjZgnu0zKnown to fail on hurd)ÚreasoncCsLt|j|jd|jd}|jdd…|dd…<t|d|jdƒ| ¡dS)Nr+r,r)rr rr!r"rÚflushrHr&r&r'Ú
test_flushcs  ÿzTestMemmap.test_flushcCsbt|j|jd|jd}d|d<|dd…}t|ddƒ~t|ddƒd|d<t|ddƒdS)Nr+r,érr9é)rr rr!r)r%Zfp_baseZfp_viewr&r&r'Útest_dells ÿ zTestMemmap.test_delcCs<t|j|jd|jd}|d}t|tƒr8t|j|jk    ƒdS)Nr+r,é
©rr rr!Ú
isinstancerÚ_mmap©r%r0Útmpr&r&r'Ú test_arithmetic_drops_referenceszs  ÿ
z+TestMemmap.test_arithmetic_drops_referencescCs<t|j|jd|jd}|d}t|tƒr8t|j|jk    ƒdS)Nr+r,))r9é)rWrrQrTr&r&r'Útest_indexing_drops_referencess  ÿ
z)TestMemmap.test_indexing_drops_referencescCs:t|j|jd|jd}t|dd…dd…fj|jkƒdS)Nr+r,rW)rr rr!rrSrHr&r&r'Útest_slicing_keeps_referencesˆs ÿz(TestMemmap.test_slicing_keeps_referencescCsZt|j|j|jd}| ¡}| ¡}t|j|kƒt|j|kƒt|ƒ}t|j|kƒdSr5)rr rr!ÚviewrÚbaser)r%r0Znew1Znew2Z    new_arrayr&r&r'Ú    test_viewszTestMemmap.test_viewc    Cs0t|j|j|jd}|j|dd…<tƒx}| td¡tt    t
fD]Z}||ƒ}t t |ƒƒt |j |jdj kƒt ||ddj tkƒt ||ddj tkƒq@W5QRXtttfD]D}t |||jƒj tkƒt ||j|ƒj tkƒt |||ƒj tkƒq°|d7}|j tkst‚t|d|d|j tks,t‚dS)Nr6z&np.average currently does not preserve)rrr©Zaxisr9)Úout)rr rr!r"rÚfilterÚ FutureWarningrrrrr
Ú    __class__r    r r r ÚAssertionError)r%r0ÚsupZunary_opÚresultZ    binary_opr&r&r'Útest_ufunc_return_ndarray–s$  "z$TestMemmap.test_ufunc_return_ndarraycCsZt|j|j|jd}|j|dd…<t|dd…dd…fjtkƒt|ddgjtkƒdS)Nr6r9éÿÿÿÿr)rr rr!r"rrar    rHr&r&r'Ú test_getitem®szTestMemmap.test_getitemcCs’Gdd„dtƒ}||j|j|jd}|j|dd…<tt|ddj|kƒtt|ƒj|kƒt|dd…dd…fj|kƒ|ddgj|ksŽt‚dS)Nc@s eZdZdS)z7TestMemmap.test_memmap_subclass.<locals>.MemmapSubClassN)Ú__name__Ú
__module__Ú __qualname__r&r&r&r'ÚMemmapSubClass·srkr6rr]r9rf)    rr rr!r"rrrarb)r%rkr0r&r&r'Útest_memmap_subclass¶szTestMemmap.test_memmap_subclasscCs8dtj}tjd}t|j|d|d}t|j|kƒdS)NrMr9r+)r!r-r:)rZALLOCATIONGRANULARITYrr rr:)r%Úsizer:r0r&r&r'Ú4test_mmap_offset_greater_than_allocation_granularityÄs
 
z?TestMemmap.test_mmap_offset_greater_than_allocation_granularitycCs*|j d¡t|jdd}t|jdƒdS)NsaaaaaaaaaaaaaaaaÚfloat64r)rW)r Úwriterrr!)r%Úmmr&r&r'Ú test_no_shapeÊs zTestMemmap.test_no_shapec    CsJtjtddt|jdddW5QRX|j d¡t|jddddS)Nz
empty file)Úmatch)rrr+)r!r-ó)ÚpytestZraisesÚ
ValueErrorrr rpr$r&r&r'Útest_empty_arrayÏs zTestMemmap.test_empty_arrayN)rhrirjr(r*r1r4r8r;rCrFrIruÚmarkZskipifÚsysÚplatformrLrOrVrXrYr\rergrlrnrrrwr&r&r&r'rs0     ÿ
    r)ryr=rruÚpathlibrÚtempfilerrÚnumpyrrrrr    r
r r r rrrZ numpy.testingrrrrrrrr&r&r&r'Ú<module>s ,