gL i-ddlmZddlZddlZddlmZddlmZddl m cm Z ejejejdejfejejdejfej dej fej dej"fej dej$fej d ej&fej d ej&fej"dej"fej"dej"fej"dej$fej"d ej&fej"d ej&fej$dej$fej$dej$fej$dej$fej$d ej&fej$d ej&fej(dej&fej(dej&fej(dej&fej(d ej(fej(d ej&fg d ZGd dZGddZy))datetimeN)iNaTg@y@@T)paramsc|jS)N)param)requests \/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/pandas/tests/test_take.pydtype_fill_out_dtyper s6 ==cTeZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zy )TestTakec|\}}}tjjdjdddj |}gd}t j |||}|gd|gdk(jsJ|d|k(sJ|j|k(sJgd }t j |||}|gd ||k(jsJ|j|k(sJy) Nrrrr) fill_valuerrrrrrrrrrrrrr nprandom default_rngintegersastypealgostake_ndalldtypeselfrr&r out_dtypedataindexerresults r test_1d_fill_nonnazTestTake.test_1d_fill_nonna+s';$z9yy$$Q'00Aq9@@GtWDy!T)_499;;;ayJ&&&||y(((tWD|$W 5::<<<||u$$$rc|\}}}tjjdjdddj |}gd}t j ||d|}|gdddf|gdddfk(jsJ|dddf|k(jsJ|j|k(sJt j ||d |}|ddgdf|ddgdfk(jsJ|dddf|k(jsJ|j|k(sJgd }t j ||d|}|gd ddf||ddfk(jsJ|j|k(sJt j ||d |}|ddgd f|dd|fk(jsJ|j|k(sJy) Nrrrraxisrrrrrrrrr's r test_2d_fill_nonnazTestTake.test_2d_fill_nonna;s';$z9yy$$Q'00Av>EEeLtW1Ly!|$Y\(::??AAAq!t *//111||y(((tW1Lq)|$Q \(::??AAAq!t *//111||y(((tW1L|Q'4 +;;@@BBB||u$$$tW1Lq,'47 +;;@@BBB||u$$$rc`|\}}}tjjdjdddj |}gd}t j ||d|}|gdddddf|gdddddfk(jsJ|dddddf|k(jsJ|j|k(sJt j ||d |}|ddgdddf|ddgdddfk(jsJ|dddddf|k(jsJ|j|k(sJt j ||d|}|ddddgdf|ddddgdfk(jsJ|dddddf|k(jsJ|j|k(sJgd }t j ||d|}|gd ddddf||ddddfk(jsJ|j|k(sJt j ||d |}|ddgd ddf|dd|ddfk(jsJ|j|k(sJt j ||d|}|ddddgd f|dddd|fk(jsJ|j|k(sJy) Nrr)r0rrrr1rrrrrrrr's r test_3d_fill_nonnazTestTake.test_3d_fill_nonnaSs';$z9yy$$Q'00AyAHHOtW1Ly!Q'4 1a+@@EEGGGq!Qw:-22444||y(((tW1Lq)Q'49a+@@EEGGGq!Qw:-22444||y(((tW1Lq!Y'41i+@@EEGGGq!Qw:-22444||y(((tW1L|Q)*d7Aq=.AAFFHHH||u$$$tW1Lq,)*d1gq=.AAFFHHH||u$$$tW1Lq!\)*d1a=.AAFFHHH||u$$$rcBtjjdjdj tj }gd}t j||}|j|}tj|d<tj||y)Nr rrrrr rrr standard_normalr"float32r#r$takenantmassert_almost_equalr(arrr+r,expecteds r test_1d_other_dtypeszTestTake.test_1d_other_dtypesuspii##A&66r:AA"**MsG,88G$vv  vx0rctjjdjdj tj }gd}t j||d}|j|d}tj|d<tj||t j||d}|j|d}tj|dddf<tj||y)Nr)r7r0r8rr2rrr9r@s r test_2d_other_dtypeszTestTake.test_2d_other_dtypes~sii##A&66w?FFrzzRsG!488G!8,vv  vx0sG!488G!8,&&B vx0rc.tjgdt}tj|gd}|j gd}t j||tj|gd}|jtjk(sJy)Nrrrr&rrrrrrr rarrayboolr#r$r<r>assert_numpy_array_equalr&object_r(rAr,rBs r test_1d_boolzTestTake.test_1d_boolsfhhy-sL188L) ##FH5sJ/||rzz)))rctjgdgdgdgt}tj|gd}|j gdd}t j||tj|gdd}|j gdd}t j||tj|gd }|jtjk(sJy) NrH)rrr)rrrrIrJrrErrKrLrQs r test_2d_boolzTestTake.test_2d_boolshh 9i8EsL188Lq81 ##FH5sLq988Lq81 ##FH5sJ/||rzz)))rc tjjdjdj tj }gd}t j||d}|j|d}tj|ddgddf<tj||t j||d}|j|d}tj|ddddgf<tj||y)Nr)rrrrrrrrrErrr9r@s r test_2d_float32zTestTake.test_2d_float32sii##A&66v>EEbjjQ#sG!488G!8, ff!Q vx0sG!488G!8, ffQF vx0rc tjjdjddddz}|j d}gd}t j ||d }|j|d }t|j tjdd gddf<tj||t j ||d td d d }|j|d }td d d |dd gddf<tj||t j ||d }|j|d }t|j tjdddd gf<tj||t j ||d td d d }|j|d }td d d |dddd gf<tj||y)NriiYr/lh]zdatetime64[ns]rIrVrrErirr1) rrr r!viewr#r$r<rint64r>r?rr@s r test_2d_datetime64zTestTake.test_2d_datetime64s II ! !! $ - -j*f M  hh-h.#sG!488G!8,-1 bhhA * vx0sG!qRS@TU88G!8,&tQ2!Q vx0sG!488G!8,-1 bhhAq6 * vx0sG!qRS@TU88G!8,&tQ2QF vx0rcxtjdjdd}tj|ddg}tj gdgdg}t j||tj|ddgdd }tj gdgd g}t j||y) N rrrrr) r7 T allow_fillr)rrr)rarangereshaper#r<rMr>rOrQs r test_take_axis_0zTestTake.test_take_axis_0siim##Aq)C!R)88Y 45 ##FH5C!RTaH88Y 23 ##FH5rc.tjdjdd}tj|ddgd}tj ddgdd gd d gd d gg}t j||tj|ddgddd}tj ddgddgd dgd dgg}t j||tjtd5tj|ddgddddddy#1swYyxYw)Nr]rrrrrrErr0r^r_T)r2rarindices are out-of-boundsmatch) rrbrcr#r<rMr>rOpytestraises IndexErrorrQs r test_take_axis_1zTestTake.test_take_axis_1siim##Aq)C!Rq188aVaVaVaW=> ##FH5C!RqTaP88aVaVaVaV<= ##FH5]]:-H I K JJsQFt J K K Ks %D  Dctjgd}tjddg}tjtd5t j ||ddgdddtjgdt}t j ||ddg}tjd dggt}tj||y#1swYuxYw) Nrrrrrzfill_value must be a scalarriTr`rIr) rrMrkrl ValueErrorr#r<objectr>rOr@s r !test_take_non_hashable_fill_valuez*TestTake.test_take_non_hashable_fill_valueshhy!((Ar7# ]]:-J K F JJsG! E Fhhy/CTqcJ88QHF3 ##FH5 F Fs CC"N)__name__ __module__ __qualname__r-r3r5rCrFrRrTrWr[rdrnrsrr rr*s@% %0 %D11"* *1"1> 6 K 6rrcleZdZdZdZej jdddgdZdZ dZ y ) TestExtensionTakecbtjddg}d}tjt|5t j |ddgddddd}tjt|5t j |ddgd dddy#1swYJxYw#1swYyxYw) NrrrhrirTraz2index 2 is out of bounds for( axis 0 with)? size 2F)rrMrkrlrmr#r<)r(rAmsgs r test_bounds_check_largez)TestExtensionTake.test_bounds_check_largeshh1v) ]]:S 1 5 JJsQFt 4 5C ]]:S 1 6 JJsQFu 5 6 6  5 5 6 6sB5B%B"%B.ctjgdtj}gd}d}tjt |5t j||ddddt j||}tjgdtj}tj||y#1swY]xYw) NrprI)rrz7'indices' contains values less than allowed \(-2 < -1\)riTr{)rrr) rrMrZrkrlrqr#r<r>rO)r(rAr+r|r,rBs r test_bounds_check_smallz)TestExtensionTake.test_bounds_check_small shhy1H ]]:S 1 6 JJsG 5 6C)88IRXX6 ##FH5  6 6s B>>CraTFcbtjgtj}tj|g|}t j ||djddg}tjt|5tj|dg|dddy#1swYyxYw)NrIr{|z.cannot do a non-empty take from an empty axes.rhrir) rrMrZr#r<r>rOjoinrkrlrm)r(rarAr,r|s r test_take_emptyz!TestExtensionTake.test_take_emptyshhr*C ; ##C0hh@+   ]]:S 1 8 JJsQCJ 7 8 8 8s B%%B.ctjtjgddgdd}tjddg}t j ||y)NrTgr`)r#r<rrMr>rO)r(r,rBs r test_take_na_emptyz$TestExtensionTake.test_take_na_empty(sEBHHRL2r(tPST88S#J' ##FH5rcgd}d}tjt|5tj|ddg}dddt j ddg}tj|y#1swY7xYw)Nrpz0take accepting non-standard inputs is deprecatedrirr)r>assert_produces_warning FutureWarningr#r<rrMrO)r(rAr|r,rBs r test_take_coerces_listz(TestExtensionTake.test_take_coerces_list-sg@  ' ' S A -ZZaV,F -88QF# ##FH5 - -s A11A:N) rtrurvr}rrkmark parametrizerrrrwrr ryrys? 6 6 [[\D%=9 8: 86 6rry)rnumpyrrk pandas._libsrpandas._testing_testingr>pandas.core.algorithmscore algorithmsr#fixtureint8int16int32float64 complex128rPbool_rrryrwrr rs && ("((3-) ("((3-* 1bhh 3 # :r}}- 4$ 2rzz" Q # S"**% Z/ T2::& R$ 2==) R]]+  BMM2 bjj) BJJ' 1bjj! 3 # :rzz* 4" 2rzz"- 454Q6Q6h5656r