ibO ddlZddlZddlZddlZddlZddlmcmZddlm Z m Z m Z m Z ddl mZmZmZmZmZmZmZmZdZdZdZeje dd Zd Zd Zd Zd ZdZ eje ddZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)dZ*dZ+dZ,dZ-dZ.dZ/dZ0dZ1d Z2d!Z3d"Z4d#Z5d$Z6d%Z7d&Z8d'Z9d(Z:d)Z;d*Zd-Z?ej@d.ejAd/ej@d0ejAd/ejBd1d2ZCd3ZDd4ZEd5ZFd6ZGd7ZHd8ZId9ZJd:ZKd;ZLd<ZMd=ZNd>ZOd?ZPd@ZQdAZRdBZSdCZTdDZUdEZVdFZWdGZXdHZYdIZZdJZ[dKZ\ejedLeje dMdNZ]dOZ^dPZ_dQZ`dRZaejjbdSZcdTZdGdUdVZedWZfdXZgdYZhdZZid[Zjd\Zkej@d]ejld^d_`ejldad_`dddbddfejldcd_`dddbdddddbddfejlddd_`dddeejldfd_`dddbdddgfejldcd_`dddbdddddbdddhfgdiZmej@djdkgddhdgfejldldm`ddngfejldldm`dfejldodm`dhdgfejldpdm`dhdhgfejldpdm`dfgdqZndrZodsZpdtZqduZrdvZsdwZtdxZudyZvej@dzejwd{ex`dddddbddfejwd{exd|}dddddbddfejwd{ex`dddddbddfyd|gd~ZzdZ{dZ|dZ}dZ~dZdZeje ddZejejddbdko ejdkdej@ddggdej@dgddZeje dej@ddgddgdZdZdS)N)arrayarangenditerall)assert_ assert_equalassert_array_equal assert_raisesIS_WASM HAS_REFCOUNTsuppress_warnings break_cyclescg}|js5||j||j5|SN)finishedappend multi_indexiternextirets p/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib64/python3.11/site-packages/numpy/core/tests/test_nditer.pyiter_multi_indexrsE Cj 1=!!! j Jcg}|js5||j||j5|Sr)rrindexrrs r iter_indicesrsE Cj 17 j Jrcg}|js5||j||j5|Sr)rr iterindexrrs riter_iterindicesr sE Cj 1; j JrzPython lacks refcounts)reasoncVtd}tjd}t j|}t j|}t |gddggd|g5}t|j tt j||ktt j||kdddn #1swxYwYd}tt j||tt j||tdd}tjd}t j|}t j|}t |gdgg|g}t j|}t j|}| }tt j||ktt j||kd}tt j||tt j||d}tt j||tt j||~dS) Nf4 readwrite updateifcopyunsafecasting op_dtypesdtyper*) rnpr, newbyteordersys getrefcountrriterationneedsapircopy)adtrc_arc_dtitrc2_arc2_dtit2s rtest_iter_refcountr<%s q A $ $ $ & &B ?1  D OB  E 2~./ $   -$&B(()))""T)***##e+,,, --------------- B##T***$$e,,, qA $B ?1  D OB  E 2$   B OA  E _R F ''))C COA   &''' COB  & ())) B##U+++$$f--- C##T***$$e,,, s6A C""C&)C&cdD]}ttj|}tdt |zD];}t dgt |z}tt |D]}d|z|zrt ddd||<t |}|||}t|gdgg}td|D|t|j gdgg}td|D|t |dkrAt| ddgdgg}td |D|=dS) N)rArB)rDrArBrA)rDrArDrDrArDreadonlycg|]}|SrH.0xs r z(test_iter_best_order..b!rcg|]}|SrHrHrIs rrLz(test_iter_best_order..erMrrcg|]}|SrHrHrIs rrLz(test_iter_best_order..i^^^Aa^^^r) rr.prodrangelenslicetuplereshaperrTswapaxesshaper4dirs dirs_indexbitaviewrs rtest_iter_best_orderr`Ps J00 275>> " "!SZZ-(( 0 0D++s5zz1JSZZ(( < <VtO<&+D$&;&;JsOz**JIIe$$Z0EubJ<.11A Q + + +uwj\N33A Q + + +5zzA~~5>>!Q//zl^DD^^^^^Q///# 000rc dD]}ttj|}tdt |zD]}t dgt |z}tt |D]}d|z|zrt ddd||<t |}|||}t|d}td|D| dt|j d}td|D|j dt |dkrgt| dd d}td |D| dd  ddS) Nr>rDrECordercg|]}|SrHrHrIs rrLz%test_iter_c_order..|rMrcg|]}|SrHrHrIs rrLz%test_iter_c_order..rMrrrOcg|]}|SrHrHrIs rrLz%test_iter_c_order..rQr rr.rRrSrTrUrVrWrrravelrXrYrZs rtest_iter_c_orderrjkJKK 275>> " "!SZZ-(( K KD++s5zz1JSZZ(( < <VtO<&+D$&;&;JsOz**JIIe$$Z0EuC(((A Q3)?)? @ @ @uwc***A QS)A)A B B B5zzA~~5>>!Q//s;;;^^^^^$)NN1a$8$8$>$>S$>$I$IKKK# KKKrc dD]}ttj|}tdt |zD]}t dgt |z}tt |D]}d|z|zrt ddd||<t |}|||}t|d}td|D| dt|j d}td|D|j dt |dkrgt| dd d}td |D| dd  ddS) Nr>rDrEFrccg|]}|SrHrHrIs rrLz%test_iter_f_order..rMrcg|]}|SrHrHrIs rrLz%test_iter_f_order..rMrrrOcg|]}|SrHrHrIs rrLz%test_iter_f_order..rQrrhrZs rtest_iter_f_orderrqrkrc dD]}ttj|}tdt |zD]}t dgt |z}tt |D]}d|z|zrt ddd||<t |}|||}t|d}td|D| dt|j d}td|D|j dt |dkrgt| dd d}td |D| dd  ddS) Nr>rDrEArccg|]}|SrHrHrIs rrLz*test_iter_c_or_f_order..rMrcg|]}|SrHrHrIs rrLz*test_iter_c_or_f_order..rMrrrOcg|]}|SrHrHrIs rrLz*test_iter_c_or_f_order..rQrrhrZs rtest_iter_c_or_f_orderrwrkrctjddd}tj|dg}d|_t d|DgddS) Nr#rDrArflagsrrDcg|]}|SrHrH)rJrs rrLz/test_nditer_multi_index_set..s!r)rDrArBr?)r.rrWrrr)r4r8s rtest_nditer_multi_index_setr}sb ! Q""A 1]O , , ,BBNR,,,/////rcd}tjtjgddg}tj|}|f|_tj|}t ||dS)Nr)oiMirry)r.rrr0r1rr)rr start_count end_counts r$test_nditer_multi_index_set_refcountrsm E "(///00HHHA/%((KHAM&&Ii(((((rctd}t|dgdgg}tt|gdt|ddddgdgg}tt|gddS)NrBrrF)rrOrDrArE)rrrr)rrrrr4rs r#test_iter_best_order_multi_index_1drs q Aq=/ZL>22A!!$$&>&>&>???q2w:,88A!!$$&>&>&>?????rctd}t|dddgdgg}tt |gdt|ddddgdgg}tt |gd t|ddddd dgdgg}tt |gd t|ddddddd fdgdgg}tt |gd t|ddddd ddd fdgdgg}tt |gd t|dddddd dgdgg}tt |gdt|dddddddd fdgdgg}tt |gdt|dddddd ddd fdgdgg}tt |gddS)Nr#rDrArrF)rrrrOr{rOrrOrOrOrDrmrc)rrrrr{rrE)rrrrrr{)r{rrrrr)rrrr{rr)rrrrrr{)r{rrrrr)rr{rrrrrrrWrrr3rs r#test_iter_best_order_multi_index_2drs q AqyyA:,@@A!!$$&V&V&VWWWqyyA####..:,PPA!!$$&V&V&VWWWqyyAttt$}o ~FFA!!$$&V&V&VWWWqyyAqqq$$B$w'-J<.IIA!!$$&V&V&VWWWqyyAtttTTrTz*]Ozl^LLA!!$$&V&V&VWWWqyyA####..ttt4}o ~VVA!!$$&V&V&VWWWqyyA####..qqq$$B$w74A?j\N T TA!!$$&V&V&VWWWqyyA####..tttTTrTz:4A?j\N T TA!!$$&V&V&VWWWWWrctd}t|ddddgdgg}tt |gdt|dddddgdgg}tt |gd t|dddddd dgdgg}tt |gd t|dddddddd fdgdgg}tt |gd t|dddddddddd fdgdgg}tt |gd t|ddddddd dgdgg}tt |gdt|ddddddddd fdgdgg}tt |gdt|ddddddddddd fdgdgg}tt |gddS)N rDrArrF) rrrrrrOrrOrrrOrOrrDrrrDrOrOrrrOrrOrOrOrrOrOrOrOrDrrOrDrOrmrc) rrrrrrrrrrrrrE) rrrrrrrrrrrr) rrrrrrrrrrrr) rrrrrrrrrrrr) rrrrrrrrrrrr) rrrrrrrrrrrr) rrrrrrrrrrrrrrs r#test_iter_best_order_multi_index_3drs r AqyyAq!!M?j\NCCA!!$$___``` qyyAq!!&&S&11M?j\NSSA!!$$___``` qyyAq!!$$B$'-J<.IIA!!$$___``` qyyAq!!!!!TTrT'*]Ozl^LLA!!$$___``` qyyAq!!!!!AAAttt),}o ~NNA!!$$___``` qyyAq!!&&S&11$$B$75BOzl^ U UA!!$$___``` qyyAq!!&&S&11!!!TTrT':5BOzl^ U UA!!$$___``` qyyAq!!&&S&11!!!AAAttt)<5BOzl^ U UA!!$$___`````rctd}t|dgdgg}tt|gdt|ddddgdgg}tt|gddS)NrBc_indexrFrrOrDrArErArDrOrrrrrrs rtest_iter_best_order_c_index_1dr% q Aq9+ ~..Aa,,,///q2w zl^44Aa,,,/////rctd}t|dddgdgg}tt |gdt|ddddgdgg}tt |gd t|ddddd dgdgg}tt |gd t|ddddddd fdgdgg}tt |gd t|ddddd ddd fdgdgg}tt |gd t|dddddd dgdgg}tt |gdt|dddddddd fdgdgg}tt |gdt|dddddd ddd fdgdgg}tt |gddS)Nr#rDrArrFrrOrDrArBr?rmrc)rrArOrBrDr?rE)rArBr?rrOrD)rDrOrr?rBrAr?rBrArDrOr)rArrBrOr?rD)rDr?rOrBrrA)r?rDrBrOrArrrrWrrr3rs rtest_iter_best_order_c_index_2dr0 q AqyyA zl^<BBAa"4"4"4555qyyAqqq$$B$w') |nEEAa"4"4"4555qyyAtttTTrTz*YK:,HHAa"4"4"4555qyyA####..ttt4%.K:, A AAa"4"4"4555qyyA####..qqq$$B$w7%.K:, A AAa"4"4"4555qyyA####..tttTTrTz:%.K:, A AAa"4"4"455555rctd}t|ddddgdgg}tt |gdt|dddddgdgg}tt |gd t|dddddd dgdgg}tt |gd t|dddddddd fdgdgg}tt |gd t|dddddddddd fdgdgg}tt |gd t|ddddddd dgdgg}tt |gdt|ddddddddd fdgdgg}tt |gdt|ddddddddddd fdgdgg}tt |gddS)NrrDrArrF rrOrDrArBr?r# rmrc rr#rDrrBrrOrrArr?rrE r#rrrrrrrOrDrArBr? rBr?rDrArrOrrrrr#r rOrrArDr?rBrr#rrrr r#rrrDrrBrrOrrArr? rBrrDrrr#r?rrArrOr rOrrArr?rrr#rDrrBrrrs rtest_iter_best_order_c_index_3drMW r AqyyAq!!I;*??AaBBBDDD qyyAq!!&&S&11%.K:, A AAaBBBDDD qyyAq!!$$B$') |nEEAaBBBDDDqyyAq!!!!!TTrT'*YK:,HHAaBBBDDDqyyAq!!!!!AAAttt),ykZL>JJAaBBBDDD qyyAq!!&&S&11$$B$7%.K:, A AAaBBBDDDqyyAq!!&&S&11!!!TTrT':%.K:, A AAaBBBDDDqyyAq!!&&S&11!!!AAAttt)<%.K:, A AAaBBBDDDDDrctd}t|dgdgg}tt|gdt|ddddgdgg}tt|gddS)NrBf_indexrFrrErrrs rtest_iter_best_order_f_index_1drrrrctd}t|dddgdgg}tt |gdt|ddddgdgg}tt |gd t|ddddd dgdgg}tt |gd t|ddddddd fdgdgg}tt |gd t|ddddd ddd fdgdgg}tt |gd t|dddddd dgdgg}tt |gdt|dddddddd fdgdgg}tt |gdt|dddddd ddd fdgdgg}tt |gddS)Nr#rDrArrFrrDrBrOrAr?rmrcrrE)rOrAr?rrDrB)rBrDrr?rArO)r?rArOrBrDr)rOrrArDr?rB)rBr?rDrArrOrrrs rtest_iter_best_order_f_index_2dr}rrctd}t|ddddgdgg}tt |gdt|dddddgdgg}tt |gd t|dddddd dgdgg}tt |gd t|dddddddd fdgdgg}tt |gd t|dddddddddd fdgdgg}tt |gd t|ddddddd dgdgg}tt |gdt|ddddddddd fdgdgg}tt |gdt|ddddddddddd fdgdgg}tt |gddS)NrrDrArrFrrmrcrrErrrrrrrrs rtest_iter_best_order_f_index_3drrrcdD]}tj|}t|}tdt |zD]}t dgt |z}tt |D]}d|z|zrt ddd||<t |}|||}t|dgdgg}t|j dt|dj |ft|j dgdgg}t|j dt|dj |ft |dkrYt| dddgdgg}t|j dt|dj |fdS)Nr>rDrE external_looprFrOr)r.rRrrSrTrUrVrWrrndimr[rXrY)r[sizer4r\r]r^r_rs r test_iter_no_inner_full_coalescersJ22wu~~ 4LL!SZZ-(( 2 2D++s5zz1JSZZ(( < <VtO<&+D$&;&;JsOz**JIIe$$Z0Eu/:,@@A  # # # 1dW - - -uw 1ZL>BBA  # # # 1dW - - -5zzA~~5>>!Q//%4$5 ~GGQVQ'''QqTZ$111+ 2 22rc tddddddddddf}t|dgdgg}t|jdt|djd tddddddddddf}t|dgdgg}t|jdt|djd tddddddddddf}t|dgdgg}t|jd t|djd tdd d dd d dd d dd d }t|dgdgg}t|jd t|djd dS)NrDrArBrErrFrrrrO)rr)rrWrrrr[rs r!test_iter_no_inner_dim_coalescingrs r 1a##AAAaaa"H-Aq?#zl^44A1T"""r 1a##AAAss111H-Aq?#zl^44A1T"""r 1a##CRC!!!G,Aq?#zl^44A1U### r 1aAq!Q1a;;Aq?#zl^44A1U#####rctdddd}t|dgdgg}t|jdtdddd}t|dgdgg}t|jdt|d ddgdgg}t|jdt|jdgdgg}t|jdt|jd gdgg}t|jdt|jd dd gdgg}t|jdtdddd}t|d }t|jdt|jd }t|jdt|d }t|jdt|jd }t|jdt|d }t|jdt|jd }t|jddS)NrrDrArBrrFrrOrrrbrcrmrs)rrWrrrrYrX)r4ra3ds rtest_iter_dim_coalescingrs[ r 1a##Aq=/ZL>22A **  Q1 % %CsYK:,00As||Aq!!I;*??AsuykZL>22AsuykZL>22Asu~~a##i[J<.AAA **  Q1 % %Cs#AsuC   As#AsuC   As#AsuC   Arc  ttdtjdgdgdggdz}t |jdt |jdttdddtjdgdgdggdz}t |jdt |jdttdddtdgdgdggdz}t |jdt |jdttdddtdgdgdggdz}t |jdt |jdttdddtdddgdgdggdz}t |jdt |jdttjdtd d ddgdgdggdz}t |jd t |jd ttdtd d ddgdgdggdz}t |jd t |jd ttdtd d ddgdgdggdz}t |jd t |jd ttdddtd d ddgdgdggdz}t |jd t |jd ttdddtd d ddgdgdggdz}t |jd t |jd ttdddtd d ddgdgdggdz}t |jd t |jd ttddddtddddtd d ddgdgdggdz}t |jd t |jd ttddddtd d ddgdgdggdz}t |jd t |jd ttd d ddtd d ddgdgdggdz}t |jd t |jd dS)Nr#rDrrFr#rArDrArOrrBrBrDrArr)rrr.int32ritersizer[rWrs rtest_iter_broadcastingrs: q 28A;;'-J<.:JKKAQ$ q !!!Q''!5&:,)9 ; ;AQ&!!!q !!!Q''3&:,)9 ; ;AQ&!!!q !!!Q''3&:,)9 ; ;AQ&!!!q !!!Q''):):1a)@)@A&:,)9 ; ;AQ&!!!  VBZZ//1a889&:,)9 ; ;AR   )$$$q 6"::--aA667&:,)9 ; ;AR   )$$$q 6!99,,Q1556&:,)9 ; ;AR   )$$$q !!!Q''););Aq!)D)DE&:,)9 ; ;AR   )$$$q !!!Q''););Aq!)D)DE&:,)9 ; ;AR   )$$$q !!!Q''):):1a)C)CD&:,)9 ; ;AR   )$$$q !!!Q**F1II,=,=aA,F,Fq ))!Q224&:,)9 ; ;AR   )$$$q !!!Q**F1II,=,=aA,F,FG&:,)9 ; ;AR   )$$$r ""1a++VBZZ-?-?1a-H-HI&:,)9 ; ;AR   )$$$$$rc Vtjdddd}t|dggdgddgggd dgd }t |jd jd t |jd jdt|jdggdgddgggd dgd }t |jd jdt |jd jdt|jdggdgddggdgd dgd }t |jd jdt |jd jdttt|dggdgddgggd dgd tjtj dddgd}dS)Nr#i2r+rDrArF writeonlyallocate)rrON)rErErBop_axes itershaperOrC)rrrD)rArDrB)rrrDrm)rdrr)rDr#r)rErOrBrr) r.rrWrroperandsr[stridesrXr ValueErroronesrs rtest_iter_itershaper_s !4   ((A..A4y" |k:-FG%1\\4$8&1 3 3 3AA$i000A& 333T{B* Z/H I%1\\4$8&1 3 3 3AA$i000A& 333T{B* Z/H I"%%1\\4$8&1 3 3 3AA$i000A& 333*fq$i(\K+DE%1\\4$8&02222 271::tT*d;;;AAArc  ttttdtdggdggdzttttdddtdggdggdzttttdddtdddggdggdzttttdddtdddggdggdzttttddddtddddggdggdzttttd ddd tddddggdggdz ttdd dd tdd dtdddggdgdgd d ggt d #t$rm}t |}t|ddkd|zt|ddkd|zYd}~nd}~wwxYw ttdddtdggdgdggdd gdtj ggdt d #t$r}t |}t|ddkd|zt|ddkd|zt|ddkd|zYd}~nd}~wwxYw ttj dtj dggd d gdggt d #t$rn}t |}t|ddkd|zt|ddkd |zYd}~dSd}~wwxYw)!NrDrArFr#rrB$rrrOr no_broadcastz$Should have raised a broadcast errorz(2,3)rz0Message "%s" doesn't contain operand shape (2,3)z(1,2,3)z4Message "%s" doesn't contain broadcast shape (1,2,3))rBrArz (2,3)->(2,3)z7Message "%s" doesn't contain operand shape (2,3)->(2,3)z(2,)->(2,newaxis)zDMessage "%s" doesn't contain remapped operand shape(2,)->(2,newaxis)z(4,3)z6Message "%s" doesn't contain itershape parameter (4,3)rDrOrOrz(2,1,1)z2Message "%s" doesn't contain operand shape (2,1,1)z(2,1,2)z8Message "%s" doesn't contain the broadcast shape (2,1,2)) r rrrrWAssertionErrorstrrfindr.newaxiszeros)emsgs rtest_iter_broadcasting_errorsr~s*fvayy&))&<*q(****fAYY&&q!,,fQii8*q(****fAYY&&q!,,fQii.?.?1.E.EF*q(****fAYY&&q!,,fQii.?.?1.E.EF*q(****fBZZ''1a00&**2D2DQ12M2MN*q(****fAYY&&q!Q//1C1CAq!1L1LM*q(*** Oq !!!Q**q !!!Q''q !!!Q'') zl[.,IJ  L L L CDDD OOO!ff!!Q&CcI K K K ##q(G#M O O O O O O O O OQq !!!Q''3 zl+ABJ0  ! ! ! ! CDDD  Q Q Q!ff((A- F L N N N,--2$'*+ , , , !!Q&ICO Q Q Q Q Q Q Q Q Q S##RXd^^4n- |< > > >CDDD SSS!ff##q( AC G I I I ##q(KcQ S S S S S S S S S SsN.BJ<< L3A#L..L37A'N P?(B P::P?A R TA#TTctd}tttgggttt|gdzgdggdzttt|gdgdggttt|ggddggttt|ggdggdttt|ggdggdttt|gd zgdggd zttt|d d gdggttt|d dgdggttt|d d gdggttt|d d gdggttt|gggttt|gddggttt|gddggttt|gddggttt|ggdgtttdgdggtttdgdggtttt jdgdggtttt jdgdggd|j_ttt|gdggttt|gdggd|j_ttdgdgg}ttd|ttd|d}d}d}d}ttdd g}tt||tt||tt||tt||ttddg}tt||tt||tt||tttt j gdS)Nr#drFzbad flagGrcnoonr)rArDrrrrrr%rFrr%?rOFTc|jSrrrs rz(test_iter_flags_errors..q}rc|jSrrrs rrz(test_iter_flags_errors..qwrcd|_dS)Nrrrs rassign_multi_indexz2test_iter_flags_errors..assign_multi_indexs  rcd|_dSNrrrs r assign_indexz,test_iter_flags_errors..assign_indexs rcd|_dSr)rrs rassign_iterindexz0test_iter_flags_errors..assign_iterindexs  rcd|_dS)Nr) iterrangers rassign_iterrangez0test_iter_flags_errors..assign_iterranges  rbuffered) rr rr TypeErrorr.rrz writeabler)r4rrrr r s rtest_iter_flags_errorsrs@ q A*fb"b111*fqc#grZL>#3EFFF*fqcJ<:,HHH*fqc2Z0H/IJJJ*fqc2 ~SIIII*fqc2 ~vNNNN*fqc!eR:,1ABBB*faI&*888*fa -0J<.BBB*fa ), |n>>>*fa ), |n>>>*fabT222*faz;.G-HIII*faz;.G-HIII*fa{K.H-IJJJ*fa;;;<>>>)VS" }o>>>)VS" }o>>>)VRXa[[" }oFFF)VRXa[[" }oFFFAG*fa{m_===*fa{m_===AGvayy" |n--A*44a888*..222vayy?+,,A*0!444*lA...*.222*.222vayy:,''A*0!444*lA...*.222*fbhrll33333rctjdtjdtjd}}}t|||ggdg}|5d|dd<t|gdt|gdt|gdd |d <t|dddd gddddS#1swxYwYdS) NrA@r%)rArArrD)rArOrDrrOrDrrO)r.rrr)r4bcrs rtest_iter_slicersillBIaLL")B--!qA1ay"{m,,A &&!A#Q """Q """Q """!QqsVaW%%% &&&&&&&&&&&&&&&&&&sAB>>CCc ftjdddddj}tj|gddggd tjd g }|5d|jd d <d|jd d <dddn #1swxYwYt|dtj|gddggd tjd g }|5|jd dd}d|d <d|jd d <dddn #1swxYwYt|dd}d}dS)Nrf8r+rDrArBr%r& same_kindr$r(r.rErOi.)r.rrWrXrr,rr)r4r8rKs rtest_iter_assign_mappingr!s "D!!!))!Q224A 1bK89*rx~~6F H H HB !! As  As!!!!!!!!!!!!!!!B 1bK89*rx~~6F H H HB $$ KN2a4 ## As$$$$$$$$$$$$$$$E A BBBs$"!BBB+DDDc  tjdd}|}t |jj|jjkt|gddggdtjdg}|5t|j dj|jjt|j djj|jjt|j d|d |j ddd<dddn #1swxYwYt|d gdz~tjdd}|}t |jj|jjkt|ggd gd 5}t|j dj|jjt|j djj|jjt|j d|d |j ddd<d |j ddd<dddn #1swxYwYt|d gdztj d ddd}d|_tjdd|dd<t |j j t|gdgg}t |j dj j t|j d|t|ggdg5}t |j dj j t|j d|d|j ddd<dddn #1swxYwYt|dgdztd}t|ddgdgg}t |j dj jt|j d|ddt|ddd ddgddggd}t |dj jt|d|ddd dS)Nr#r$r+r%r&equivr(rrD)r%r&nbori90)i1rOrF)r%r&alignedrArr rcontigr buffersize)r.rbyteswapr/rr, byteorderrrdtypesrrrzr! contiguous)r4aurs rtest_iter_nbo_align_contigr*4s !4   A  " " $ $B AG !3 3444r2n56 '#%8D>>"2 4 4 4A QXa[*AG,=>>>QZ](2AG4EFFFQZ]A&&& 1 aaa  aSU  !4   A  " " $ $B AG !3 3444 B===> ' ) ) ),-QXa[*AG,=>>>QZ](2AG4EFFFQZ]A&&&  1 aaa 1 aaaaSU &&&qrr*AAG 9Qd # # #AaaaD     q" |n%%A  1 #+ +,,,A""" 2@@@A B Ba 1 #+,,,QZ]A&&& 1 aaa  QCE r Aq!ubJ<.))A AJqM  *+++A"1"&&&q1v O4$h/0#% ' ' 'A AaDJ !"""1q1vs9BD##D'*D'f4r(rrBrOrFr3safer)`r rEr)rB0g)ri4rr')rBrOrDrA) r.rrWrr,rrrYrrXrrs rtest_iter_array_castr6rs !4   ((A..Aq" }o"(4..1ABBBA ::QZ]A&&&QZ]("(4..999::::::::::::::: !5!!!))!Q//A 2n56x' ) ) );,-QZ]A&&&QZ]("(5//::: ;;;;;;;;;;;;;;; "D!!!))!Q22;;AqAAAq" F+,x~~& ( ( (AA"""A$bhtnn555A& 444 $$B$qqq$$B$,Aq" F+,x~~& ( ( (AA"""A$bhtnn555A& 444 "D!!!))!Q224A 2> * +x~~& ( ( ( %,-QZ]A&&&QZ]("(4..999QZ]*K888!& 1 g' e#$$$ % % % % % % % % % % % % % % %7U### !4   2&A 2> * +x~~& ( ( (%,-QZ]("(4..999 QZ]*D111$99 1 aaa%%%%%%%%%%%%%%%IIIsLAB//B36B3AE((E,/E, BO00O47O4A'S  SSc fttttddgdggt jdgttttddgddggdt jdg ttttddgddggd t jdg ttttddgd d ggdt jdg ttttddgd d ggd t jdg ttttdd gddggdt jdg ttttddgdd ggdt jdg ttttddgdd ggdt jdg ttttddgddggdt jdg ttttddgd d ggdt jdg dS)NrDr$r+rFrr-r3nor(rrr&r,r-r%r.rr3)r rrrr.r,rHrrtest_iter_array_cast_errorsr9s)VVAT%:%:%:B28D>>*:<<<<)VVAT%:%:%:Bf%&8D>>*,,,,)VVAT%:%:%:Bf%&8D>>*,,,,)VVAT%:%:%:B~./8D>>*,,,,)VVAT%:%:%:B~./8D>>*,,,, )VVAU%;%;%;Rf%&8E??+----)VVAT%:%:%:B~./8D>>*,,,,)VVAT%:%:%:B~./8D>>*,,,, )VVAT%:%:%:Bf%&#8D>>*,,,,)VVAT%:%:%:B~./#8D>>*,,,,,,rc (ttjdgdggtjdg}t |jdtjdt |jjtjdt |jdttjdgddggdtjdg }t |jdtjdt |jjtjdt |jdttjdgddggd tjdg }t |jdtjdt |jjtjdt |jdttjd gddggd tjd g }t |jdtjd t |jjtjd t |jdtdgdggtjdg}t |djtjdt |dd dS)N@rFr$r-rr3r.rr(rrr'r3rA)rr.float32r,rr'valuefloat64rs rtest_iter_scalar_castr?s rz#j\N!x~~. 0 0 0A!bhtnn---///#rz# &)*"!x~~. 0 0 0A!bhtnn---///#rz# &)*'!x~~. 0 0 0A!bhtnn---///#rz# &)*$!x~~. 0 0 0A!bhtnn---///!q" |n$0@AAAA1RXd^^,,,1rrc ttttjdgdggtjdgtttdgdggtjdgttttjdgdggd tjdg ttttjdgdggd tjd g dS) NrDr%rr-r;r$gDcLrFr.r(rr3)r rrr.r<r,r>rHrrtest_iter_scalar_cast_errorsrAs)VRZ]]BBHTNN+;====)VS"BHTNN+;====)VRZ%5%5r8D>>*,,,, )VRZ]]B#8D>>*,,,,,,rcddd}tjgdd|dgd}trtj|}t t t|tr"ttj||t|dgdg}d |D}ttj|d|dgdz\}}}tr"ttj||t| d d j dd gdgd }t|j d|D}ttj|d| d d  d dgdz\}}}tr"ttj||t| d d j dd gdgd }|5|D]}d|d<dgdz\}}}dddn #1swxYwYtr(ttj||dz kt|tjdgdzddS)NrAdr4rr5Or+refs_okrFcg|] }|d SrHrHrJx_s rrLz1test_iter_object_arrays_basic..#   rBrF   rrDr rbrccg|] }|d SrHrHrIs rrLz1test_iter_object_arrays_basic..,rKrrmr%.rOrB)r.rr r0r1r rrrrWrXrr2ri)objr4rcrvalsrKs rtest_iter_object_arrays_basicrPsS//C )))T3-S999A" _S ! !)VQ'''/S_S))2...q9+ |,,A  Q   D$c***A...JD!Q/S_S))2...qyyA 9j"9# C 1 1 1A A     Q   D$c***AIIaOO,A,A,A,L,LMMMJD!Q/S_S))2...qyyA 9j"9$ S 2 2 2A   AAcFFVAX a.$$1,---BHdVAXS11122222s6HHHcXtjdd}t|ddgdgdd }|5|D]}|d xxd z cc< dddn #1swxYwYt|tjdd ztjdd}t|ddgdgdd }|5|D]}|d xxd z cc< dddn #1swxYwYt|tjdd ztjd d dg}|d}tjd|dd<t|ddgdgdd }|5|D]}|d xxd z cc< dddn #1swxYwYt|tjdd ztjd d dg}|d}tjddz|dd<t|ddgdgdd }|5|dd}t rt j|}|D]}|d xxd z cc< dddn #1swxYwYt r(tt j||d z kt|tjddzdS)Nr#rEr+rFr r%r'r3r(.rOr)pr r4rEr4)r4r3iHrrHiI) r.rrrrr r0r1r)r4rrKobrNs r#test_iter_object_arrays_conversionsrU<s !3Aq9j)K=$ 6 6 6A   A cFFFaKFFFF BIaLLN### !4   Aq9j)K=$ 5 5 5A   A cFFFaKFFFF BIaLLN### k:6777A #A 9Q<E>??I  IIc > ttdgdtdgdgdgddggd zd }t|jdt jdt|jd t jdttdgd tdgdgdgddggd zd }t|jdt jdt|jd t jdttdgdtddgdgddggd zd }t|jdt jdt|jd t jdttdgdtdd gdgddggd zd }t|jdt jdt|jd t jdttdgdtdd gdgddggd zd }t|jdt jdt|jd t jdttdgdtdd tdgdtdgdgdgddggdzd }t|jdt jdt|jd t jdt|jd t jdt|jdt jdt|jdttdgd dtdgdggddgddgdggd }t|jdt jd t|jd t jd t|jd t jdttdgd dtdgdgdgddgddgdggd }t|jdt jdt|jd t jdt|jd t jddS)NrAr$r+rr common_dtyperFr3rDr.rrOr3ru4i8@c8rrBc16)rArYr[rrr)rrrr'r.r,r=rs rtest_iter_common_dtyper^isL qc&&&qc(>(>(>?#$ &)*1," $ $ $A!bhtnn---!bhtnn---qc&&&qc(>(>(>?#$ &)*1," $ $ $A!bhtnn---!bhtnn---qc&&&at(<(<(<=#$ &)*1,' ) ) )A!bhtnn---!bhtnn---qc&&&at(<(<(<=#$ &)*1," $ $ $A!bhtnn---!bhtnn---qc&&&c(>(>(>?#$ &)*1," $ $ $A!bhtnn---!bhtnn---qc&&&c(>(>(>t4(((%4*@*@*@B#$ &)*1,"  $ $ $A !bhuoo...!bhuoo...!bhuoo...!bhuoo.../*** qc&&&eRD.F.F.FG &)!:.!]$#  $ $ $A !bhtnn---!bhtnn---!bhuoo...qc&&&eRD.F.F.FG#$ &)!:.!]$#  $ $ $A !bhuoo...!bhuoo...!bhuoo.....rc dD]\}td}t|gdg|gg}|5t|jd|udddn #1swxYwY]td}|dd}|dd}t||gdgdgdgg5}tt j|j dddn #1swxYwYtd}|}|}t||gdgdd gdd gg}|5t|jd|uo|jd|udddn #1swxYwYt||gdgdgdgg5}t|jd|uo t j|jd| dddn #1swxYwYtd}|ddd }|ddd }t||gdgdgd gg}t|jd|uo|jd|utd tj }|dd}|tjdd}t||gdgdgd gg5}tt j|j dddn #1swxYwYdD]}t j ddg}|}|j }|}t|||gdgdgdg|gg5}|j\}}}tt j|| tt j|| dddn #1swxYwYt j ddg}|}|j }|}t|||gdgdgdgdgg}|j\}}}t||ut||ut||ut j ddg}|}t j ddg}|j }t|||gdgdgd gdgg}|j\}}}t||ut||ut||ut jd}|dd}|dd}|d d}t|||gdgdgd gd gg}|j\}}}t||ut||ut||udS)Nrrcopy_if_overlaprrOrErFr%overlap_assume_elementwiserDrrBr+rA)rr%rr#) rrrrr. shares_memoryint8viewrrrX) flagr4rrKrra2b2c2s rtest_iter_copy_if_overlapris7(( 2JJ A3*+tfX 6 6  ( ( AJqMQ& ' ' ' ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( r A !""A #2#A A*+zl[M-J K K3qB$aj11222333333333333333 r A A A1v)*j:V-W.9;W-X-Z [ [A ;; 1 "9qz!}'9:::;;;;;;;;;;;;;;; A*+zl[M-J K KOq 1 "M2+;AJqM1+M+M'MNNNOOOOOOOOOOOOOOO r A ##A#A !$Q$A1v)*j\K=,IJJA AJqMQ  51:a=A#5666 q   A !""A rx!A A*+zl[M-J K K3qB$aj11222333333333333333+ 2 2 GRH    C  Q1I 12L:,799 2<=JBB (R000 1 1 1 (R000 1 1 1  2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 RA A A A1ay,- zlZL9 ; ;AJBB AG AG AG RA A RA A1ay,- {mj\: < F((F,/F,?"J--J14J18AMM M c tddd}t||jggdggdzddgddgg}t t d|Dtd ddd }t|j|ggdggdzgd dg}t t d |Dtdd ddd}tdd}t||ggdggdzdgdg}t d|D||dddztdd }t||ggdggdzdgdg}t d|D||dddztdd}t||ggdggdzdtj tj dgg}t d|D||dddztd ddd }tdddd }t||gdgdggdzgdgdg}t |j dtddd }tdd d}t||gdgdggdzddgddgg}t |j ddS)Nr#rDrArFrrOrc g|] \}}||k SrHrHrJrKys rrLz%test_iter_op_axes..  (((FQa(((rrrB)rDrOrc g|] \}}||k SrHrHrms rrLz%test_iter_op_axes.. rorr?rrErEcg|] \}}||z SrHrHrms rrLz%test_iter_op_axes.. &&&&1a!A#&&&r)rErrEcg|] \}}||z SrHrHrms rrLz%test_iter_op_axes..rtrcg|] \}}||z SrHrHrms rrLz%test_iter_op_axes..rtr(r)rrOrErE)rErErrO)rDrAr?rDrrE)rAr?) rrWrrXrrrrir.rr[)r4rrs rtest_iter_op_axesrys q !QA13xzl^A-AA7GHHHA C((a((( ) )***r 1a##AQxzl^A- 47HIIIA C((a((( ) )*** q" aA&&Aq! A1vrZL>!+dKKK5HIIIA&&A&&&199Q1+=+=)=(D(D(F(FGGGq! A1vrZL>!+dKKK5HIIIA&&A&&&199Q1+=+=)=(D(D(F(FGGGq! A1vrZL>!+%)BJ A+F$G I I IA&&A&&&199Q1+=+=)=(D(D(F(FGGG r 1a##Ar 1a##A1v *q(8%3^^^^^$D F F FA,''' r 1a  Ar 1a  A1v *q(8&'Wr1g$6 8 8 8A&!!!!!rc tddd}ttt||ggdggdzdgdgdggttt||ggdggdzddgddggttt||ggdggdzddgddggttt||ggdggdzddgddggttt||ggdggdzddgddggttt||ggdggdzddggd gttt||ggdggdzddgddggdS) Nr#rDrArFrrOrkrEr)rrWr rrr4s rtest_iter_op_axes_errorsr|)s q !QA*fq!fbJ<.2B./S1#sO====*fq!fbJ<.2B./VaV,<>>>>*fq!fbJ<.2B./VaW,=????*fq!fbJ<.2B./VaV,<>>>>*fq!fbJ<.2B./VaV,<>>>>*fq!fbJ<.2B./VYYY,?AAAA*fq!fbJ<.2B./VaV,<>>>>>>rctdddd}t|}|}t d|Dd|Dd|_|}t d|Dd|Dt|d d gd d }|}t d |Dd|Dd|_|}t d|Dd|Dd|_|}t d|Dd|Dd|_t|t||}t d|Dd|Dt|d gd ddd5}|}dddn #1swxYwYt d|D|d tddddd}t|d gd ddd5}|}dddn #1swxYwYt d |D|d dS)!NrrDrArBcg|] }|d SrHrHrIs rrLz"test_iter_copy..J###A!B%###rcg|] }|d SrHrHrIs rrLz"test_iter_copy..J%7%7%7ae%7%7%7rcg|] }|d SrHrHrIs rrLz"test_iter_copy..Nrrcg|] }|d SrHrHrIs rrLz"test_iter_copy..Nrrr rangedrmrdr$cg|] }|d SrHrHrIs rrLz"test_iter_copy..Srrcg|] }|d SrHrHrIs rrLz"test_iter_copy..Srrcg|] }|d SrHrHrIs rrLz"test_iter_copy..Wrrcg|] }|d SrHrHrIs rrLz"test_iter_copy..WrrrArcg|] }|d SrHrHrIs rrLz"test_iter_copy..[rrcg|] }|d SrHrHrIs rrLz"test_iter_copy..[rr)rDcg|] }|d SrHrHrIs rrLz"test_iter_copy..arrcg|] }|d SrHrHrIs rrLz"test_iter_copy..arrr'rr?)rdr)r*r$cg|] }|d SrHrHrIs rrLz"test_iter_copy..grrrczf8cg|] }|d SrHrHrIs rrLz"test_iter_copy..mrr) rrWrr3rrr nextri)r4rjs rtest_iter_copyrCsor 1a##A q A A#####%7%7Q%7%7%7888AK A#####%7%7Q%7%7%7888 q:x(BBBA A#####%7%7Q%7%7%7888AK A#####%7%7Q%7%7%7888AK A#####%7%7Q%7%7%7888AKGGGGGG A#####%7%7Q%7%7%7888 Ji,d,S17,>d,(3)f,O,i1rEz>i,>i,S17,>d,>U3,(3)d,i1,Orr+rr'r) r.r,rrr3rrr namesbase) in_dtype out_dtyperr8rres1res2rfields rtest_iter_copy_casts_structuredrs x#rx~~.rx(CDDEGHHH3 .)E F FGIJJI '$h ' ' 'C C6CCC'[( < < !,bgav.F.F.FGGG3s8D>276+E+E+EFFF3x~#v----3s8D>!,bgav.F.F.FGGG3s8D>!,bgav.F.F.FGGG3s8D>!,bgas.C.C.CDDDD EErc .td}t|dggdgddggdtjdg}t |jdj|jt |jdjtjddS)Nr#rFrrr$r-rO)rrr.r,rrr[rs r test_iter_allocate_output_simplers q A4y" |k:-FG#'$"8 : : :AA$ag...A$bhtnn55555rcdtd}t|dgddgdgddgg}|5d|jddd<||D]$}|ddxx|d dz cc<%t |jd|dzddddS#1swxYwYdS) Nr#r delay_bufallocrFrr%rO.r)rrrresetrr4rrKs r,test_iter_allocate_output_buffered_readwriters q A4y:'78$ K'@A C CA )) 1 aaa   # #A aDIII1c "IIIIQZ]AaC((( ))))))))))))))))))sA,B%%B),B)c tdddd}t|dggdgddggdtjd g }t |jd j|jt |jd j|jt |jd jtjd td dddd j }t|dggdgddggdtjd g }t |jd j|jt |jd j|jt |jd jtjd td dddd  dd }t|dggdgddggddtjd g}t |jd j|jt |jd jdt |jd jtjd dS)Nr#r3r+rDrArFrrr$r-rOrrBrrb)rdr*)r0r1rB) rrWrr.r,rrr[rrXrYrs r!test_iter_allocate_output_itorderrs> q%%a++A4y" |k:-FG#'$"8 : : :AA$ag...A& 222A$bhtnn555r&&q!Q//1A4y" |k:-FG#'$"8 : : :AA$ag...A& 222A$bhtnn555r&&q!Q//88A>>A4y"$ Z'@A!#'$"8 : : :AA$ag...A& 444A$bhtnn55555rctddddd}td|ggddgd ggtjd dggd dg }t |jd jdt |jd jdt |jd jtjd dS)Nrr3r+rDrArBrrrFrXrr*rrr)rBr2r1) rrWrr.r,rrr[rrs r test_iter_allocate_output_opaxesrs r&&q!Q//Aay" Z8:,G#%8D>>4"8!*D 1 3 3 3AA$i000A& 444A$bhtnn55555rc8ttdgdtdgddggdggdzdd ggz}t|jdt jdttdgd tdgddggdggdzdd ggz}t|jdt jdttdgdtdddggdggdzdd ggz}t|jdt jdttdgd tdd dggdggdzdd ggz}t|jdt jd ttdgd td d dggdggdzdd ggz}t|jdt jd dS)NrAr$r+rrrFrDrrr3rXrYrZ)rrrr'r.r,rs r)test_iter_allocate_output_types_promotionrs9 qc&&&qc(>(>(>Er \N1${J&?%@@ B BA!bhtnn---qc&&&qc(>(>(>Er \N1${J&?%@@ B BA!bhtnn---qc&&&at(<(<((>(>Er \N1${J&?%@@ B BA!bhtnn-----rctdgd}t|dggdgddgg}t|jd|jdt||dggdgdgddgg}t |jd|jd kt|jdd |jd dS) NrArXr+rFrrrrOrD=)rr/rrr'rrs r*test_iter_allocate_output_types_byte_orderr$s qc++--A4y" \K#<= ? ?A!ahqk***1d|R \J<+z1JK M MA AHQK18A; &'''!))#.. <<<<.>?z*+ |nQ.>> @ @AA$bh|&<&<===A#Q'''''rcGddtj}tjddgddgg|}tjdddj}t||dggdgdgdd gg}tt|t|j dtt|t|j dut|j dj d t||dggdgdggd g}tt|t|j dtt|t|j dut|j dj d dS) NceZdZdZdS)4test_iter_allocate_output_subtype..MyNDArrayN)__name__ __module__ __qualname____array_priority__rHrr MyNDArrayr<srrrOrDrArBrFrrrDrD)rr no_subtype) r.ndarrayrrdrrWrXrrrrrr[)rr4rrs r!test_iter_allocate_output_subtyper:s     BJ    1a&1a&!""'' 22A ! Q""$A1d|R zl[*,EF H HAa$qz!}--... DGG4 1 .. .///A$f--- 1d|R zl7779 : :Aa$qz!}--... DGG4 1 .. .///A$f-----rc ,td}ttt|dggdgddggttt|dggdgddggttt|dgdgddgtttddggddgddggdt jdgtd d d d d}ttt|dggdgddggdt jdgddt jdggttt|dggdgddggdt jdgdgdgttt|dggdgddggdt jdgdgdgtd d d d d}ttt|dgdgdgddggdt jdgddt jd ggdS)Nr#rrrFr r%r$r-rr3r+rDrArBrrOr)rrArO)rrDrOr reduce_ok) rr rrrr.r,rWrr{s r test_iter_allocate_output_errorsrPs q A)VaY%j(ABDDD*fq$i$ J'?@BBB*fq$i*-7,EGGG)VdD\2%z2%z24#'$"8:::: r&&q!Q//A*fq$i$ Z'@A#'$"8!%2:q'9 :<<<< *fq$i$ Z'@A#'$"8!%yyy 13333 *fq$i$ Z'@A#'$"8!%||| 46666 r&&q!Q//A*fq$i+$ Z'@A#'$"8!%2:q'9 :<<<<<.!rrrEcg|]}|SrHrHrIs rrLz)test_iter_remove_axis..rr)rrWr remove_axisrrirs rtest_iter_remove_axisrsr 1a##Aq=/""AMM!Q111a6!2!2333 $$B$qqq( Aq=/""AMM!Q1QQQqqq5!1!122222rctdddd}t|dg}t|jdt|jdt|jdjdd|D}|d |D}t||t|jd ttd |t|jdjd | t|j dt|djt| t|j dt|djd t|jtddS) NrrDrArBrrCrcg|]}|SrHrHrIs rrLz;test_iter_remove_multi_index_inner_loop..s^^^Aa^^^rcg|]}|SrHrHrIs rrLz;test_iter_remove_multi_index_inner_loop..sNNN1QNNNrrOc|jSrr[rs rrz9test_iter_remove_multi_index_inner_loop..rrr)rrWrrrr[itviewsremove_multi_indexr rrrrVenable_external_loopr=)r4rbeforeafters r'test_iter_remove_multi_index_inner_looprs r 1a##Aq=/""A)$$$1#Y///^^^^F NNNNE*..2221#U+++GGIIIR   1UWW%%%R   1U###&**%%%%%rc d}tdddd}gdgfD]&}t|||}tt |t t dd|_tt |t t ddt||d| }tt |t t dd|_tt |t t ddt|ddd |d| }tt |t t dd |_tt |t t d dt|ddd ddd f|d | }tt |t t dd |_tt |t t d dt|dddddd f||}tt |t t dd|_tt |t t dd|d|_tt |t t dd(dS)Nr?rrBrArDr r#rmrrErrb rO) rrWrrr listrSrr)r$r4rzrs rtest_iter_iterindexrsJr 1a##Azl#>> 1e 3 3 3%a(($uRyy//::: %a(($uQ||*<*<=== 1e3: > > >%a(($uRyy//::: %a(($uQ||*<*<=== 1TTrT7E D D D%a(($uRyy//::: %a(($uQ||*<*<=== 1TTrT44R4Z=%sz J J J%a(($uRyy//::: %a(($uR}}*=*=>>> 1SSqS$$B$Y<: > > >%a(($uRyy//::: %a(($uR}}*=*=>>>   %a(($uQ||*<*<====7>>rcd}tddddd}|d }t|d gd gd| }t |jd t d|D|dD]L}||_t |j|t d|D||d|dMt|d dgd gdd|}t |jd t d|D|dD]L}||_t |j|t d|D||d|dMd}t|gdd gdd|}t |jd t |||dD]K}||_t |j|t ||||d|dLdS)Nr?rr3r+rBrArDrmrcrrFrrrcg|] }|d SrHrHrIs rrLz'test_iter_iterrange..rr)rr)rAr)r?r?)rrx)rrcg|] }|d SrHrHrIs rrLz'test_iter_iterrange..'''ae'''rrrOr r)rdr*r$cg|] }|d SrHrHrIs rrLz'test_iter_iterrange..rrcg|] }|d SrHrHrIs rrLz'test_iter_iterrange..rrchtjgd}|D]}tj||f}|S)Nrr+)r.r concatenate)rvalrKs r get_arrayz&test_iter_iterrange..get_arrays?hr&&& + +A.#q**CC r)rr r)rrWrirrr )r$r4a_fortrrrs rtest_iter_iterrangersiJr&&q!Q//A WW3W  Fq8*zl#% ' ' 'Ag&&&#####V,,, B<< Q[!$$$''Q'''!QqT ):;;;;q8Z(:,c: 7 7 7Ag&&&#####V,,, B<< Q[!$$$''Q'''!QqT ):;;;; q999 C: 7 7 7Ag&&&1v&&& B66 Q[!$$$YYq\\6!A$qt)#4555566rc g}|tjdddddj|tjddtjd d d d}d |_tjd d |dd<|||tjdd ddddj|D]}dD]}g}t|ddggdgdd|}|j sft|dj |k||d ||j fttj||dŒdS)Nrr]r+rDrArBrr$)Ar rOr3r1xr?)rOrDrAr?rrr1r r)rFrr!rbr)rdr)r$rrc)rr.rrWrXr/r%rr,rrrrr3rrrri)arraysr4r$rOrs rtest_iter_bufferingr s F MM")B!!!!(Aq!1!1!LLNN88::OOO MM")Bd+++,,, $'''+AAG 9Rt $ $ $AaaaD MM! MM")Ct,,,44Q1a@@BCCC  C C7 C CJDq:7:::;!$#*&0 222A j ! Z/000 AaDIIKK((( j  --qwwSw/A/A B B B B C C Crctjddddj}t |dggdgddd }d }|5|js%||d <|d z }||j%dddn #1swxYwYt| d tjddS)NrrDrArBr r%rr!rrbr1)r)rdr$rrOrc) r.rrWrXr/r%rrrrrirs rtest_iter_write_bufferingrs2 " aA&&(5577@@BBAq:,3334"  " " "A A * AaD FA JJLLL*  s##RYr]]33333s0-B))B-0B-c tjd}tjdd}t||ggddgdd}t|jt t d |t t d |t t d |d }t t |||t|j t|j d |5t|ddd|d<t|ddddgtd|DtttddgdzddddS#1swxYwYdS)Nr#rOr$r+)r rrrr%r'r(c|jSrrrs rrz3test_iter_buffering_delayed_alloc..1rrc|dSrrHrs rrz3test_iter_buffering_delayed_alloc..2s qtrc|ddS)NrrDrHrs rrz3test_iter_buffering_delayed_alloc..3sq1vrcd|d<dSrrHrs r assign_iterz6test_iter_buffering_delayed_alloc..assign_iter5s!rrrrDcFg|]}|dd|ddgS)rrHrOrHrIs rrLz5test_iter_buffering_delayed_alloc..@s-666qqtBx1b*666r) r.rrrhas_delayed_bufallocr rrrrrziprS)r4rrrs r!test_iter_buffering_delayed_allocr's ! A !4   A1vQQQ M$" $ $ $A A "###*44a888*mmQ///*ooq111*k1---GGIII & &'''%%% TTQqT1!QqsVaV$$$66A666SqA3q5=Q=Q8R8RSSS TTTTTTTTTTTTTTTTTTs6A??? "BM***7799BBDDAq:/3334& htnn-  ! ! !A   A cFFFaKFFFF Abi"-888899999sH/BBB#EE  E 3HHHK++K/2K/cgd}tjdddztddgdgd | }d |D}t|d d dt|d dd t|d ddgdzgdzt|d ddt|dd dt|dddt|dddgdzgdzt|dddt|d jtj|gd}tjddddgdgdgdfd <ddgdgdgdfd<ddgdgdgdfd<t rtjd }tddgdgd | }d|D}t|d d dt|d dd t|d ddgdzgdzt|d ddt|dd dt|dddt|dddgdzgdzt|dddt|d jtj|dgdz\}}}t r(ttjd |dg}tj ddg|tddgdgd d }td|Dd d!ggd"}tj d#d$g|ttfd%gd"}gd&}tj d'd(g|tddgdgd | }t|d jtj|td)|Dtj d'|tj d(|gdS)*Nr4r$rrZ)rr\rrCrErAr$r+?r rFrFr'r(c6g|]}tj|SrHr.rrIs rrLz;test_iter_buffered_cast_structured_type..s # # #ABHQKK # # #rrr4rrrDrCrOrrrE)r-r-r-)rrrr;r;r;r;c6g|]}|SrH)r3rIs rrLz;test_iter_buffered_cast_structured_type..s AFFHH rr*)@rr3cg|] }|d SrHrHrIs rrLz;test_iter_buffered_cast_structured_type..s%%%R"R&%%%rr?rr*r+r,)r2rtest)rrrc2tddgdgddS)Nr rFrFr'r3r()rr{srrz9test_iter_buffered_cast_structured_type..s-q:y)J<   r))rCu2rS)rrr5rBr?r#c6g|]}tj|SrHr/rIs rrLz;test_iter_buffered_cast_structured_type..s +++2"(2,,+++r) r.rrrr,rr r0r1rr r)sdtrrOrNrKsdt1sdt2r4s @r'test_iter_buffered_cast_structured_typer=s F E EC !4   3&Aq:y)J<$! # # #A $ # # # #Das###aq!!!a# {1}---as###as###aq!!!a# {1}---as###a ... F E EC S!!!A 8# >AaD 8# >AaD 8# >AaD# _QqT " "q:y)J<$! # # #A ! a Das###aq!!!a# {1}---as###as###aq!!!a# {1}---as###a ...JD!Q0S_QqT**B/// -C &$s+++Aq:y)J<$" $ $ $A%%1%%%1v... 1 0 0C "K0<< > Xq!fE222 ]9 % % > > J?Z$;ff=M#t} > > > > > > > > > > > > > > > > > > > > >sA??B B ctjt5tjtjddfdgddgdddn #1swxYwYtjtjddfdgd gddg }tjt5|5t |}d|d <dddn #1swxYwYddddS#1swxYwYdS) Nr4S1r+rr'r )r*r)rzrOr)r*op_flagsr)rz.)r?r@rr.rrr)r8bufs rtest_buffered_cast_error_pathsrHs z " "88 28Ct,,,.3%":, 8 8 8 8888888888888888 BHQc***,(M8J< Q Q QB z " "   r((CCH               sG0AAA+C'.C C'C C'C C''C+.C+zCannot start subprocesszPyPy seems to not hit this.ctjd}tjtjd|gtjd}d|vsJdS)Na: import numpy as np it = np.nditer((np.array(1, dtype="i"),), op_dtypes=["S1"], op_flags=["writeonly"], casting="unsafe", flags=["buffered"]) buf = next(it) buf[...] = "a" del buf, it # Flushing only happens during deallocate right now. z-cT)stderrtextr)textwrapdedent subprocess check_outputr0 executableSTDOUT)coders r)test_buffered_cast_error_paths_unraisablerS s` ?   D  !3>4">)3): G G GC 3      rc dg}dg}tjd|}tjd|d<t|ddgd gd | }t |d jtj|t |ttdD]0\}}ttj |d|k1d g}dg}tjd|}tjd|dddd d f<t|ddgdgd | }|5t |d jtj|d }|D]H}ttj |d|k|dd xxdz cc<|dz }I dddn #1swxYwYt |dtjd ddddzdg}dg}tjd|}tjd|dddd d d f<t|ddgdgd | }|5t |d jtj|d }|D]-}t |d||dxxdz cc<|dz }. dddn #1swxYwYt |dtjd ddddtj dzdzdg}dg}tjd|}tjd|dddd d d f<t|ddgd gd | }t |d jtj|d }|D]}t |d||dz }dg}dg}tjd|}tjd|dddd d d f<t|ddgd gd | }t |d jtj|d }|D]}t |d||dz }dg}dg}tjd|}tjd dddd|d<t|ddgd gd | }t |d jtj|d }|D])}t |d||d|dz }*dg}dg}tjd|}tjd dd|d<t|ddgd gd | }t |d jtj|d }|D]1}t |d||ddd|dz }2dg}dg}tjd|}tjd dd|d<t|ddgd gd | }t |d jtj|d }|D]Q}t |ddd||dt |dddgd|dz }Rdg}dg}tjd|}tjd dd|d<t|ddgd gd | }t |d jtj|d }|D]W}t |dd ||dt |dd||d|dz }Xd g}d!g}tjd|}tjd ddd|d<t|ddgd gd | }t |d jtj|d }|D]}t |dddd f||dddd ft |ddddf||dddd ft |ddddfd d g|dz }d"g}d!g}tjd|}tjd ddd|d<t|ddgd gd | }t |d jtj|d }|D]}t |dddd f||dddd ft |ddddf||ddddft |ddddfd d g|dz }dS)#Nr*)r4rrArDrDrr+r#r4r rFrFr'r(r)r4rEr)r4rErUr%rDrO)r4rEr)rOrArDrD)r4r$r)r4r$rUHrA)r4rr)r4r$rr)r4rr)r4r$rr)rrrr)r4r$r)r4r)rDrO)r4r$)rArD)r4rr) r.rrrrr,rrrSrrrWr)r;r<r4rrKcounts r test_iter_buffered_cast_subarrayrX!sK  =D " #D T"""A Yq\\AcFq:y)J<$" $ $ $A1RXd^^,,,4a>>**))5qv''((((  D ! "D T"""AillAcF111a7Oq:y)K=$" $ $ $A QqTZ$000  A BF1S6U?++ , , , cF1IIINIII QJEE 31--aA66q8999 " "D  D T"""A1AcF111aA:q:y)K=$" $ $ $A QqTZ$000  A 3 ' ' ' cFFFaKFFF QJEE 31--aAq99"',:O:OOPQQRRR # #D  D T"""A1AcF111aA:q:y)J<$" $ $ $A1RXd^^,,, E QsVU###   " "D  D T"""A1AcF111aA:q:y)J<$" $ $ $A1RXd^^,,, E QsVU###   " "D " #D T"""A Yw   ' '1a 3 3AcFq:y)J<$" $ $ $A1RXd^^,,, E QsVQuXc]+++    D  D T"""A Ys^^ # #Aq ) )AcFq:y)J<$" $ $ $A1RXd^^,,, E QsVQuXc]2A2.///    D  D T"""A Ys^^ # #Aq ) )AcFq:y)J<$" $ $ $A1RXd^^,,, E QsVBQBZ5#///QsVABBZ...    D  D T"""A Ys^^ # #Aq ) )AcFq:y)J<$" $ $ $A1RXd^^,,, E QsVAY% ...QsVAY% ...   D  D T"""A Ys^^ # #Aq! , ,AcFq:y)J<$" $ $ $A1RXd^^,,, E QsVBQBE]AeHSM!!!Q$$7888QsVBQBE]AeHSM!!!Q$$7888QsVAaaaC[1a&)))   D  D T"""A Yu   % %aA . .AcFq:y)J<$" $ $ $A1RXd^^,,, E QsVBQBE]AeHSM!!!Q$$7888QsVBQBE]AeHSM!!!Q$$7888QsVAaaaC[1a&)))   s&*A;F22F69F6A KK Kctjdddd}tjdddd}ttt ||gddgdgd ggd t ||gddgd gd ggd tjdddd}t ||ggd dgd ggd tjdddd}ttt ||gddgdgd ggd tjdddd}ttt ||gddgdgd ggd dS)Nr#rDrArOrr rr%rrbrcrFr rrrB)r.rrWr rrrDs r test_iter_buffering_badwritebackr[s ! Q1%%A " aA&&A*fq!f/=;-0  Aq6J0 L;- ( ! Q1%%A Aq6=== MK= ) ! Q1%%A*fq!f/=;-0 ! Q1%%A*fq!f/=;-0rctjgdtj}t|jtjdt t t|dgdgdt|dgdgd}t|d d t|d jtjdtjgdtj}t|jtjd t t t|dgdgd t|dgdgd }t|d dt|d jtjd dS)N)abcr4abcdr+S4r rFS2r-S6rsabcU4U2U6r]) r.rbytes_rr,r rrstr_rs rtest_iter_buffering_stringrgs^ %%%RY777A"(4..))))VQ zl """"q:, ===A1v1RXd^^,,, %%%RW555A"(4..))))VQ zl"$$$$q:, ===A1u1RXd^^,,,,,rctjd}t|gdd}t|dj|jdS)N)r  growinnerrr?r#r)r.rrrrrs rtest_iter_buffering_growinnerrksQ " Aq<<<&' ) ) )A1AF#####rc xtjdddgd}ddg}ddgdd ggtjg}fd }|D]k\}}}tj|dg|||| }|5d |jd d<|||_|D]'\}} | | tj z } (|jd } dddn #1swxYwYtd dD]} tj|dg|||| |} | 5d | jd d<| || _| D]'\} }|| tj z }(| jd }dddn #1swxYwYt|| mdS)Ni)r rrrrF)rF)r%rr)rrOrErrc3KtddD]f}t|dD]S}D]N}|jz|jzjf}tjjd|}dD] }|||fV OTgdS)Nir)rArArAr)rSrr.lib stride_tricks as_strided)xsysrrrskipr4 op_axes_lists r get_paramsz3test_iter_buffered_reduce_reuse..get_params sx(( 1 1BB)) 1 1+11G "AJQZLG&.99!YPPC &11!7D000001 1 1 1 1r)rrzrFr*rrE.)rrzrFr$r*) r.rfloatr,rr3rrrrint_rSr )rzrFr*rwrrrunditer2a2_inb2_incomp_resbufsizenditer1a1_inb1_inrr4rvs @@rtest_iter_buffered_reduce_reuser s &$v+&A Q Q QE89H +i-EFL I 1 1 1 1 1 1)jll..Wd)SXXZZ.$+58&/111 , ,()G R  % MMOOO $G ") / /bg...'+H , , , , , , , , , , , , , , ,Q~~ . .Gid (/ux+2iIIIG + +,- $S) $(!&-33NUEU\\"'222EE&r* + + + + + + + + + + + + + + + sH - - - - ...s&A#C22C6 9C6 -A#FF #F c tjdddd}tjdddd}tjddd}t|||ggdd gdgdggt t t|||ggdgdd gdggt t t|||ggdgdgdd ggdS) NrrDrArBr#rOrrFr)r.rrWrr r)r4rrs rtest_iter_no_broadcastr9 s  " aA&&A ! Q1%%A " a##A Aq!9b  ( L:, ()))*fq!Qi<*n!= |LNNN*fq!Qi<* N/KLNNNNNrc>eZdZdZdZdZdZdZdZdZ dZ d S) TestIterNestedc tdddd}tj|dgddgg\}fd|D}t |gdgdgtj|ddgdgg\}fd |D}t |ddgddgd d gd d gddgddggtj|ddgdgg\}fd|D}t |gdgdgdgdgdS)NrrDrArrOc.g|]}tSrHrrJ_rs rrLz-TestIterNested.test_basic..O ###AQ###rrr#rrrrrc.g|]}tSrHrrs rrLz-TestIterNested.test_basic..S rrrBr?r#rrrrrc.g|]}tSrHrrs rrLz-TestIterNested.test_basic..W rrrrDrBrOrAr?r#rrrrrrrWr. nested_itersrselfr4rrOrs @r test_basiczTestIterNested.test_basicJ sO 2JJ  q!Q ' 'qA3A-001#######T...0D0D0DEFFFqAq6A3-001#######TQFQFQFQFQFRHMNNNqAq6A3-001#######TIIIyyy***jjjIJJJJJrc tdddd}tj|dgddgg\}fd|D}t |gdgdgtj|ddgdgg\}fd |D}t |ddgddgd d gd d gddgddggtj|ddgdgg\}fd|D}t |gdgdgdgdgtj|dgddggd\}fd|D}t |gdgdgtj|ddgdggd\}fd|D}t |ddgd d gddgddgd d gddggtj|ddgdggd\}fd|D}t |gdgdgdgdgdS)NrrDrArrOc.g|]}tSrHrrs rrLz/TestIterNested.test_reorder..` rrrrc.g|]}tSrHrrs rrLz/TestIterNested.test_reorder..d rrrBr?r#rrrrrc.g|]}tSrHrrs rrLz/TestIterNested.test_reorder..h rrrrrrrbrcc.g|]}tSrHrrs rrLz/TestIterNested.test_reorder..m rrr)r#rrrrrc.g|]}tSrHrrs rrLz/TestIterNested.test_reorder..q rrc.g|]}tSrHrrs rrLz/TestIterNested.test_reorder..u rrrrs @r test_reorderzTestIterNested.test_reorderZ s 2JJ  q!Q ' 'qA3A-001#######T...0D0D0DEFFFqAq6A3-001#######TQFQFQFQFQFRHMNNNqAq6A3-001#######TIIIyyy***jjjIJJJqA3A-s;;;1#######T...0D0D0DEFFFqAq6A3-s;;;1#######TQFQFQFQFQFRHMNNNqAq6A3-s;;;1#######TIIIzzz999jjjIJJJJJrc tdddddddddddddf}tj|dgddgg\}fd|D}t |gdgd gtj|ddgdgg\}fd |D}t |ddgddgd d gd dgddgddggtj|ddgdgg\}fd|D}t |gdgdgdgdgtj|dgddggd\}fd|D}t |gdgdgtj|ddgdggd\}fd|D}t |ddgddgdd gd d gddgddggtj|ddgdggd\}fd|D}t |gdgd gd!gd"gdS)#NrrDrArErrOc.g|]}tSrHrrs rrLz1TestIterNested.test_flip_axes..~ rrrrc.g|]}tSrHrrs rrLz1TestIterNested.test_flip_axes.. rrrBr?r#rrrrrc.g|]}tSrHrrs rrLz1TestIterNested.test_flip_axes.. rrrrrrrbrcc.g|]}tSrHrrs rrLz1TestIterNested.test_flip_axes.. rr)rrrrrr#rc.g|]}tSrHrrs rrLz1TestIterNested.test_flip_axes.. rrc.g|]}tSrHrrs rrLz1TestIterNested.test_flip_axes.. rr)rrr)rrr#)r?rArO)rBrDrrrs @rtest_flip_axeszTestIterNested.test_flip_axesx s 2JJ  q!Q ' '"dddDDbD(8 9qA3A-001#######T...0D0D0DEFFFqAq6A3-001#######TQFQFQFQFQFRHMNNNqAq6A3-001#######TIIIyyy***jjjIJJJqA3A-s;;;1#######T0002D2D2DEFFFqAq6A3-s;;;1#######TRHq!fq!fq!fq!fq!fMNNNqAq6A3-s;;;1#######TJJJ IIIyyyIJJJJJrctddd}tddd}tj||gdgdgg\}fd|D}t |ddgddgddggddgddgddgggtj||gdgdgg\}fd|D}t |ddgddggddgddggddgddgggdS)NrDrOrArc.g|]}tSrHrrs rrLz1TestIterNested.test_broadcast.. rrc.g|]}tSrHrrs rrLz1TestIterNested.test_broadcast.. rrr)rr4rrrOrs @rtest_broadcastzTestIterNested.test_broadcast s, 1II  a # # 1II  a # #1vaSz221#######TaVaVaV41v1v1v6NOPPP1vaSz221#######TaVaV,1v1v.>!Q!Q@PQRRRRRrctdddd}tj|dgdggdd gd \}t djtjd fd |D}t |gd gdgd}tdddd}tj|dgdggddgdd \}|55t djtjd |D]}D]}|dxxdz cc<t |gd gdgdddn #1swxYwYdddn #1swxYwYt |gdgdgtdddd}tj|dgdggddgdd \}t djtjd |D]}D]}|dxxdz cc<t |gd gdg|t |gdgdgdS)Nr#r3r+rDrArrOrFr3r)rFr*c.g|]}tSrHrrs rrLz2TestIterNested.test_dtype_copy.. rrr)rArBr?r$r%r&r)rFr)r*.r5r8)rrWr.rrr,close)rr4rrOrKrnrs @rtest_dtype_copyzTestIterNested.test_dtype_copy sb 1D ! ! ! ) )!Q / /qA3*&0&%9&*,,,1 QqTZ$000#######TIIIyyy1222 1D ! ! ! ) )!Q / /qA3*&1>%B$/&*,,,1 4 4 4 4 1RXd^^ 4 4 4    AcFFFaKFFFF YYY 2 3 3 3  4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 QIII./// 1D ! ! ! ) )!Q / /qA3*&1>%B$/&*,,,1 QqTZ$000  A  #!  QIII.///    QIII./////s7$E('AE E(E E(E E((E,/E,cPtdddd}tj|dgdggdgd gd d \}}t |djtjd |D]}|D]}|d xxdz cc<t |gdgdgdSNr#r$r+rDrArrOr r%rr)rzrFr)r*.r5r8rrWr.rrr,rr4rrrKrns rtest_dtype_bufferedz"TestIterNested.test_dtype_buffered s 1D ! ! ! ) )!Q / /qA3*#-,&1]$/&* ,,,1 QqTZ$000  A  #!  QIII./////rcDtjdddd}tj|ggdg\}fd|D}t |gdgtj|gdgg\}fd|D}t |dgd gdgdgd gd gd gd gdgdgdgdgg tj|ddggd gg\}}g}|D]&}D]!}|d|D"'t |gdgdgdgdgdS)NrrDrA)rOrrDc.g|]}tSrHrrs rrLz*TestIterNested.test_0d.. rrrc.g|]}tSrHrrs rrLz*TestIterNested.test_0d.. rrrrOrBr?r#rrrrrcg|]}|SrHrH)rJzs rrLz*TestIterNested.test_0d.. sNNN1QNNNrrrrr)r.rrWrrr)rr4rrOkrKrnrs @rtest_0dzTestIterNested.test_0d s IbMM ! !!Q * *q2yyy/221#######TBBBCDDDq999b/221#######TQC!qcA3aS1#sQC!rdUWTXYZZZ/!q!fb1#%6771a , ,A , , NNNNN++++ ,TIIIyyy***jjjIJJJJJrctdddd}tj|dgdggdgd gd d \}}|5|5t |djtjd |D]}|D]}|d xxdz cc< dddn #1swxYwYdddn #1swxYwYt |gdgdgdSrrrs r%test_iter_nested_iters_dtype_bufferedz4TestIterNested.test_iter_nested_iters_dtype_buffered s 1D ! ! ! ) )!Q / /qA3*#-,&1]$/&* ,,,1     1RXd^^ 4 4 4    AcFFFaKFFFF                                QIII./////s7 B:AB# B:#B' 'B:*B' +B::B>B>N) rrrrrrrrrrrrHrrrrH sKKK KKK<KKK< S S S(0(0(0T 0 0 0KKK"00000rrc ,tjd}ttt|dggdgddggdgdggtjddd }ttt|dgd gdgddggdd gddggdS) Nr#rFr%rrrErkrDrArrO)r.rr rrrWr{s rtest_iter_reduction_errorr s ! A*fq$i \K#<=S2$K)))) ! Q""A*fq$i/1B \K#<=Vb"X.000000rctjd}t|dgdgdgddggdgdgg}|5d|jd d <|D]\}}|d xx|z cc<t |jd jdt |jd tj|dddn #1swxYwYtjdd d }t|dgdd gdgddggdd gddgg}|5d|jd d <t |d jdt |d j d|D]:\}}tt|D]}||xx||z cc<;t |jd jdt |jd tj|dddn #1swxYwYtj d}t|dgdd gdgddggdgdg}t|dggddgddggdgdgd}|5|5|jd  d|jd  d||D]}|d d xx|dz cc<|D]}|d d xx|dz cc<t |jd |jd t |jd |jdddn #1swxYwYddddS#1swxYwYdS)Nr#rrFr%rrrErkrO.rDrArrr)rDrAr?)rrErO)rrr rr)rr$)r.rrrrrsumrWr[rrSrTrfillrr)r4rrKrnrit1r;s rtest_iter_reductionr s ! A4y;- \K#<=S2$K ) ) )A // 1 c  DAq cFFFaKFFFFQZ]'+++QZ]BF1II.../////////////// ! Q""A4y;8 \K#<=Vb"X. 0 0 0A // 1 cQqTZ&&&QqT\4(((  DAq3q66]]  !!   QZ]'+++QZ]BF1II...///////////////$  A !T[/: \K#<=!:::. 0 0 0C !T::: \K#<=!:::.2 ? ? ?C 4 4c 4 4 QQ QQ   A aDIII1 IIII  A aDIII1 IIIIS\!_cl1o666S\!_((**AF333 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4s\A6B88B<?B<CG,,G03G0M$C/M  M$ M M$M M$$M(+M(ctjd}tjdd}t ||gddgdgdd ggd gd gg }|5t |d jtjdt|d j|jk|D]\}}|dxx|z cc< dddn #1swxYwYt |tj |tjd dd}tjd d gd}t ||ggddgdd ggd d gd d gg }|5t |d j dt |d j d|D]:\}}tt|D]}||xx||z cc<; dddn #1swxYwYt |tj |d tjdd z}tj|dggddgddggd d gd d ggd}|5|jd d |t |d gddddn #1swxYwYtjdtjddd ddd dfd dd }tj|j |j |d<tjdtj dd}|} |ddddddf}tj||ggddgdgg}|5|D]\}}|d dddn #1swxYwYt |d dd| d ddt |dddddS) Nr#grr+rr rFr%rrrErkrO.rDrArrr rr)axis)rrr rrrr)rOrDrOrD)rrrrBrr?r1rZ)r.rrr%r/rrr,rrrWr[rrSrTrrrrrc transposerr3) r4rrrKrnrrRr8y_base y_base_copys rtest_iter_buffering_reductionrD s ! A 4   ))++88::A1v Z0 \K#78S2$K ) ) )A QqTZ$000! ag%&&&  DAq cFFFaKFFFF  BF1II ! Q""A !Qt$$$--//<<>>A1vAAA \K#78VaW- / / /A  QqTZ&&&QqT\4(((  DAq3q66]]  !!                   BF11%%%&&& ! qA At9 H H H\K4 5!Wr2h'    B ** AA  RULLL)))***************  BG$$QqS2a!^4>>q!QGGA Yqv   & &qw / /AcF Ys"' * * * 2 21a 8 8F++--Ksss111TzA Aq6=== MJ<0 2 2B   DAq FF1IIII 1{14a40111!a     sK1A)C''C+.C+A4HH!$H! A K&&K*-K*!P  PPcJtjd}tjd}tj||ggddgdggd}|5d|D}dddn #1swxYwYt|gd tt ||jdS) N)rDr)rOrrrFr%r?)rzrFr$c.g|]\}}|jdSrrrms rrLzDtest_iter_buffering_reduction_reuse_reduce_loops.. s"...41aAGAJ...r)r?rDr?rD)r.rrrrr)r4rr8bufsizess r0test_iter_buffering_reduction_reuse_reduce_loopsr s A A Aq6!K!K!K)l[M:  " " "B //..2...///////////////<<<(((X'''''s A$$A(+A(c tjd}tjd}tjgdgdg}tjgd}tjgdd}tjgdd}tjgdd }ttt ||ggd d gd ggttt ||ggd d gd d ggttt ||ggd ggdgttt |||ggd d gd d gd d ggttt ||ggd gd d ggttt |||gdgd gd d gd d ggtj|||gdgd gd d gd d ggttt |||gdgd gd d gd d ggtj||gdgd d gd d ggd dgdtt tj||gdgd d gd d ggd dgdtt tj||gdgd d gd d ggd dgddS)NrrTTF)FTFru1r+r r$r% writemaskedrF arraymask)r%rrrr rr)r.rrr rrr)r4rrm2m3mbad1mbad2s rtest_iter_writemasked_badinputr s@ A A %%%';';';<==A %%% & &B )))4 ( ( (B HYYYd + + +E HYYYd + + +E*fq!fb!=1J<@BBB*fq!fb -0:{2KLNNN*fq!fb \#L#L#LMOOO*fq!Rj"!=1 +. +.0111 *fq!fb!]Z$=>@@@*fq!Qi+ \!=1 +.0111 Iq!Rj;- \!=1 +.0111 *fq!Rj;- \!=1!;/1222 Iq"g |!=1 +.0#Tl' )))) )RYE ZL!=1 +.0#Tl' )))) )RYE ZL!=1 +.0#Tl' ))))))rc: |jn#t$rYdSwxYwdS)NTF)rr)iterators r _is_bufferedr s: tt 5s  r4rrr+)&rrD)rBi8|rA)rrA)rrir?rEc|j}|ddz}tj|t}gd|z|d<tj||ggddgdd gg}|5|D] \}}d |d< dddn #1swxYwYt |tjgd |z|tj||gd gddgdd gg}d }|5|D]!\}}d|d<tj||rd}" dddn #1swxYwY|s)t |tjgd|z|n-t |tjgd|z|d|d<tj||gd gddgdd ggddgd}|5|D] \}}d|d< dddn #1swxYwYt |tjgd|z|dS)NrErAr+r.r%rrFrrOrr Tr;Fr0)r;r;rOrZr'r)rArAr;)r[r.emptyboolrr broadcast_tomay_share_memory)r4r[repsmskr8rKr is_buffereds rtest_iter_writemaskedr s7 GE 9>D (5 % % %C"""T)CH As8R}-k*, - -B   DAqAcFF BOIII$4e<<=== As8j\}-k*, - -BK $$ $ $DAqAcF"1a(( $#  $$$$$$$$$$$$$$$$ Q$(>FFGGGG Q (>?????s6A33A7:A7 %C;;C?C?FF#&F#mask mask_axesrrrOrBrHctjd}dg}gd}ddg}|d}n|ddgg}tt5tj||f|||g|ddddS#1swxYwYdS) Nr@r)rr%rrrrrO)rzrFr)r.rr rr)rrritflags mask_flagsa_flagsrs r%test_iter_writemasked_broadcast_errorr# s (6  CmG777JM*Gq!f% z " "## 4+W G7L! # # # ###################sA))A-0A-ctjdd}|}tjdddt }tj||gddgdd gd d ggd d g}t}trtj |}|D] \}}d|f|d< ~~~tr/tj ||z tj |ksJt||||||tjd|f|jksJ~trtj ||ksJdSdS)Ni'z>i,OrrD)rr rFr%rrFrz s )E   ! !& ) )CxxzzH 9  Q  . . 5 5d ; ;D C;Y 7 -0-/$c] , , ,BI+ **"" Xy>C XrLy))E1R5Ed5K5KKKKKsD5z8TE?333 I1i.#)<< < A A C CCC C 3y))U22223322rctjtjd}gd}|D]}ttt ||dS)NrD) r=r[rrrr2has_multi_index has_indexr'rnoprrr.rrr AttributeErrordelattrr8attrss r)test_iter_non_writable_attribute_deletionr] s\ 271::  B 3 3 3D66ngr1555566rctjtjd}gd}|D]}ttt ||dS)NrD)rrr rrrs r%test_iter_writable_attribute_deletionrg sT 271::  B > > >D 66ngr1555566rctjtjd} |d=|dd=dS#t$rYdSt$rt wxYw)NrArOrD)r.rrrrrr8s rtest_iter_element_deletionr n sn 271::  B qE qsGGG      s2 AAc6tjgddfddg}|D]\}}|dz |d<|dz|d<t|jdddgddgdd ggtjgdgdfddgd gdd g }|D]\}}|dz |d<|dz|d<t|jdddgddgdd ggtjd gd}|D]&\}}}||z |d<||z|d<||z|d<||z |d<'t|jdddgddggdS)N)rOrArx)r3rr-rOrrDrBr)rEr)r*rzr)rrDN)NN)r3rrrrrrrrxr?)r.rrr)r8r4rrs r test_iter_allocated_array_dtypesr x s JJJ%$ 1E F F FB11u!1u!Q1a&1a&2r(!;<<< ZZZL$'D,3G%w A A AB11u!1u!Q1a&1a&2r(!;<<< =,H,H,H I I IB1aa%$a%$a%$a%$Q1b'B7!344444rctddgdgdggdz}t|jdtt|dt|jdt|jdt tt||tt|dt tt|ttj ddgdggdg }t|jdtt|d ttj ddgdggdgd }t|jdtt|d t t5ttj ddgdggd dddn #1swxYwYgd }tj dd}t|ddgdgd|}t|}t|ddt|ddt|ddgdzgdzt|dddS)NrDrArrFrrrHr?rkrOrrr)r-r$r+r rFr'r(r4rrrC)rrrrrrr StopIterationrr.rrTrr)rr:r4rOs r test_0d_iterr s1v *q(899Aa&!!!###a   -q)))GGIIIa&!!!-q))) ry||m_ |nrdKKKAQry||m_ |ntr + + +AQ z " "LLry||m_ |nKKKKLLLLLLLLLLLLLLL F E EC D!!!Aq:y)J<$ 5 5 5A 77DcC   cAcsWQYKM***cC     s()GG!$G!c ttdtjtjdzddttddddf<ttfdGdd}tttj j tj ||gddS) Nc4tjdddzS)N)ihBrDr$r+)r.rrHrrrz*test_object_iter_cleanup.. sRXj%E%E%E%LrrrEcbtjdddddfdddddfS)NrE)r.add)roarrsrrz*test_object_iter_cleanup.. s7RVDDDbDM3qqq$$B$w<%H%HrceZdZdZdS)#test_object_iter_cleanup..Tc td)N Ambiguous)r)rs r__bool__z,test_object_iter_cleanup..T.__bool__ sK(( (rN)rrrrrHrrrXr s# ) ) ) ) )rrXrEr+) r rr.rBUFSIZErWrrr logical_orreducer)rXrrs @@rtest_object_iter_cleanupr s )LLMMM )BJO $ $ , ,R 4 4 ; ;C @ @C ::f  DDBK)HHHHHIII)))))))))R]1XqqssAACCj<<<>>>>>rctjddgddgddgddggddd}tjt5tj|ddddS#1swxYwYdS)NrOrErD)r.rr?r@rr)rs rtest_object_iter_cleanup_reducer  s (T1IBx$RH= > >sss CC y ! ! s sA%%A),A)r)@rBrDrm)r,rdctjdtj}tj|dt|}t |tjddtdS)Nr!r+r)rr,outrB)r.rintprrr full)rr#rs r%test_object_iter_cleanup_large_reducer& sY '$bg & & &C &6S 9 9 9CsBGD!6:::;;;;;rcftjtjjdz}tjjtjd|fd}ttt||dddffttt||dddffdgdS)Nr rOrrry) r.iinfor$maxrprqrrrr rr)rrs rtest_iter_too_larger* s 8BG   D (D &  ) )"(1++w E EC*fsC4L&9:::*fAAAtG %m_>>>>>>rcdd}d}||ztjtjjkr/|dz }||ztjtjjk/ddg|z}g}t |D];}|dd}d||dz<|tj| > >B      #                 B/0 RXd^^,< > > >B ;;     #                 j'2z::: ;;;;;;;;;;;;;;; B/0 RXd^^,< > > >B   AAcFF  LE,&&&&&sB//B36B35D?7.add_closeU s Y1c{B \J<+j1IJLL  IQ1 E!QA     k!n   rctj}tj|||ggdgdgddgg}|5|D]\}}}|||||jdcdddS#1swxYwYdSr=)r.rrr)rKrnr#r>r8r4rrs r add_contextz*test_close_equivalent..add_context_ s Y1c{B \J<+j1IJLL  " " # # Aqa""""";q> " " " " " " " " " " " " " " " " " "s$A  A$'A$r?rrrDr)rSr)r?rArs rtest_close_equivalentrBR s""""  %((E!HH%%AE!ROO$$$ E!HHeAhh''AE!ROO$$$$$rc"tjtjd}tt |d|t tt|t tt|ddS)NrArr) r.rrrrrr rrr5rs rtest_close_raisesrDl sh 29Q<< B$r((AHHJJJ-r****gr:66666rctjtjd}tt|jddS)NrArO)r.rrr rrrs rtest_close_parametersrFs s3 29Q<< B)RXq)))))rc tjdd}|}t 5}|t tj|gddggdtjdg}~t|j dksJ ddddS#1swxYwYdS) Nr#r$r+r%r&rr(rO) r.rr%r/r recordRuntimeWarningrr,rTlog)r4r)r"r8s rtest_warn_nocloserKw s !4   A  " " $ $B   ! >""" Yr2n => 'BHTNN3CEEE 37||q     !!!!!!!!!!!!!!!!!!s A%B>>CCrwin32z!Errors with Python 3.9 on Windowsr buf_dtype))rrErEr)i,OrzO,irOstepsr5cd}tjttjdz||}tj|tj|ggdd}t|D]}t|~tj|tj|ggdd}t|D]}| ~dS)a Checks for reference counting leaks during cleanup. Using explicit reference counts lead to occasional false positives (at least in parallel test setups). This test now should still test leaks correctly when run e.g. with pytest-valgrind or pytest-leaks i@r;rr'r*rzr)N) r.r%intrrrr,rSrr)rrMrQr=rr8steps rtest_partial_iteration_cleanuprV s E '#bj3&'' / / 6 6x @ @C 328I#6#6"7:::H N N NBe  R  328I#6#6"7AAA8 U U UBe   rrNrPcRd}tjttjdz||}|dkr d|ttjdz<n%d|ttjdzd<t j|}tj|tj|ggdd}tj t5t|t|dddn #1swxYwY| tj t5||dddn #1swxYwY|t j|ksJdS) Nr4r;rErrrr'rS)r.r%rTrrr0r1rr,r?r@rrrr)rrMr=rrWr8s rtest_partial_iteration_errorrX s E '#bj3&'' / / 6 6x @ @C3%)C S ! !""+/C S ! !"4( OE " "E 328I#6#6"7:::H N N NB y ! ! R R HHJJJ y ! !   COE** * * * * * *s$*DDD )FF Fcd}tjdtjdddddddf}tjd}tj||fdd gd d d gd gdgg}||j }|}t|t|ksJt||D].\}}| |sJ/dS)a Matches the expected output of a debug print with the actual output. Note that the iterator dump should not be considered stable API, this test is mainly to ensure the print does not crash. Currently uses a subprocess to avoid dealing with the C level `printf`s. a ------ BEGIN ITERATOR DUMP ------ | Iterator Address: | ItFlags: BUFFER REDUCE REUSE_REDUCE_LOOPS | NDim: 2 | NOp: 2 | IterSize: 50 | IterStart: 0 | IterEnd: 50 | IterIndex: 0 | Iterator SizeOf: | BufferData SizeOf: | AxisData SizeOf: | | Perm: 0 1 | DTypes: | DTypes: dtype('float64') dtype('int32') | InitDataPtrs: | BaseOffsets: 0 0 | Operands: | Operand DTypes: dtype('int64') dtype('float64') | OpItFlags: | Flags[0]: READ CAST ALIGNED | Flags[1]: READ WRITE CAST ALIGNED REDUCE | | BufferData: | BufferSize: 50 | Size: 5 | BufIterEnd: 5 | REDUCE Pos: 0 | REDUCE OuterSize: 10 | REDUCE OuterDim: 1 | Strides: 8 4 | Ptrs: | REDUCE Outer Strides: 40 0 | REDUCE Outer Ptrs: | ReadTransferFn: | ReadTransferData: | WriteTransferFn: | WriteTransferData: | Buffers: | | AxisData[0]: | Shape: 5 | Index: 0 | Strides: 16 8 | Ptrs: | AxisData[1]: | Shape: 10 | Index: 0 | Strides: 80 0 | Ptrs: ------- END ITERATOR DUMP ------- rr+rNrDg@rCr3r'rr rFr%)r*r)rzrF) strip splitlinesr.rrrWr debug_print readouterrr#rTr startswith)capfdrarr1arr2r8rres_line expected_lines rtest_debug_printrd sQ5j  k n 9S ) ) ) 1 1"b 9 9!!!SSqS& AD 9R==D D$rqs4  888888888,,,,,,,,,,,,  $-EFF( ( GF( T0006KKK6KKK6KKK6000 $-EFF ) )GF ) @ @ @XXX6*`*`*`X 0 0 0666:#D#D#DJ 0 0 0666:#D#D#DJ222<$$$0"""HD%D%D%L<<<>ISISISVK4K4K4Z & & &&<<<|<<<|*,*,*,X$$$L,,,&%3%3%3N++++++Z>/>/>/@XXXt$"$"$"L>>>4*9*9*9Z",u"566r|E':;;:;;++<;<;76+B777@EEE@666 ) ) )6666 6 6 6...& = = =(((...,)<)<) > >D'6'6'6RCCC:444$TTT6 1 1 1555<0:0:0:dG4G4G4T>>>&   G$=>> $-JKKLK?>&eeeN   D---$$$$0.0.0.f N N Ns0s0s0s0s0s0s0s0j 0 0 0949494v>!>!>!@((( @)@)@)F $d # # # +T * * *33Q36 2 "$ / / /!QQQ!QQQ ? $d # # #CCaC ( ,d + + +CCaC1H 5 "$ / / /!QQQ!TTrT0A B DEE9@9@EE9@x&+. Aw & ' ' '!Q0 & ' ' '. !6 " " "RG, "F # # #b"X. "F # # #T* 1, - -## - -#"333>6666665556$!$!$!L>>>, F+++AAAsssAAAI6 F#666qqq##A#qqqyA F+++AAAsssAAAI6;;C@@!BCC<< CC< > > > O O OD?'?'?'B%%%4777*** $-EFF!!GF!C$RaR(F2Ns|w7N>@@*k2     ))),,  -,   @@ 4 $-EFF*k2     ++   GF +8N:N:N:N:N:r