ó {G_Tc@s@dZddlZddlZddlZddlZddlZddlmZddlZddd„ƒYZ de fd„ƒYZ ddd „ƒYZ d dd „ƒYZ d dd „ƒYZ deje e fd„ƒYZdeje e fd„ƒYZdeje e fd„ƒYZd„Zedkr<eƒndS(sTUnit tests for the memoryview XXX We need more tests! Some tests are in test_bytes iÿÿÿÿN(t test_supporttAbstractMemoryTestscBs³eZdZed„ƒZed„ƒZd„Zd„Zd„Zd„Z d„Z d„Z d „Z d „Z d „Zd „Zd „Zd„Zd„Zd„Zd„ZRS(tabcdefcCs|jS(N(t source_bytes(tself((s0/usr/local/lib/python2.7/test/test_memoryview.pyt_sourcescCstd|j|jgƒS(N(tfiltertNonetro_typetrw_type(R((s0/usr/local/lib/python2.7/test/test_memoryview.pyt_typesscs„|j}||jƒ}tj|ƒ}|j|ƒ‰|jˆd|dƒƒ|jˆdtƒ|jˆd|dƒƒ|jˆd|dƒƒ|jˆd|dƒƒ|jt ‡fd†ƒ|jt ‡fd†ƒ|jt ‡fd †ƒ|jt ‡fd †ƒ|jt ‡fd †ƒ|jt ‡fd †ƒ|jt ‡fd †ƒd‰|jtj|ƒ|ƒdS(NitaitfiÿÿÿÿiúÿÿÿcsˆdS(Ni(((tm(s0/usr/local/lib/python2.7/test/test_memoryview.pyt%scsˆdS(Niùÿÿÿ(((R (s0/usr/local/lib/python2.7/test/test_memoryview.pyR&scs ˆtjS(N(tsystmaxsize((R (s0/usr/local/lib/python2.7/test/test_memoryview.pyR'scs ˆtj S(N(RR((R (s0/usr/local/lib/python2.7/test/test_memoryview.pyR(scsˆdS(N(R((R (s0/usr/local/lib/python2.7/test/test_memoryview.pyR*scsˆdS(Ng(((R (s0/usr/local/lib/python2.7/test/test_memoryview.pyR+scsˆdS(NR (((R (s0/usr/local/lib/python2.7/test/test_memoryview.pyR,s( t getitem_typeRRt getrefcountt_viewt assertEqualtassertIsInstancetbytest assertRaisest IndexErrort TypeErrorR(Rttptitemtbt oldrefcount((R s0/usr/local/lib/python2.7/test/test_memoryview.pytcheck_getitem_with_types$ cCs%x|jD]}|j|ƒq WdS(N(R R(RR((s0/usr/local/lib/python2.7/test/test_memoryview.pyt test_getitem0scCsoxh|jD]]}||jƒ}|j|ƒ}|jt|ƒgtt|ƒƒD]}||^qPƒq WdS(N(R RRRtlisttrangetlen(RRRR ti((s0/usr/local/lib/python2.7/test/test_memoryview.pyt test_iter4scCsLxE|jD]:}||jƒ}|j|ƒ}|j|jƒtƒq WdS(N(R RRRt__repr__tstr(RRRR ((s0/usr/local/lib/python2.7/test/test_memoryview.pyt test_repr:scsº|js|jdƒn|j|jƒ}tj|ƒ}|j|ƒ‰‡fd†}|jt|dƒ|jt|dƒ|jt|tdƒƒd‰|j tj|ƒ|ƒdS(Nsno read-only type to testcs|ˆdˆsR(R RRttobytestjoinRRR(RRR Rtexpected((Rs0/usr/local/lib/python2.7/test/test_memoryview.pyt test_tobytes‚s cCsUxN|jD]C}|j||jƒƒ}|jƒ}|j|ttdƒƒq WdS(NR(R RRttolistRtmaptord(RRR tl((s0/usr/local/lib/python2.7/test/test_memoryview.pyt test_tolistŒs cCs‚x{|jD]p}|j||jƒƒ}x§|jD]œ}|j||dƒkƒ|j||dƒkƒ|j||dƒkƒ|j||dƒkƒ|j||dƒkƒ|j||dƒkƒq2W|j||kƒ|j||kƒ|j|dd!|kƒ|j|dd!|kƒ|j|dkƒ|j|dkƒ|jd|kƒ|jd|kƒq WdS(NRtabcdetabcde1iiiuabcdef(R RRt assertTruet assertFalse(RRR ttp_comp((s0/usr/local/lib/python2.7/test/test_memoryview.pyt test_compare’s"cCsÃ|j||jƒƒ}|j|j|jƒ|j|jtƒ|j|j|jƒ|j|jdƒ|j|jdƒ|jt |ƒdƒ|j|j |jfƒ|j|j dƒ|S(Nii(i( RRRtformatRR&titemsizetndimtshapeR"tstridest suboffsetsR(RRR ((s0/usr/local/lib/python2.7/test/test_memoryview.pytcheck_attributes_with_type¬scCsB|js|jdƒn|j|jƒ}|j|jtƒdS(Nsno read-only type to test(RR*RRRtreadonlytTrue(RR ((s0/usr/local/lib/python2.7/test/test_memoryview.pyttest_attributes_readonly¸s cCsB|js|jdƒn|j|jƒ}|j|jtƒdS(Nsno writable type to test(R R*RRRRStFalse(RR ((s0/usr/local/lib/python2.7/test/test_memoryview.pyttest_attributes_writable¾s cCsÕxÎ|jD]Ã}t|tƒs%q nd|fd„ƒY}ddd„ƒY}||dƒƒ}|j|ƒ}|ƒ}||_||_tj|ƒ}d}}}t j ƒ|j |ƒdk|ƒƒq WdS(NtMySourcecBseZRS((t__name__t __module__(((s0/usr/local/lib/python2.7/test/test_memoryview.pyRXÙstMyObjectcBseZRS((RYRZ(((s0/usr/local/lib/python2.7/test/test_memoryview.pyR[Ûstabc(( R t isinstancettypeRR totweakreftrefRtgctcollectRH(RRRXR[RR R_twr((s0/usr/local/lib/python2.7/test/test_memoryview.pyttest_gcÓs    cCsl|j}|dkr%|jdƒn||jƒ}|j|ƒ}tjdƒ}|jt|j |ƒdS(Nsno read-only type to testtZZZZ( RRR*RRtiotBytesIORRtreadinto(RRRR R#((s0/usr/local/lib/python2.7/test/test_memoryview.pyttest_writable_readonlyês  (RYRZRtpropertyRR RRR$R'R,R9R:R@RERKRRRURWReRj(((s0/usr/local/lib/python2.7/test/test_memoryview.pyRs$      +     tBaseBytesMemoryTestscBs&eZeZeZeZdZdZRS(itB( RYRZRRt bytearrayR RRMRL(((s0/usr/local/lib/python2.7/test/test_memoryview.pyRlùs tBaseMemoryviewTestscBseZd„Zd„ZRS(cCs t|ƒS(N(R+(Rtobj((s0/usr/local/lib/python2.7/test/test_memoryview.pyRscCs|j|||ƒƒdS(N(R(RRRptcontents((s0/usr/local/lib/python2.7/test/test_memoryview.pyR6s(RYRZRR6(((s0/usr/local/lib/python2.7/test/test_memoryview.pyRos tBaseMemorySliceTestscBs)eZdZd„Zd„Zd„ZRS(tXabcdefYcCst|ƒ}|dd!S(Nii(R+(RRpR ((s0/usr/local/lib/python2.7/test/test_memoryview.pyR s cCs!|j|dd!||ƒƒdS(Nii(R(RRRpRq((s0/usr/local/lib/python2.7/test/test_memoryview.pyR6$scCs`xY|jD]N}t||jƒƒ}tj|ƒ}|dd!|jtj|ƒ|ƒq WdS(Nii(R R+RRRR(RRR R((s0/usr/local/lib/python2.7/test/test_memoryview.pyt test_refs's  (RYRZRRR6Rt(((s0/usr/local/lib/python2.7/test/test_memoryview.pyRrs  tBaseMemorySliceSliceTestscBs eZdZd„Zd„ZRS(RscCst|ƒ}|d dS(Nii(R+(RRpR ((s0/usr/local/lib/python2.7/test/test_memoryview.pyR1s cCs!|j|dd!||ƒƒdS(Nii(R(RRRpRq((s0/usr/local/lib/python2.7/test/test_memoryview.pyR65s(RYRZRRR6(((s0/usr/local/lib/python2.7/test/test_memoryview.pyRu.s tBytesMemoryviewTestcBseZd„ZRS(cCs¥xž|jD]“}||jƒ}|jt|ƒƒ|jtd|ƒƒ|jttƒ|jtt||ƒ|jttd|ƒ|jtt|dtƒq WdS(Ntobjecttargument(R RRHR+RRRT(RRtob((s0/usr/local/lib/python2.7/test/test_memoryview.pyttest_constructor>s(RYRZRz(((s0/usr/local/lib/python2.7/test/test_memoryview.pyRv;stBytesMemorySliceTestcBseZRS((RYRZ(((s0/usr/local/lib/python2.7/test/test_memoryview.pyR{TstBytesMemorySliceSliceTestcBseZRS((RYRZ(((s0/usr/local/lib/python2.7/test/test_memoryview.pyR|\scCstjtƒdS(N(Rt run_unittestRY(((s0/usr/local/lib/python2.7/test/test_memoryview.pyt test_mainest__main__(((((t__doc__tunittestRRbR`tarrayttestRRgRRlRoRrRutTestCaseRvR{R|R~RY(((s0/usr/local/lib/python2.7/test/test_memoryview.pyts*      ê