2[c @`s$ddlmZmZmZddlZddlZddlZddlZddlZddl Z ddl m Z ddl Z ddlmZmZmZmZmZddlmZeadZdZe je je je je je je j e j!e j"e j#e j$e j%e&g Z'gZ(xe'D]Z)xdD]Z*e j+e)j,e*Z+e j-d j.e+Z/e(j0e j1gd e+e j1d d e+e/e/j2d d fe/j2d d fj3e/j2d d fddddddfgq;Wq.WdddffddddffddfgZ4ddgddgddggdfddgddgddggdfgZ5dddffddd fd!dfd"d#d$fdd dffd%ddffd&d'dffgfd#d$fd(d)fgfd*d$fd+d,d-fd.d fgfddddffddfgZ6ddgd/dd0d/d1gddgd2dgfd3e7fd4d3d/fddgddggdfddgd5dd6d5d7gddgdd2gfd8e8fd9d8d5fddgddggdfgZ9e j1e5d e j+e4j,d:e j1e9d e j+e6j,d:e j1e5d e j+e4j,d;e j1e9d e j+e6j,d;gZ:d<e fd=YZ;d>Z<d?Z=d@Z>dAZ?dBZ@dCZAdDZBdEZCe jDjEdFZFdGZGdHZHdIZIdJZJdKZKe jDjEdLZLdMZMdNdOdPdQdRdSgZNdTdUdVdWdXdYdZgZOd[ZPd\ZQd]ZRd^ZSd_ZTd`ZUdaZVdbZWdcZXe jDjYe j+e jZj[dkdddee jDjEdfZ\dS(gi(tdivisiontabsolute_importtprint_functionN(tBytesIO(tassert_tassert_array_equalt assert_raisestraisestSkipTest(tformatcC`stjadS(N(ttempfiletmkdtempttempdir(((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyt setup_module+scC`s8tdk r4tjjtr4tjtdandS(N(R tNonetostpathtisdirtshutiltrmtree(((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pytteardown_module0s s<>itdtypei ii2iitxti4tytf8tztu1ig@g@iig@g@i tInfotvaluetc16ty2tInfo2tnametS2ty3tz3tu4tz2tb1tcolortinfotNametU8tValuey@tnny@itNNtccy@tooy@tOOtddttBytesIOSRandomSizecB`seZddZRS(cC`s4ddl}|jd|}tt|j|S(Nii(trandomtrandinttsuperR5tread(tselftsizeR6((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyR9s N(t__name__t __module__RR9(((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyR5scC`s>t}tj||t|j}tj|}|S(N(RR t write_arraytgetvaluet read_array(tarrtftf2tarr2((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyt roundtrips  cC`s>t}tj||t|j}tj|}|S(N(RR R>R5R?R@(RARBRCRD((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pytroundtrip_randsizes  cC`sEt}tj||t|jdd!}tj|}|S(Nii(RR R>R?R@(RARBRCRD((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pytroundtrip_truncateds  cC`st||kdS(N(R(to1to2((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyt assert_equal_scC`s2x+ttD]}t|}t||q WdS(N(t basic_arrayst record_arraysRER(RARD((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_roundtrips cC`sDx=ttD]1}|jtkr t|}t||q q WdS(N(RKRLRtobjectRFR(RARD((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_roundtrip_randsizes cC`s7x0tD](}|jtkrttt|qqWdS(N(RKRRNRt ValueErrorRG(RA((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_roundtrip_truncateds cC`sHtjddtjttjdf}t|}t||dS(NiR(tnptonesRtstrR t BUFFER_SIZERER(t long_str_arrt long_str_arr2((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyt test_long_strs+ c C`sitjdkptjdksexDttD]5}|jjrAq)ntjjt d}tjjt d}t |d}zt j ||Wd|j X|jjo|jj }t j|ddd|jd |jd |}||d <~t |d }|j}|j t |d }|j}|j t||t j|dd }~q)WndS(Ntwin32tcygwins normal.npys memmap.npytwbtmodesw+Rtshapet fortran_order.trbtr(tsystplatformRKRLRt hasobjectRRtjoinR topenR R>tclosetflagst f_contiguoust c_contiguoust open_memmapR]R9RJ(RAtnfntmfntfpR^tmat normal_bytest memmap_bytes((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_memmap_roundtrips0        cC`satjjdd}tjjtd}tj|d|tj|d}t ||dS(Niscompressed.npzRA( RRR6trandRRRdR tsavez_compressedtloadR(RAtnpz_filetarr1((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_compressed_roundtrips cC`sotjddkrd}nd}tjjtjjtd|}tj|}t |tj ddS(Niiswin64python2.npys python3.npytdatai( Rat version_infoRRRdtdirnamet__file__RRRtRRS(tfnameRRx((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyt%test_python2_python3_interoperabilitys  $c C`stjjtjjtd}tjddkr=t}nddl}|j }t j d|ddgdt }xddd d gD]}tjj||}xd d gD]}t j|d |}|jdr|d}|jn|}tjddkr|d krp|jdrptt|dtt|d |d t|dj||dqtt|dtt||qt||qWtjddkr|jdrx|jdr@t j|}tt|jd|jt j|dtd d }tt|jd|jquttt j|ttt j|d d dtqxqqWdS(NRxiiu優良s不良Rspy2-objarr.npyspy2-objarr.npzspy3-objarr.npyspy3-objarr.npztbytestlatin1tencodings.npzRtpy2it fix_imports(RRRdRzR{RaRytranget __builtin__txrangeRRtarrayRRNRttendswithRft startswithRt isinstanceRTRtencodeR~Rt UnicodeErrort __getitem__tFalset ImportError( tdata_dirRRtexpectedR|RRtdata_fRx((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_pickle_python2_python3sJ!        !  cC`stjjtjjtd}tjj|d}tttj|dt ddtjj|d}tj|dt dd}tt|j dtjjt d}tttj |tj dgd tdt dS( NRxspy2-objarr.npyt allow_pickleRRspy2-objarr.npzRspickle-disabled.npyR(RRRdRzR{RRPRRRtRRR tsaveRRRN(RRRB((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_pickle_disallowNs! 'cC`s2t}gtdD]}d|dtf^q}tjdd|}tj||dd tjd t A}tj d d t tj||t |dj t kWdQX|jd|j}t t|tjdk|jdtj|}t||tttj||ddS(Nis%didiRtversioniitrecordtalwaysti(ii(ii(RRtfloatRRRSR R>twarningstcatch_warningstTruetfilterwarningst UserWarningRtcategorytseektreadlinetlent ARRAY_ALIGNR@RRRP(RBtitdttdtwtheadertn((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_version_2_0^s -    cC`sjgtdD]}d|dtf^q }tjdd|}tjdddt}ttt j |d d d|j d |j d dt j |d d d|j d |j d d}||d<~t jdtk}t jddtt j |d d d|j d |j d d}t|djtk||d<~WdQXt j |d d}t||dS(Nis%didiRRtmmaptdirR\sw+R]Riii.RRR`(ii(ii(RRRRRSR tmktempR RRPR RjRR]RRRRRRRRR(RRRttfRnR((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_version_2_0_memmapws$-!   cC`st}tjd}tj||ddtj||tj||ddtj||tj||ddtj||d d d d d g}xO|D]G}ytj||d|Wntk rqXtd|fqWdS(NiRiiis9we should have raised a ValueError for the bad version %r(ii(ii(ii(ii(ii(ii(ii(RRRtarangeR R>RRPtAssertionError(RBRAt bad_versionsR((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_write_versions&    sNUMPYsNUMPYsNUMPYsNUMPYsNUMPYsNUMPYsNUMPYsNUMPYsnumpysMATLBsNUMPYsNUMPYRcC`st}t}tjddt}tj||dd tj||dd |jd|jdtj|}tj|}t|d kt|d kt|j tj kt|j tj kdS( NiiRRiii(ii(ii(ii(ii(ii( RRRRSRR R>Rt read_magicRttellt MAGIC_LEN(ts1ts2RAtversion1tversion2((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_read_magics    cC`s4x-tD]%}t|}tttj|qWdS(N(tmalformed_magicRRRPR R@(tmagicRB((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_read_magic_bad_magics  cC`s8x1ttD]%}t|}tttj|q WdS(N(tbad_version_magicRRRRPR R@(RRB((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_read_version_1_0_bad_magics cC`s\tttjddtttjddtttjddtttjdddS(Niii(RRPR R(((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_bad_magic_argsscC`sst}idd6dd6}tj||t}idd6dd6dddd6}tttj||dS(NitaitbRitc(RR twrite_array_header_1_0RRP(tsR((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_large_headers   #cC`st}tjddt}tj||dd|jtjtj|\}}}t |j tj dkt |||fd t tfkdS( NiiRRii(ii(ii(ii( RRRRSRR R>RRtread_array_header_1_0RRRR(RRAR]tfortranR((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_read_array_header_1_0s cC`st}tjddt}tj||dd|jtjtj|\}}}t |j tj dkt |||fd t tfkdS( NiiRRii(ii(ii(ii( RRRRSRR R>RRtread_array_header_2_0RRRR(RRAR]RR((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_read_array_header_2_0s cC`st}tttj|td}tttj|td}tttj|id d6dd6}t}tj||tttj|id d6td6dd6d d 6}t}tj||tttj|dS( Nt1siiR]RtdescrR^itextrakey(ii(ii(RRRPR RRR(RR((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_bad_headers$         cC`stjdkstjdkr-tdntjjtd}y)ddl}|jddd|gWnt k rtd nXt |d 3}|j d t j d }t j||WdQXt |d #}|j d t j|}WdQXt||dS(NRYRZs)Unknown if Windows has sparse filesystemst sparse_fileittruncates-st 5368709120sCould not create 5GB large fileR[I@iR_(RaRbRRRRdR t subprocesst check_callt ExceptionReRRRRRRtR(ttf_nametspRBRR`((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_large_file_support*s     treasonstest requires 64-bit systemcC`sytjd dtj}Wntk r;tdnXtjjtd}t |d}tj |d|WdQXt |d}tj |d}WdQXt |j |j kdS( NiiRsCould not create large filet large_archiveR[RAR_i@(i@i(RRtemptytuint8t MemoryErrorRRRRdR RetsavezRtRR](RR|RBtnew_a((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyttest_large_archiveCs (]t __future__RRRRaRRR RtpytesttioRtnumpyRRt numpy.testingRRRRRt numpy.libR RR R RRtint8tuint16tint16tuint32tint32tuint64tint64tfloat32tfloat64t complex64t complex128RNtscalarsRKtscalartendianRt newbyteorderRtastypetbasictextendRtreshapetTtPdescrtPbufferTtNdescrRRtNbufferTRLR5RERFRGRJRMRORQRXtmarktslowRqRwR}RRRRRRRRRRRRRRRRtskipiftintptitemsizeR(((s:/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_format.pyts       (     = $*      9'9-$$$*       &  6           $