\Kc @sddkZddkZddkiZddkTddklZddkTei i i Z ei i i Z ei i i Z defdYZdefdYZdefd YZd efd YZd efd YZdefdYZedjo endS(iN(t*(t MaskedRecordstTestRecFunctionscBs_eZdZdZdZdZdZdZdZdZ dZ d Z RS( s Misc tests cCstiddg}tidddg}tiddgd ddtfg}tiddfd dfgd dtfddtfdtfgfg}||||f|_dS(Niii iitAg?tBg@tdtypes|S3g@iig@tatbtbatbb(Rg?(Rg@(Rs|S3(ig@(ig@(tnptarraytfloattinttdata(tselftxtytztw((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pytsetUps-c Cs|i\}}}}t||fdt}t|tidtfdtfgt||fdt}t|tidtfdtfgt||fdt}t|tidtfd dtfgt||fdt}t|tidtfdd dtfgfgt||fdt}t|tidtfdtfdtfdtfgt||fdt}t|tidtfddtfd dtfdtfgfgfgd S( sTest zip_descrtflattentRs|S3RRRR RN(Rs|S3(Rs|S3( Rt zip_descrtTruet assert_equalR RR tFalseR (RRRRRttest((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_zip_descrs0""%  cCstidd fddfgddtfd d tfd tfgfg}t|d}tiddgdd d tfd tfgfg}t||t|d }tiddgddtfg}t||t|d g}tiddfddfgddtfd d tfgfg}t||t|d d g}tiddgddtfg}t||t|dd g}d S(sTest drop_fieldsiig@iig@RRRRR N(ig@(ig@(ig@((ig@(ig@((ig@(i(i(g@(g@(i(i(R R R R t drop_fieldsR(RRRtcontrol((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_drop_fields<s$-$ $ $ $ c Cstiddddgffddddgffgd d tfd d tfd tdffgfg}t|hdd 6dd 6}dtfd d tfdtdffgfg}|i|}t|i|t||dS(sTests rename fieldsiig@g>@iig@gN@RRRRR RtBBN(R R R R t rename_fieldstviewRR(RRRtnewdtypeR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_rename_fieldsWs6 *0cCstid dtfg}t|}t|d tidtfddtfdtfgfg}t|}t|ddd ffdS( sTests get_namesRs|S3RRRRR N(Rs|S3(RR(sbasbb(R RR t get_namesRR (RtndtypeR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_get_namescs   3 cCstid dtfg}t|}t|d tidtfddtfdtfgfg}t|}t|d dS( sTest get_names_flatRs|S3RRRRR N(Rs|S3(RR(RRsbasbb(R RR tget_names_flatRR (RR&R((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_get_names_flatns   3 cCsNtid dtfg}t|}t|hgd6gd6tidtfddtfd gfg}t|}t|hgd6gd6dgd6dgd6tidtfddtfddtfdtfgfgfg}t|}hgd6gd6dgd6dgd6ddgd6ddgd6}t||d S( sTest get_fieldstructureRs|S3RtBAR s|S1tBBAtBBBN(Rs|S3(sBBs|S1(R RR tget_fieldstructureRR (RR&RR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_get_fieldstructureys - / * %c Csktiddfddfddfddfddfddfgdddfddfddfddfdd fdd!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(#sTest find_duplicatesig@Rig?tCtmaskiRRR*R s|S1t ignoremaskt return_indexitkeyiiiN(g@R(g@R(g@R(g?R(g@R(g@R/(ii(ii(ii(ii(ii(ii(sBBs|S1( tmaR R R tfind_duplicatesRRRtsorted(RRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_find_duplicatess2!!!' c Csdtfg}tidddddddgddddddddgi|}t|dtdt}dddd g}tt|d |t|d||d t|dtdt}ddddd d g}tt|d |t|d||d d S( s-Test the ignoremask option of find_duplicatesRiiiR0iR1R2iiiN( R R4R R"R5RRR6R(RR&RRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_find_duplicates_ignoremasks!'( t__name__t __module__t__doc__RRRR$R'R)R.R7R8(((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyRs    !tTestRecursiveFillFieldscBs eZdZdZdZRS(s% Test recursive_fill_fields. cCstid d gddtfdtfg}tidd|i}t||}tidddgddtfdtfg}t||d S(s,Test recursive_fill_fields on flexible-arrayig$@ig4@RRRiigN(ig$@(ig4@(i(ig$@(ig4@(ig(R R R R tzerosRtrecursive_fill_fieldsR(RRRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_simple_flexibles -cCstid dgdddgddtfd tfg}tidd|i}t||}tidddgddddgddtfd tfg}t||d S(s3Test recursive_fill_fields on masked flexible-arrayig$@ig4@R0iRRRigN(ig$@(ig4@(ii(ii(i(ig$@(ig4@(ig(ii(ii(ii(R4R R R R=RR>R(RRRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_masked_flexibles(R9R:R;R?R@(((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyR<s tTestMergeArrayscBs_eZdZdZdZdZdZdZdZdZ dZ d Z RS( s Test merge_arrays cCstiddg}tidddg}tiddgd ddtfg}tiddfd dfgd dtfddtfdtfgfg}||||f|_dS(Niii iiRg?Rg@Rs|S3g@iig@RRRR (Rg?(Rg@(Rs|S3(ig@(ig@(R R R R R(RRRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyRs '-cCs|i\}}}}t|}tiddgddtfg}t||t|f}t||t|dt}t||t|dt}t||dS( s$Test merge_arrays on a single array.iiRtf0RN(i(i(Rt merge_arraysR R R RRR(Rt_RRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyt test_solos $   cCs|id}t|dt}t||t|dt}tiddgd d tfd tfd tfg}t||d S(s6Test merge_arrays on a single array w & w/o flatteningiRiig@iig@RRRR N(iig@(iig@( RRCRRRR R R R (RRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_solo_w_flattens  $cCs|i\}}}}t||fdt}tidddgdd tfd tfg}t||t||fdt}tidddgd dddgdd tfd tfg}t||t|i |i d S(sTest standard & standardtusemaskii iiiiRRBtf1R0iN(ii (ii(ii(ii (ii(ii(ii(ii(ii( RRCRR R R RRR4R0(RRDRRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyt test_standards  cCs|i\}}}}t||fdt}tid dgdd tfddtfg}t||t||fdt}tiddfddfgdd tfd ddtfgfg}t||d S(sTest standard & flexibleRiRg?iRg@RRBs|S3RHN(iRg?(iRg@(Rs|S3(Rg?(Rg@(Rs|S3( RRCRR R R R RR(RRDRRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyt test_flattens  cCs|i\}}}}t||fdt}tiddgdd tfd tfd tfd tfg}t||t||fdt}d tfd d tfdd tfd tfgfgfg}}tidddffdddffgd|}dS(sTest flatten standard & nestedRiig@iig@RRBRRR RHRg?N(iiig@(iiig@(ig@(ig@( RRCRR R R R RR(RRRRDRRt controldtypeR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_flatten_wflexibles $   +*cCs|i\}}}}tidddgddddg}t||fdt}tid ddgddddgdd tfd tfg}t||t||fdtd t}t||d S(sTest merge_arrays masked arraysiiiR0iRGiRRBRHt asrecarrayN(ii(ii(ii(ii(ii(ii(RR4R RCRR R(RRDRtmxRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_wmasked_arrays,s'  cCsttiddgidtfgtidddgf}tid ddgddddgd dtfd tfg}t||d S(sTest single fieldiiRg$@g4@g>@iR0iRRHN(ig$@(ig4@(ig>@(ii(ii(ii(RCR R R"R R4R R(RRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_w_singlefield9s 'cCsz|id}t|tidddgidtfgf}tidddgd ddtfdtfg}d S(s+Test merge_arrays w/ a shorter flexndarray.ii iiR/Rg?Rg@s-1Rs|S3N(Rg?i (Rg@i(s-1ii(Rs|S3(RRCR R R"R R (RRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_w_shorter_flexBs 6( R9R:R;RRERFRIRJRLRORPRQ(((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyRAs      tTestAppendFieldscBs;eZdZdZdZdZdZdZRS(s Test append_fields cCstiddg}tidddg}tiddgd ddtfg}tiddfd dfgd dtfddtfdtfgfg}||||f|_dS(Niii iiRg?Rg@Rs|S3g@iig@RRRR (Rg?(Rg@(Rs|S3(ig@(ig@(R R R R R(RRRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyROs '-cCs|i\}}}}t|dddddg}tidddgd dddgd d tfdtfg}t||d S(sTest simple caseRRi iiiiiR0iRRBN(ii (ii(ii(ii(ii(ii(Rt append_fieldsR4R R R(RRDRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_append_singleWs c Cs|i\}}}}t|dddddgddgg}tidddgd dddgddtfdtfdtfg}t||dS(sTest simple caseRRRi iiidiiiiR0iRRBN(RR(ii id(iii(iii(iii(iii(iii(RRSR4R R R(RRDRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_append_double`s *$c Cs~|id}t|dddddg}tidddgd dddgddd tfdtfg}t||dS(s*Test append_fields on flexible type arraysiR/Ri iiRg?Rg@gR0iiRs|S3N(Rg?i (Rg@i(igi(iii(iii(iii(Rs|S3(RRSR4R R R R(RRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_append_on_flexis  c Cs|id}t|dddddg}tidddfd ddfd ddfgddddfdddfdddfgddtfddtfdtfgfdtfg}t||dS(s#Test append_fields on nested fieldsiR/Ri iiiig@iig@igR0RRRRR N(ig@(ig@(ig(ii(ii(ii(RRSR4R R R R(RRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_append_on_nestedrs  * (R9R:R;RRTRURVRW(((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyRRKs   tTestStackArrayscBsVeZdZdZdZdZdZdZdZdZ dZ RS( s Test stack_arrays cCstiddg}tidddg}tiddgd ddtfg}tiddfd dfgd dtfddtfdtfgfg}||||f|_dS(Niii iiRg?Rg@Rs|S3g@iig@RRRR (Rg?(Rg@(Rs|S3(ig@(ig@(R R R R R(RRRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyRs '-cCst|i\}}}}t|f}t|||i||jt|}t|||i||jdS(s"Test stack_arrays on single arraysN(Rt stack_arraysRt failUnless(RRDRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyREs   cCs|i\}}}}t||fdt}tiddddg}t||t||fdt}tidddddg}t||t||fdt}tidddddg}t||dS(s-Tests combinations of arrays w/o named fieldsRGiii iiN(RRYRR R R(RRDRRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_unnamed_fieldss  c Cs|i\}}}}t||f}tid dddgdddddgdd tfddtfg}t||t|i|it||f}tiddddgdddddgdddtfd tfg}t||t|i|it|||f}tidd d!d"d#d$gdd%d&d'd(d)d*gdd+dtfd tfg}t||d S(,s0Test combination of arrays w/ & w/o named fieldsiiiRRR0iRRBs|S3tf2N(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(RRYR4R R R RR0(RRDRRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_unnamed_and_named_fieldss4           cCsj|i\}}}}tidddgd dd tfdtfg}t||f}tidddddgd dd tfdtfgdd d!d"d#d$g}t||t|i|it|||f}d%d tfdtfdtfg}tid&d'd(d)d*d+d,gd |dd-d.d/d0d1d2d3g}t||t|i|idS(4s2Test combination of arrays w/ matching field namesRg$@gY@Rg4@gi@tcg>@gr@RRs|S3RR/iiiR0itf3N(Rg$@gY@(Rg4@gi@(R^g>@gr@(Rs|S3(Rii(Rii(Rg$@gY@(Rg4@gi@(R^g>@gr@(Rs|S3(iii(iii(iii(iii(iii(Rs|S3(Riii(Riii(Rg$@gY@i(Rg4@gi@i(R^g>@gr@i(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii( RR R R RYR4RR0R (RRDRRtzzRRR&((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_matching_named_fieldss.  $    c Cs|i\}}}}tidddgd dd tfdtfg}hdd 6dd 6dd6dd6}t||fd|}tiddd d!d"gd d#d tfdtfgdd$d%d&d'd(g}t||t|i|it|i|idS()sFTest defaults: no exception raised if keys of defaults are not fields.Rg$@gY@Rg4@gi@R^g>@gr@RRs|S3RR/s???g8ggitDtdefaultsiiR0iN(Rg$@gY@(Rg4@gi@(R^g>@gr@(Rs|S3(Rig(Rig(Rg$@gY@(Rg4@gi@(R^g>@gr@(Rs|S3(iii(iii(iii(iii(iii(RR R R RYR4RR0(RRDRR`RcRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyt test_defaultss"  cCsdtfdtfdtfg}tidgddgd |}dtfdtfdtfg}tidgd |}tiddgdddgd |}t||fd t}t||t|i|iyt||fd t }Wnt j onXt dS(sTests autoconversionRRR/iiiR0iRiiit autoconvertN(iii(iii(iii(iii(iii(iii(iii( R tboolR R4R RYRRR0Rt TypeErrortAssertionError(RtadtypeRtbdtypeRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_autoconversions!!!  cCsdtfdtfdtfg}tidgd dgd |}dtfdtfdtfg}tidgd |}t||f}tiddgd ddgd |}t||t|i|idS(s$Test using titles in the field namesRRRRR^R/iiiR0iRiiiN(RR(RR(R^R/(iii(iii(RR(RR(R^R/(iii(iii(iii(iii(iii(R RfR R4R RYRR0(RRiRRjRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyttest_checktitless!!!  ( R9R:R;RRER[R]RaRdRkRl(((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyRXs     t TestJoinBycBseZdZRS(cCstittidtiddtiddddtfdtfd tfg}tittid d tid d tiddddtfdtfdtfg}td||dd}tid@dAdBdCdDgddtfd'tfd(tfd tfdtfg}t||tdE||}tidFdGdHdIdJgddtfdtfd tfdtfg}tdK||d)}tidLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_gd=d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsgddtfdtfd tfdtfg}t||tdt||d>}tidudvdwdxdydzd{d|d}d~g d=ddddddddddg ddtfdtfd tfdtfg}d?S(sBasic test of join_byi i2i<idinRRRR^iiiAiKtdtjointypetinneri7iiii8iBijieii9iCikifii:iDiligi i;iEimihtb1tb2touteriiii3ii4ii5ii6iFi iGi iHi iIiiJR0t leftouterN(ii7iAiiid(ii8iBijie(ii9iCikif(ii:iDilig(i i;iEimih(RR(ii7iiid(ii8ijie(ii9ikif(ii:ilig(i i;imih(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(RR(ii2idi(ii3iei(ii4ifi(ii5igi(ii6ihi(ii7iii(ii8iji(ii9iki(ii:ili(i i;imi(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(iiii(R R tziptarangeR tjoin_byRR4(RRRRR((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyt test_basesj9$<$            (R9R:Rx(((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyRmst__main__(tsystnumpyR tnumpy.maR4tnumpy.ma.testutilstnumpy.ma.mrecordsRtnumpy.lib.recfunctionstlibt recfunctionsR%R(RtTestCaseRR<RARRRXRmR9trun_module_suite(((sG/usr/lib64/python2.6/site-packages/numpy/lib/tests/test_recfunctions.pyts    s6A