σ 2ΔΘ[c@`sΊddlmZmZmZddlZddlZddlZddlm Z m Z m Z ddl m Z ddlmZmZmZmZyydZeedƒrΩye dejjjƒZWqΩek rΥqΩXnedkre dejjjƒZneZWnek r eZnXejje d d ƒejjej d kd d ƒd e!fd„ƒYƒƒZ"de!fd„ƒYZ#ejje d dƒde!fd„ƒYƒZ$dS(i(tdivisiontabsolute_importtprint_functionN(t ndpointert load_librarytas_array(tget_shared_lib_extension(tassert_tassert_array_equalt assert_raisest assert_equaltgettotalrefcountt multiarray_dt multiarraytreasons#ctypes not available in this pythontcygwinsKnown to fail on cygwintTestLoadLibrarycB`seZd„Zd„ZRS(cC`sNytdtjjjƒWn-tk rI}dt|ƒ}t|ƒnXdS(NR sPctypes is not available on this python: skipping the test (import error was: %s)(RtnptcoreR t__file__t ImportErrortstrtprint(tselftetmsg((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyt test_basics  cC`sƒyOy-tdtƒ}td|tjjjƒWntk rMtdƒnXWn-tk r~}dt |ƒ}t|ƒnXdS(Nt is_python_exts multiarray%ss&No distutils available, skipping test.sPctypes is not available on this python: skipping the test (import error was: %s)( RtTrueRRRR RRRR(RtsoRR((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyt test_basic2's  (t__name__t __module__RR(((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyRs t TestNdpointercB`s5eZd„Zd„Zd„Zd„Zd„ZRS(cC`sξtj}td|ƒ}t|jtjdg|ƒƒƒd}td|ƒ}t|jtjdg|ƒƒƒtjdƒ}td|ƒ}|jtjdg|ƒƒtt|jtjdg|j dƒƒƒddg}tjtj g}i|d6|d 6}tj|ƒ}td|ƒ}t|jtj d |ƒƒƒtj|ƒ}td|ƒ}t|jtj d |ƒƒƒtj|d t ƒ}|j |j krΛtt|jtj d|ƒƒnt|jtj d|ƒƒƒdS(Ntdtypeisi4tswaptxtytnamestformatsi talign(i (i (i (i (RtintcRRt from_paramtarrayR"R t TypeErrort newbyteordertfloat64tzerosRtitemsize(Rtdttptdtnamest dtformatstdtdescrtsamedttdt2((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyt test_dtype8s0 ""  "cC`sΙtddƒ}t|jtjdƒƒƒtt|jtjdgƒƒtddƒ}tt|jtjdƒƒt|jtjdgƒƒƒtddƒ}t|jtjdggƒƒƒdS(Ntndimiii(RRR*RR+R R,(RR2((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyt test_ndimSscC`s‹tddƒ}t|jtjddggƒƒƒtt|jtjdgdggƒƒtddƒ}t|jtjdƒƒƒdS(Ntshapeii(ii((RRR*RR+R R,(RR2((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyt test_shape]s %(cC`sΕtjddgddggddƒ}tddƒ}t|j|ƒƒtdd ƒ}tt|j|ƒtd|jjƒ}t|j|ƒƒtt|jtjddgddggƒƒdS( NiiiitordertFtflagstFORTRANt CONTIGUOUS( RR+RRR*R R,R?tnum(RR$R2((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyt test_flagsds'cC`s8tdtjƒ}tdtjƒ}t||kƒdS(NR"(RRR.R(Rta1ta2((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyt test_cachens(RR R8R:R<RCRF(((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyR!7s    s0ctypes not available on this python installationt TestAsArraycB`s#eZd„Zd„Zd„ZRS(cC`sΧddlm}|d}t|ddƒƒ}t|jd ƒt|tjddgƒƒt|d|ddƒ|ddƒ|ddƒƒƒ}t|jd ƒt|tjddgddgddggƒƒdS( Ni(tc_intiiiiii(i(ii(tctypesRHRR R;RRR+(RRHtpair_tta((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyt test_arrayws 7cC`sΞddlm}m}m}||dtdƒŒ||ƒƒ}t|ddƒ}t|jdƒt|t j dƒƒt|dd ƒ}t|jd ƒt|t j dƒj d ƒƒt t t|ƒdS( Ni(RHtcasttPOINTERi R;ii(i (i (ii(ii(ii(RIRHRMRNtrangeRR R;RRtarangetreshapeR R,(RRHRMRNR2RK((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyt test_pointer‚s%c`s_ddlm‰m}m}d|f‡fd†ƒY}d|}d|||ddƒ|ddƒ|ddƒƒ||dd ƒ|dd ƒ|dd ƒƒƒ}tjdddgdddggd dtjfgƒ‰‡fd †}|t|ƒƒ|t||ƒddƒƒ|t||dƒddƒƒ|t||ddƒddƒƒdS(Ni(tc_int16t StructuretpointertStructc`seZdˆfgZRS(RK(RR t_fields_((RS(s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyRV•siiRKiiiiR"c`s$t|jˆjƒt|ˆƒdS(N(R R"(R$(texpected(s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pytcheck€sR;(i(i(i(i(i(i((i(ii(RIRSRTRURR+tint16R(RRTRURVtStruct3tc_arrayRY((RSRXs9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyttest_struct_array_pointer’s *0  (RR RLRRR](((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyRGts (%t __future__RRRtsystpytesttnumpyRtnumpy.ctypeslibRRRtnumpy.distutils.misc_utilRt numpy.testingRRR R tNonetcdllthasattrRR RtOSErrorRt _HAS_CTYPERtFalsetmarktskipiftplatformtobjectRR!RG(((s9/tmp/pip-build-fiC0ax/numpy/numpy/tests/test_ctypeslib.pyts6   "      =