2[c@`sddlmZmZmZddlZddlZddljZddl m Z ddl m Z ddl mZmZddlmZmZmZmZmZmZmZmZmZmZejjjZejjjZejjjZde fdYZ!d e fd YZ"d e fd YZ#d e fdYZ$de fdYZ%de fdYZ&de fdYZ'de fdYZ(dS(i(tdivisiontabsolute_importtprint_functionN(t MaskedRecords(t assert_equal(tassert_t assert_raises( t drop_fieldst rename_fieldstget_fieldstructuretrecursive_fill_fieldstfind_duplicatest merge_arrayst append_fieldst stack_arraystjoin_byt repack_fieldstTestRecFunctionscB`sbeZdZdZdZdZdZdZdZdZ dZ d Z RS( cC`stjddg}tjdddg}tjddgd ddtfg}tjddfd dfgd dtfddtfdtfgfg}||||f|_dS(Niii iitAg?tBg@tdtypes|S3g@iig@tatbtbatbb(Rg?(Rg@(Rs|S3(ig@(ig@(tnptarraytfloattinttdata(tselftxtytztw((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pytsetups-c C`s|j\}}}}t||fdt}t|tjdtfdtfgt||fdt}t|tjdtfdtfgt||fdt}t|tjdtfd dtfgt||fdt}t|tjdtfdd dtfgfgt||fdt}t|tjdtfdtfdtfdtfgt||fdt}t|tjdtfddtfd dtfdtfgfgfgdS( NtflattentRs|S3RRRRR(Rs|S3(Rs|S3( Rt zip_descrtTrueRRRRtFalseR(RR"RR R!ttest((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_zip_descrs0""%  cC`stjdd fdd fgddtfd d tfd tfgfg}t|d}tjddgdd d tfd tfgfg}t||t|d }tjddgddtfg}t||t|d g}tjddfddfgddtfd d tfgfg}t||t|d d g}tjddgddtfg}t||t|dd g}t|dkdS(Niig@iig@RRRRR(ig@(ig@(ig@((ig@(ig@((ig@(i(i(g@(g@(i(i(RRRRRRRtNone(RRR)tcontrol((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_drop_fields@s$-$ $ $ $ c C`stjddddgffddddgffgd d tfd d tfd tdffgfg}t|idd 6dd 6}dtfd d tfdtdffgfg}|j|}t|j|t||dS(Niig@g>@iig@gN@RRRRRRtBB(RRRRRtviewRR(RRR)tnewdtypeR,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_rename_fields^s6 *0cC`stjddtfg}t|}t|d tjdtfddtfdtfgfg}t|}t|ddd ffdS( NRs|S3RRRRR(Rs|S3(RR(RR(RRRt get_namesRR(RtndtypeR)((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_get_namesis   3 cC`stjddtfg}t|}t|d tjdtfddtfdtfgfg}t|}t|d dS( NRs|S3RRRRR(Rs|S3(RR(RRRR(RRRtget_names_flatRR(RR3R)((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_get_names_flatss   3 cC`sNtjd dtfg}t|}t|igd6gd6tjdtfddtfd gfg}t|}t|igd6gd6dgd6dgd6tjdtfddtfddtfdtfgfgfg}t|}igd6gd6dgd6dgd6ddgd6ddgd6}t||dS( NRs|S3RtBAR.s|S1tBBAtBBB(Rs|S3(R.s|S1(RRRR RR(RR3R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_get_fieldstructure}s - / * %c C`sktjddfddfddfddfddfddfgdddfddfddfddfddfdd fgd d tfdd tfd!gfg}t|dtdt}ddg}tt|d|t|d||dt|dd dt}dddddg}tt|d|t|d||dt|dddt}ddddg}tt|d|t|d||dt|dd dt}ddddg}tt|d|t|d||dt|dd dt}dddddg}tt|d|t|d||ddS("Nig@Rig?tCtmaskiRRR7R.s|S1t ignoremaskt return_indexitkeyiii(g@R(g@R(g@R(g?R(g@R(g@R;(ii(ii(ii(ii(ii(ii(R.s|S1( tmaRRRR R(R'Rtsorted(RRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_find_duplicatess2!!!' c C`sdtfg}tjdddddddgddddddddgj|}t|dtdt}dddd g}tt|d |t|d||d t|dtdt}ddddd d g}tt|d |t|d||d dS( NRiiiR<iR=R>iii( RR@RR/R R'RRAR((RR3RR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_find_duplicates_ignoremasks!'cC`stjddt}tjdd|}tt|tjdtt|jdttt|dt|tjtj|f}tt|j tjkdS(Nsu1,f4,i8taligniRi ( RRR'tzerosRRtitemsizetrecordRttype(RtdtR((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_repack_fieldss( t__name__t __module__R#R*R-R1R4R6R:RBRCRJ(((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyRs !   ! tTestRecursiveFillFieldscB`seZdZdZRS(cC`stjd d gddtfdtfg}tjd d|j}t||}tjdddgddtfdtfg}t||dS(Nig$@ig4@RRRiig(ig$@(ig4@(i(ig$@(ig4@(ig(RRRRRERR R(RRRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_simple_flexibles -cC`stjd d gdddgddtfd tfg}tjdd|j}t||}tjdddgddddgddtfd tfg}t||dS(Nig$@ig4@R<iRRRig(ig$@(ig4@(ii(ii(i(ig$@(ig4@(ig(ii(ii(ii(R@RRRRERR R(RRRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_masked_flexibles(RKRLRNRO(((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyRMs tTestMergeArrayscB`sbeZdZdZdZdZdZdZdZdZ dZ d Z RS( cC`stjddg}tjdddg}tjddgd ddtfg}tjddfd dfgd dtfddtfdtfgfg}||||f|_dS(Niii iiRg?Rg@Rs|S3g@iig@RRRR(Rg?(Rg@(Rs|S3(ig@(ig@(RRRRR(RRR R!R"((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyR#s!-cC`s|j\}}}}t|}tjddgddtfg}t||t|f}t||t|dt}t||t|dt}t||dS(NiiRtf0R$(i(i(RR RRRRR(R'(Rt_RR!R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyt test_solos $   cC`s|jd}t|dt}t||t|dt}tjd dgd d tfd tfd tfg}t||dS(NiR$iig@iig@RRRR(iig@(iig@( RR R(RR'RRRR(RR"R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_solo_w_flattens  $cC`s|j\}}}}t||fdt}tjd ddgdd tfd tfg}t||t||fdt}tjdddgd dddgdd tfd tfg}t||t|j |j dS(Ntusemaskii iiiiRRQtf1R<i(ii (ii(ii(ii (ii(ii(ii(ii(ii( RR R(RRRRR'R@R<(RRRRR R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyt test_standards  cC`s|j\}}}}t||fdt}tjd d gdd tfddtfg}t||t||fdt}tjddfddfgdd tfd ddtfgfg}t||dS(NR$iRg?iRg@RRQs|S3RV(iRg?(iRg@(Rs|S3(Rg?(Rg@(Rs|S3( RR R'RRRRRR((RRRRR!R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyt test_flattens  cC`s|j\}}}}t||fdt}tjddgdd tfd tfd tfd tfg}t||t||fdt}d tfd d tfdd tfd tfgfgfg}tjdddffdddffgd|}t||dS(NR$iig@iig@RRQRRRRVRg?(iiig@(iiig@(ig@(ig@( RR R'RRRRRR((RR"RRRR)R,t controldtype((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_flatten_wflexible,s $   '* cC`s|j\}}}}tjdddgddddg}t||fdt}tjd d dgddddgdd tfd tfg}t||t||fdtd t}t||tt|t dS(NiiiR<iRUiRRQRVt asrecarray(ii(ii(ii(ii(ii(ii( RR@RR R'RRRt isinstanceR(RRRRtmxR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_wmasked_arrays=s'  cC`sttjddgjdtfgtjdddgf}tjd d dgddddgd dtfd tfg}t||dS(NiiRg$@g4@g>@iR<iRRV(ig$@(ig4@(ig>@(ii(ii(ii(R RRR/RR@RR(RR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_w_singlefieldJs 'cC`sv|jd}t|tjdddgjdtfgftjd ddgd ddtfdtfgdS(Nii iiR;Rg?Rg@s-1Rs|S3(Rg?i (Rg@i(s-1ii(Rs|S3(RR RRR/RR(RR!((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_w_shorter_flexSs 4c C`s|j\}}}}t|d|d|dfdt}tjddd fgddtfdtfd d d tfgfg}t||dS(NiRUii RRRQRVtf2s|S3R(Ri(Rs|S3(RR R(RRRRR(RRRRR R!R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_singlerecordbs'  ( RKRLR#RSRTRWRXRZR^R_R`Rb(((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyRPs     tTestAppendFieldscB`s5eZdZdZdZdZdZRS(cC`stjddg}tjdddg}tjddgd ddtfg}tjddfd dfgd dtfddtfdtfgfg}||||f|_dS(Niii iiRg?Rg@Rs|S3g@iig@RRRR(Rg?(Rg@(Rs|S3(ig@(ig@(RRRRR(RRR R!R"((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyR#os!-cC`s|j\}}}}t|dddddg}tjd ddgd dddgd d tfdtfg}t||dS(NRRi iiiiiR<iRRQ(ii (ii(ii(ii(ii(ii(RR R@RRR(RRRRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_append_singlexs c C`s|j\}}}}t|dddddgddgg}tjdddgd dddgddtfdtfdtfg}t||dS(NRRRi iiidiiiiR<iRRQ(RR(ii id(iii(iii(iii(iii(iii(RR R@RRR(RRRRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_append_doubles *$c C`s~|jd}t|dddddg}tjdddgd dddgddd tfdtfg}t||dS(NiR;Ri iiRg?Rg@gR<iiRs|S3(Rg?i (Rg@i(igi(iii(iii(iii(Rs|S3(RR R@RRRR(RR!R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_append_on_flexs  c C`s|jd}t|dddddg}tjdddfd ddfd ddfgddddfdddfdddfgddtfddtfdtfgfdtfg}t||dS(NiR;Ri iiiig@iig@igR<RRRRR(ig@(ig@(ig(ii(ii(ii(RR R@RRRR(RR"R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_append_on_nesteds  * (RKRLR#RdReRfRg(((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyRcls  tTestStackArrayscB`sYeZdZdZdZdZdZdZdZdZ dZ RS( cC`stjddg}tjdddg}tjddgd ddtfg}tjddfd dfgd dtfddtfdtfgfg}||||f|_dS(Niii iiRg?Rg@Rs|S3g@iig@RRRR(Rg?(Rg@(Rs|S3(ig@(ig@(RRRRR(RRR R!R"((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyR#s!-cC`sn|j\}}}}t|f}t||t||kt|}t||t||kdS(N(RRRR(RRRRR)((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyRSs   cC`s|j\}}}}t||fdt}tjddddg}t||t||fdt}tjdddddg}t||t||fdt}tjdddddg}t||dS(NRUiii ii(RRR(RRR(RRRRR R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_unnamed_fieldss  c C`s|j\}}}}t||f}tjd d ddgdddddgdd tfddtfg}t||t|j|jt||f}tjddddgdddddgdddtfd tfg}t||t|j|jt|||f}tjddd d!d"d#gdd$d%d&d'd(d)gdd*dtfd tfg}t||dS(+NiiiRRR<iRRQs|S3Ra(iii(iii(iRi(iRi(iii(iii(iii(iii(Rs|S3(Rii(Rii(iii(iii(iii(iii(iii(iii(Rs|S3(Rii(Rii(Rii(Rii(iii(iii(iii(iii(iii(iii(iii(iii(Rs|S3(RRR@RRRRR<(RRRRR!R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_unnamed_and_named_fieldss4           cC`sj|j\}}}}tjdddgd dd tfdtfg}t||f}tjdddddgd dd tfdtfgddd d!d"d#g}t||t|j|jt|||f}d$d tfdtfdtfg}tjd%d&d'd(d)d*d+gd |dd,d-d.d/d0d1d2g}t||t|j|jdS(3NRg$@gY@Rg4@gi@tcg>@gr@RRs|S3RR;iiiR<itf3(Rg$@gY@(Rg4@gi@(Rkg>@gr@(Rs|S3(Rii(Rii(Rg$@gY@(Rg4@gi@(Rkg>@gr@(Rs|S3(iii(iii(iii(iii(iii(Rs|S3(Riii(Riii(Rg$@gY@i(Rg4@gi@i(Rkg>@gr@i(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii( RRRRRR@RR<R(RRRRR!tzzR)R,R3((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_matching_named_fieldss.  $    c C`s|j\}}}}tjdddgd dd tfdtfg}idd 6dd 6dd6dd6}t||fd|}tjdddd d!gd d"d tfdtfgdd#d$d%d&d'g}t||t|j|jt|j|jdS((NRg$@gY@Rg4@gi@Rkg>@gr@RRs|S3RR;s???g8ggitDtdefaultsiiR<i(Rg$@gY@(Rg4@gi@(Rkg>@gr@(Rs|S3(Rig(Rig(Rg$@gY@(Rg4@gi@(Rkg>@gr@(Rs|S3(iii(iii(iii(iii(iii(RRRRRR@RR<(RRRR!RmRpR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyt test_defaultss"  cC`sdtfdtfdtfg}tjdgddgd |}dtfdtfdtfg}tjdgd |}tjddgdddgd |}t||fd t}t||t|j|jyt||fd t }Wnt k r nXt dS(NRRR;iiiR<iRiiit autoconvert(iii(iii(iii(iii(iii(iii(iii( RtboolRR@RRR'RR<R(t TypeErrortAssertionError(RtadtypeRtbdtypeRR,R)((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_autoconversions!!!   cC`sdtfdtfdtfg}tjdgd dgd |}dtfdtfdtfg}tjdgd |}t||f}tjddgd ddgd |}t||t|j|jdS(NRRRRRkR;iiiR<iRiii(RR(RR(RkR;(iii(iii(RR(RR(RkR;(iii(iii(iii(iii(iii(RRsRR@RRRR<(RRvRRwRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_checktitles's!!!  c C`stjddgdddtdfg}tjddgd fd d gd fd dgdfgdddtdfdtfg}t||f}tjdddgdfddgdfddgd fd d gd fd dgdfgdttgtfttgtfttgtfttgtfttgtfgd|j}t|j|jt||t|j |j dS(NRiRiRs|S3Rg$@gY@Rg4@gi@Rkg>@gr@R;Rg?ig@R<(Ri(Ri(Rs|S3(i(Rs|S3(i( RRRRR@R(R'RRR<(RR!Rmtrestexpected((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyt test_subdtype3s, 3!   ( RKRLR#RSRiRjRnRqRxRyR|(((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyRhs     t TestJoinBycB`seZdZdZdZdZdZdZdZdZ e j j dd d Z d Zd Zd ZRS(cC`stjtttjdtjddtjddddtfdtfd tfg|_tjtttjd d tjd d tjddddtfdtfdtfg|_dS(Ni i2i<idinRRRRkiiiAiKtd(RRtlisttziptarangeRRR(R((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyR#Rs ''*c C`s|j|j}}td||dd}tjd"d#d$d%d&gddtfdtfdtfd tfd!tfg}t||dS('NRtjointypetinnerii7iAiiidii8iBijieii9iCikifii:iDiligi i;iEimihRtb1tb2RkR~(ii7iAiiid(ii8iBijie(ii9iCikif(ii:iDilig(i i;iEimih(RRRRRRR(RRRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_inner_joinZs  c C`sm|j|j}}td||tjdddddgddtfdtfdtfdtfgdS( NRRii7iiidii8ijieii9ikifii:iligi i;imihRRkR~(RR(ii7iiid(ii8ijie(ii9ikif(ii:ilig(i i;imih(RRRRRR(RRR((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyt test_joinfs   cC`sddlm}tjd gddtfg}tjdtjdddgfgddtfd g}td||}t||jtj dS( Ni(t recfunctionsiRR?iitvaluetuint16(i(RRi( t numpy.libRRRRRRR/R@t MaskedArray(RtrfntfootbarRz((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_join_subdtypezs'cC`s|j|j}}td6||d}tjd7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJgd2dKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^gd3dtfdtfd4tfd5tfg}t||dS(_NRRtouterii2idiii3ieii4ifii5igii6ihii7iiiAii8ijiBii9ikiCii:iliDi i;imiEi iFi iGi iHi iIiiJR<RRkR~(RR(ii2idi(ii3iei(ii4ifi(ii5igi(ii6ihi(ii7iii(iiAiid(ii8iji(iiBiie(ii9iki(iiCiif(ii:ili(iiDiig(i i;imi(i iEiih(i iFiii(i iGiij(i iHiik(i iIiil(iiJiim(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(RRRR@RRR(RRRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_outer_joins2   cC`s|j|j}}td'||d}tjd(d)d*d+d,d-d.d/d0d1g d#d2d3d4d5d6d7d8d9d:d;g d$dtfdtfd%tfd&tfg}t||dS(<NRRt leftouterii2idiii3ieii4ifii5igii6ihii7iiii8ijii9ikii:ili i;imR<RRkR~(RR(ii2idi(ii3iei(ii4ifi(ii5igi(ii6ihi(ii7iii(ii8iji(ii9iki(ii:ili(i i;imi(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(RRRR@RRR(RRRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_leftouter_joins   -cC`stjdddddg}tjdddddg}tddg||d d d t}t|jjddd d gdS(NiRRti4Rtf4Rktu1RRRUta1ta2(RR(RR(RkR(RkR(RR(RR(RREtonesRR(RRtnames(RRRtj((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_different_field_orders$cC`s_tjddd d d g}tjddd d dg}tttdddg||dS(NiRRRRRRkR(RR(RR(RkR(RkR(RR(RR(RRERRt ValueErrorR(RRR((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_duplicate_keysstreasonsSee comment at gh-9343cC`stjddg}tjddg}tjdddg}tjddgd |}tjddgd |}td||}t|j|dS(NR?tS5Rsg d0dtfd1tfd2tfd3tfd4tfg}t||dS(?NRt r1postfixR%t r2postfixt2RRii2iAidii3iBieii4iCifii5iDigii6iEihii7iFiiii8iGijii9iHikii:iIili i;iJimRRRRkR~(ii2iAidid(ii3iBieie(ii4iCifif(ii5iDigig(ii6iEihih(ii7iFiiii(ii8iGijij(ii9iHikik(ii:iIilil(i i;iJimim(RRRRRRR(RRRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_no_r1postfixs!  c C`s,tttd|j|jdddddS(NRRR%R(RRRRR(R((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_no_postfixscC`s|j|j}}td||dddddd}tjd5d6d7d8d9d:d;d<d=d>g d0dtfd1tfd2tfd3tfd4tfg}t||dS(?NRRt1RR%RRii2iAidii3iBieii4iCifii5iDigii6iEihii7iFiiii8iGijii9iHikii:iIili i;iJimRRRRkR~(ii2iAidid(ii3iBieie(ii4iCifif(ii5iDigig(ii6iEihih(ii7iFiiii(ii8iGijij(ii9iHikik(ii:iIilil(i i;iJimim(RRRRRRR(RRRR)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_no_r2postfixs!  cC`stjtttjddgdtjtjddtjddtjdddd tfd tfd tfd tfg}tjtttjddgdtjtjddtjd dtjdddd tfd tfd tfd tfg}tjd;d<d=d>d?d@dAdBdCdDg dd tfd tfd1tfd2tfd3tfd4tfg}td d g||d5d6d7d8d9d:}t |j |j t ||dS(ENi i iii2i<iRRRRRkiAiKii3iBii4iCi i5iDi ii6iEiii7iFii8iGiii9iHiii:iIiii;iJii RRtc1tc2RRRRRR(i ii2iAi i(i ii3iBi i(i ii4iCi i(i ii5iDi i(i ii6iEii(i ii7iFii(i ii8iGii(i ii9iHii(i ii:iIii(i ii;iJii ( RRRRttiletrepeatRRRRR(RRRR,R)((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_two_keys_two_vars#s"9'-9'-  $'(RKRLt classmethodR#RRRR(((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyRs    tTestAppendFieldsObjcB`s eZdZdZdZRS(s; Test append_fields with arrays containing objects cC`s2ddlm}td|ddd|_dS(Ni(tdatetobjii(tdatetimeRtdictR(RR((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyR#>scC`s|jd}tj|df|dfgddtfdtfg}tjddgdt}t|d d |d t}tj|ddf|ddfgddtfdtfd tfg}t||d S( s7Test append_fields when the base array contains objectsRg?g@RRRi iR;RRUN( RRRtobjectRRR R(R(RRRR R)R,((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyttest_append_to_objectsBs $$(RKRLt__doc__R#R(((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyR8s ()t __future__RRRRtnumpyRtnumpy.maR@tnumpy.ma.mrecordsRtnumpy.ma.testutilsRt numpy.testingRRtnumpy.lib.recfunctionsRRR R R R R RRRtlibRR2R5R&RRRMRPRcRhR}RR(((s@/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_recfunctions.pyts$  F6A