idAYDddlZddlmZddlmZmZmZmZm Z m Z ddl m Z m Z mZmZmZmZddlZdZdZd"dZd Zd Zd Zd Zd ZdZdZdZdZdZdZ dZ!dZ"dZ#GddZ$dZ%Gddej&Z'Gdde'Z(dZ)dZ*d Z+d!Z,dS)#Nrational) assert_equalassert_array_equal assert_raisesassert_assert_raises_regex assert_warns) as_stridedbroadcast_arrays_broadcast_shape broadcast_tobroadcast_shapessliding_window_viewcd|D}t|}d|D}|gt|z}t||dS)Nc6g|]}tj|Snpzeros.0ss W/opt/cloudlinux/venv/lib/python3.11/site-packages/numpy/lib/tests/test_stride_tricks.py z)assert_shapes_correct.. 222 222cg|] }|j Sr)shape)ras rrz)assert_shapes_correct..s,,,Q,,,r)r lenr) input_shapesexpected_shapeinarrays outarrays outshapesexpecteds rassert_shapes_correctr(s]32\222H (+I,,),,,I#h--/HH%%%%%rcNd|D}tttg|RdS)Nc6g|]}tj|Srrrs rrz4assert_incompatible_shapes_raise..rr)r ValueErrorr )r"r$s r assert_incompatible_shapes_raiser,s632\222H*.:::::::rFctj|t}ttj|}tj||}|r|j}|j}|r|ddd}|ddd}||z}t||\}} t|| dS)Ndtype) rrintmultiplyreducearangereshapeTr r) shape0shape1 transposedflippedx0nx1yb0b1s rassert_same_as_ufuncrA!s & $ $ $B BK  v & &''A 1  f % %B T T "X "X RA b" % %FBq"rctjd}tjd}t||\}}t||t||dS)N )rr4r r)xr>bxbys r test_samerG7sU " A " A a # #FBq"q"rctjd}tjd}ttd5t ||dddddS#1swxYwYdS)NrCzgot an unexpected keywordfloat64r.)rr4r TypeErrorr )rDr>s rtest_broadcast_kwargsrK>s " A " A Y(C D D00AY////000000000000000000sAA"%A"ctjgdg}tjdgdgdgg}t||\}}tjgdgdgdg}|j}t ||t ||dS)NrNrOrP)rarrayr r6r)rDr>rErFbx0by0s r test_one_offrTIs )))A 1#sQC!!A a # #FB (IIIyyy)))4 5 5C %CsBsBrcgd}|D]>}|g}t||||g}t|||||g}t||?dS)N) rrNrPrrN)rrPrNr)rPrrNrPrPrNrPrPr()datarr" input_shapes2 input_shapes3s rtest_same_input_shapesraSs}   D 4 4w lE222 mU333u- mU3333 4 4rcddgdgddgdgddgdgddgdgddgdgddgdgddgdgddgdgd dgdgdd gdgddgdgddgdgdd gd gg }|D].\}}t||t|ddd |/dS) NrVrWrZr\r[rNrNrYrrrXr0r]r^r"r#s r(test_two_compatible_by_ones_input_shapesrfns t & 6" & 6" & 6" & 6" & 6" & 6" & 6" & 6" & 6" & 6" & 6" & 6" D)-BB$ nlN;;;l44R40.AAAABBrc4ddgdgddgdgddgdgddgdgddgdgddgdgddgdgddgdgddgdgddgdgddgdgdd gd gdd gd gdd gd gdd gd gddgd gdd gd gdd gd gdd gd gdd gd gg}|D].\}}t||t|ddd |/dS) NrrWr\r[rVrcrZrrdrXrYr0r]res r3test_two_compatible_by_prepending_ones_input_shapesrisM dT    fv $   fv fv dT    fv $   fv fv) D,)-BB$ nlN;;;l44R40.AAAABBrczddgddggdddgg}|D])}t|t|ddd*dS) NrWrOrPrOrWrWrkrNrPrlrOrPrPr0)r,)r^r"s r)test_incompatible_shapes_raise_valueerrorrrso t  I  D == (666(ddd);<<<<==rc gddgdgddgdgddgdgddgdgddgdgddgdgddgdgddgdgd dgdgdd gdgddgdgddgdgdd gd gd dgdgddgdgddgdgddgdgd dgdgddgdgddgdgddgdgd dgdgd dgdgd d gd gd dgdgd d gdgddgdgd dgdgdd gdgdd gd gddgdgd dgdgd d gd g}|D]\}}t|d |d d|d d|d t|d |d t|d |d dd |vr>>\!_l1otDDD \ ! ! a,q/5$ O O O a,q/4 N N N O Orc@tjddtjdgtjddtjdgtjddtjdgtjddtjdgtjddtjdgtjdd tjd gtjddtjdgtjdd tjddd gtjdd tjgd gd ggtjddtjdgtjddtjdgtjddtjdgtjddtjdgtjddtjdgtjddtjdgg}|D]&\}}}t ||}t||'dS)NrrhrVrNrWrPrnrOrMrZr0rmrrNrOrNrO)rrOrOrN)rOr)rrQronesr4r5rr)r^ input_arrayrr'actuals rtest_broadcast_to_succeedsr}s !dBHQKK( !dBHQKK( !dBHQKK( T271::& T271::& Y 2 23 1tRYq\\* 1vry||33Ar::; 1vrxIII(>??@ Q # Q # Q # T271::& &"'&//2 &"'&//2% D()---$ UHk5118V,,,,--rc ddgddgddgddgddgddgddgd dgdd gdd gdd gg }|D]2\}tj|ttfd 3dS)NrhrrVrWrnrkrxryrcr0)r0)r0rOc$tSN)r)arr target_shapesrz*test_broadcast_to_raises..s,sL*I*Ir)rrrr+)r^ orig_shaperrs @@rtest_broadcast_to_raisesrs r r r t t t   r u  D%)KK Lhz""j"I"I"I"I"IJJJJKKrcttdttddgdtttjddtttjdtjddtttjdgdzdtttjdgd zdtttjdgdzdgzdtjdgdztjd gdzzt t fd dS) NrrNrOrnrcrPrlrx drPctSr)r bad_argssrrz&test_broadcast_shape..% &6&Ar)rr rrzrr+rs@rtest_broadcast_shapersG!##R(((!1a&))4000!"'&//22F;;;!"'&//276??CCVLLL!RWV__$5$:.\s *:L*IrrctSrrrsrrz.test_broadcast_shapes_raises.._rr)rr+)r^rr"s @@rtest_broadcast_shapes_raisesrQs t  I''' F  DKK j"I"I"I"IJJJJv{dVb[(H*AAAABBBBBrctjdg}t|}tjdg}t|tjdgtjgd}t|dd|jzf}tjddg}t||tjgd}t|ddd|jzf}tjgdgdgdg}t||tjd d g}tjd | }tjdd |d<t|dd|jf}gdgdz}dgdzgdz}t|j|t||dt||dtjd d }t|dd|jf}t|j|jtjdgdgd}tjd | }t|dd|jf}t|j|jdtdD}tj|t }t|dd|jf}t|j|jt|gdz|dS)NrNrOrPrlrnrOrstridesrNrPrr)numi4)objOrkr.rrrlrV4)namesformatsc,g|]}t|Srr)ris rrz#test_as_strided..s'''!'''r) rrQr ritemsizer/emptyr4rranger)r a_viewr'dt expected_num expected_objrs rtest_as_stridedrbs $A ]]FxHvrx//000 A AJ/@ A A AFxAHvx((( A !Q^1D E E EFx|||\\\BCCHvx((( =,/ 0 0B R   AyAAeH !QZ A A AF LL>A%LF1H:aeZdZdZdZdZdZdZdZdZ dZ d S) TestSlidingWindowViewctjd}t|d}tjddgddgddgddgg}t ||dS)NrrOrrNrPrl)rr4rrQr)selfrarr_viewr's rtest_1dzTestSlidingWindowView.test_1dsgill&sA..8aVVVV%&& 8X.....rctjddddf\}}d|z|z}d}t||}tjddgddggddgdd ggddgd d gggddgd d ggdd gd d ggd d gd dgggg}t ||dS)NrPrlrC)rOrOrrN rO rogridrrQrrrjrrrr's rtest_2dzTestSlidingWindowView.test_2dsxBQB1dQh&sE2281vBx0 !1vBx0 !1vBx02!#Bx"b2 "Bx"b2 "Bx"b24566 8X.....rctjddddf\}}d|z|z}t|dd}tjgdgdgdgdgg}t ||dS) NrPrlrCr)rrCr)rNrr)rOrr)rPrrrrrrrrr's rtest_2d_with_axisz'TestSlidingWindowView.test_2d_with_axissxBQB1dQh&sAq118kkk)kk)kk)kk+,-- 8X.....rctjddddf\}}d|z|z}t|dd}tjgdgdgggdgd gggd gd ggg}t ||dS) NrPrlrCrmrcrwrMrCrrrrrrrrrrrrrs rtest_2d_repeated_axisz+TestSlidingWindowView.test_2d_repeated_axissxBQB1dQh&sFF;;8yyy(yy*++||+||-.+||+||-. /00 8X.....rctjddddf\}}d|z|z}d}t||}tjgdgdggdgdgggdgdggdgd gggdgd ggd gd ggg}t ||dS) NrlrCrmrwrrMrrr)r)rr!rrs rtest_2d_without_axisz*TestSlidingWindowView.test_2d_without_axissxBQB1dQh&sE228yyy,,,7(yy,,,79+||\\\:+||\\\:<+||\\\:+||\\\:< =>> 8X.....rcjtjddddf\}}d|z|z}tjtd5t |ddddn #1swxYwYtjtd5t |ddddn #1swxYwYtjtd5t |d d dddn #1swxYwYtjtd 5t |d ddddS#1swxYwYdS)NrlrCzcannot contain negative valuesmatch)r0rPz3must provide window_shape for all dimensions of `x`rVz2Must provide matching length window_shape and axisrprX)axisz.window shape cannot be larger than input array)rr)rrpytestraisesr+r)rrrrs r test_errorsz!TestSlidingWindowView.test_errorssSxBQB1dQh ]:-M N N N . . W - - - . . . . . . . . . . . . . . . ]KMMM + + T * * * + + + + + + + + + + + + + + +]JLLL = = YV < < < < = = = = = = = = = = = = = = =]FHHH - - V , , , - - - - - - - - - - - - - - - - - -sGAA #A BB#&B#C$$C(+C( D((D,/D,ctjd}t|dd}t|jj t jtd5d|d<dddn #1swxYwYt|dd }t|jjd|d <t|tj gd dS) NrrOF writeablez#assignment destination is read-onlyrrPrdTrX)rrPrOrPrl) rr4rrflagsrrrr+rrQ)rrviews rtest_writeablez$TestSlidingWindowView.test_writeables ill"3U;;;DJ(())) ];===  DJ               #3T::: $%%%T 3 9 9:::::sA..A25A2c Gddtj}tjd|}t t t |dd| t t t |dd|t t t |d| dS)NceZdZdS)1TestSlidingWindowView.test_subok..MyArrayN)__name__ __module__ __qualname__rrrMyArrayrs DrrrrOFsubokT)rndarrayr4rr isinstancer)rrrs r test_subokz TestSlidingWindowView.test_suboks     bj   ill((J239> @ @ @&((( ) ) )  .sATBBBGLLMMMJ23::GDDDEEEEErN) rrrrrrrrrrrrrrrrs/// / / //// / / / / / /---$ ; ; ; F F F F Frrctjd}t|d}t|jj t|d}t|jjd|d<t |tj|dd|j_t|d}t|d}t|jj dS)NrCFrTrP.)rrzr rrrr full_like)rrs ras_strided_writeablers '"++C cU + + +D  $ $%%% cT * * *D DJ !!!DIsBLa00111 CI cU + + +D cT * * *D  $ $%%%%%rceZdZdZdS)VerySimpleSubClasscNtj|ddi||S)NrT)rrQr)clsargskwargss r__new__zVerySimpleSubClass.__new__ s*x4T4V4499#>>>rN)rrrrrrrrrs#?????rrceZdZdZdZdS)SimpleSubClassc`tj|ddi||}d|_|S)NrTsimple)rrQrinfo)rrrrs rrzSimpleSubClass.__new__s5x4T4V4499#>>  rc8t|dddz|_dS)Nrrz finalized)getattrr)rrs r__array_finalize__z!SimpleSubClass.__array_finalize__sC,,|; rN)rrrrrrrrrr s2 <<<<>>???????????????!"455"" !F111I"""""""""""""""V\3T::::V\3T:::: ;%X..$Q113  F%)FL " / 6 6 6F111II   %HN H--IAv'/// EcGbhqkk5'::L HTNNE$\599ME6 EK6< '(((((s$,CC C 2DD D ctjgd}dt|fdtd|ffD]9\}}|D]1}|rt|jsJt|jrJ2:dS)NrMFTr)rrQr memoryviewreadonly)r r r r s rtest_writeable_memoryviewrks x ""H#(*:8*E*E"F#')9!X)F)F"G"I 7 7 g 7 7F 7"&))22222%f--66666 7 7 7rc$tjdt}tjdgdzt}t|d}t ||t |tjd\}}t ||dS)Nr r.rPrW)rrQobjectrrr rz)r{r'r|r s rtest_reference_typesr~s(3f---Kx 000H +t , ,Fx((( bgajj99IFAx(((((r)FF)-numpyrnumpy.core._rational_testsr numpy.testingrrrrr r numpy.lib.stride_tricksr r r rrrrr(r,rArGrKrTrarfrirrrur}rrrrrrrrrrrrrrrrrrs////// &&&;;;,000   4446BBB2BBB@ = = =1O1O1Oh---4KKK&CCC"&9&9&9RCCC"+(+(+(\cFcFcFcFcFcFcFcFL&&&$???????? <<<<<'<<<"#"#"#J,),),)^777&)))))r