`ǍJ&ddlZddlZddlZddlZddlmZddlmZddlZ ddl m Z m Z m Z mZddlmZmZmZddlmZddlZdZedd Zed d ZGd d ZGddZGddZGddZdZGddZGddZGddZ GddZ!dZ"dZ#dS)NStringIO)mock)assert_ assert_equal assert_raisesassert_raises_regex)_get_implementing_argsarray_function_dispatchverify_matching_signatures)picklectSNNotImplementedselfargskwargss s/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib64/python3.11/site-packages/numpy/core/tests/test_overrides.py_return_not_implementedrs c|fSrarrays rrsxrcdS Docstring.originalrrs rdispatched_one_argr"  :rc ||fSrrarray1array2s rrrs 0@rcdSrrr%s rdispatched_two_argr)r#rc2eZdZdZdZdZdZdZdZdS)TestGetImplementingArgsctjd}t|g}tt ||gt||g}tt ||gt|dg}tt ||gtd|g}tt ||gdS)Nnprr rlist)rrrs r test_ndarrayz$TestGetImplementingArgs.test_ndarray%s %ug..T$ZZ%)))%uen55T$ZZ%)))%uaj11T$ZZ%)))%q%j11T$ZZ%)))))rcGddtj}Gddtj}tjdtj}tjd|}tjd|}t ||g}t t |||gt ||g}t t |||gt ||g}t t |||gdS)NceZdZeZdS)DTestGetImplementingArgs.test_ndarray_subclasses..OverrideSubN__name__ __module__ __qualname__r__array_function__rrr OverrideSubr46!8   rr:ceZdZdS)FTestGetImplementingArgs.test_ndarray_subclasses..NoOverrideSubNr6r7r8rrr NoOverrideSubr=9 Drr?r-)r/ndarrayrviewr rr0)rr:r?r override_subno_override_subrs rtest_ndarray_subclassesz/TestGetImplementingArgs.test_ndarray_subclasses4sA 9 9 9 9 9"* 9 9 9     BJ      ,,x{{'' 44 (1++**=99%ul&;<<T$ZZ,!6777%uo&>??T$ZZ/5!9:::% ? +--T$ZZ,!@AAAAArcGdd}tjd}|}t||g}tt |||gt||g}tt |||gdS)NceZdZeZdS)BTestGetImplementingArgs.test_ndarray_and_duck_array..OtherNr5rrrOtherrHLr;rrIr-r.)rrIrotherrs rtest_ndarray_and_duck_arrayz3TestGetImplementingArgs.test_ndarray_and_duck_arrayJs 9 9 9 9 9 9 9 9 %uen55T$ZZ%000%uen55T$ZZ%00000rcfGddtj}Gdd}tjd}tjd|}|}t t |||g|||gt t |||g|||gdS)NceZdZeZdS)QTestGetImplementingArgs.test_ndarray_subclass_and_duck_array..OverrideSubNr5rrrr:rNZr;rr:ceZdZeZdS)KTestGetImplementingArgs.test_ndarray_subclass_and_duck_array..OtherNr5rrrrIrP]r;rrIr-)r/rArrBrr )rr:rIrsubarrayrJs r$test_ndarray_subclass_and_duck_arrayz.ANr5rrrArUkr;rrVceZdZeZdS)8TestGetImplementingArgs.test_many_duck_arrays..BNr5rrrBrXnr;rrYceZdZeZdS)8TestGetImplementingArgs.test_many_duck_arrays..CNr5rrrCr[qr;rr\ceZdZeZdS)8TestGetImplementingArgs.test_many_duck_arrays..DNr5rrrDr^tr;rr_r-)rr ) rrVrYr\r_abcds rtest_many_duck_arraysz-TestGetImplementingArgs.test_many_duck_arraysis 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 ACC ACC ACC ACC+QC00"555+QC001#666+QF33aS999+Q1I66<<<+Q1I66A???+QF33aV<<<+QF33aV<<<+Q1I66Aq BBB+Q1I66Aq BBBBBrcXttfdtdD}d|D}t|dd}t ||ddt t d5t|ddddS#1swxYwYdS)N)r9c^g|])}tdt|ztf*S)rV)typestrobject).0i namespaces r zETestGetImplementingArgs.test_too_many_duck_arrays..s1MMMacCFFlVIy99MMMr!c"g|] }| Srr)rjts rrmzETestGetImplementingArgs.test_too_many_duck_arrays..s,,,,,,r zdistinct argument types)dictrranger rr TypeError)rtypes relevant_argsactualrls @rtest_too_many_duck_arraysz1TestGetImplementingArgs.test_too_many_duck_arrayss,CDDD MMMM599MMM,,e,,, ' crc(:;;V]3B3/000 ,E F F 2 2 "= 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2sBB#&B#N) r6r7r8r1rErKrRrdrxrrrr+r+#st * * *BBB, 1 1 1///"CCC: 2 2 2 2 2rr+ceZdZdZdZdS)TestNDArrayArrayFunctioncGdd}Gddtj}Gddtj}tjdg}|}||}||}|t tjf|dfi }t |d |t tj|f||fi }t|tu|t tj|f||fi }t |d |t tj|f||fi }t |d ttd 5tj ||fdddn #1swxYwYtj ||f} tj ||f}t || |tj ||f}t || |dS) NceZdZeZdS)3TestNDArrayArrayFunction.test_method..OtherNr5rrrrIr}r;rrIceZdZdS);TestNDArrayArrayFunction.test_method..NoOverrideSubNr>rrrr?rr@rr?ceZdZeZdS)9TestNDArrayArrayFunction.test_method..OverrideSubNr5rrrr:rr;rr:r-g?funcrurrr!no implementation found) r/rArrBr9r)rrrr rt concatenate) rrIr?r:rrJrDrCresultexpecteds r test_methodz$TestNDArrayArrayFunction.test_methods 9 9 9 9 9 9 9 9     BJ    9 9 9 9 9"* 9 9 9! **]33zz+.. ))/A13 05r{2*GG VZ((())/A13U0C05u~b*JJ .()))))/A13]0K05/G13*55 VZ((())/A13[0I05|/D13*55 VZ((( ,E F F + + NE5> * * * + + + + + + + + + + + + + + +>5%.11 899VX]]=99::: 566VX]];7788888sF44F8;F8ctjd}d}ttd5||tjf|fiddddS#1swxYwYdS)Nr-c|Srrxs rrz:TestNDArrayArrayFunction.test_no_wrapper..r_implementationr)r/rr AttributeErrorr9rA)rrrs rtest_no_wrapperz(TestNDArrayArrayFunction.test_no_wrappers { 1B C C ? ?  $ $$rzm+0(2 % ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?s&A  A$'A$N)r6r7r8rrrrrrzrzs3-9-9-9^?????rrzc,eZdZdZdZdZdZdZdS)TestArrayFunctionDispatchctdtjdzD]E}tjtjt |}t |t uFdS)Nr-)protocol)rsr HIGHEST_PROTOCOLloadsdumpsr"r)rproto roundtrippeds r test_picklez%TestArrayFunctionDispatch.test_picklesj1f59:: 8 8E!<L!3eDDDFFL L$66 7 7 7 7 8 8rcttjdtjjdkrttjddSdS)Nr"rr )rr"r6sysflagsoptimize__doc__rs rtest_name_and_docstringz1TestArrayFunctionDispatch.test_name_and_docstringsI'02FGGG 9  ! ! +3\ B B B B B " !rc0Gdd}|}t|\}}}}}t||ut|tutt||ht||fkt|idS)NceZdZdZdS)9TestArrayFunctionDispatch.test_interface..MyArrayc|||||fSrrrrrurrs rr9zLTestArrayFunctionDispatch.test_interface..MyArray.__array_function__sdE488rNr6r7r8r9rrrMyArrayrs# 9 9 9 9 9rr)r"rrset)rrr!objrrurrs rtest_interfacez(TestArrayFunctionDispatch.test_interfaces 9 9 9 9 9 9 9 9799+=h+G+G(dE4x   **+++SZZ'+++ #$$$VR     rcGdd}|}ttd5t|ddddS#1swxYwYdS)NceZdZdZdS)?TestArrayFunctionDispatch.test_not_implemented..MyArrayctSrrrs rr9zRTestArrayFunctionDispatch.test_not_implemented..MyArray.__array_function__%%rNrrrrrr# & & & & &rrr)r rtr"rrrs rtest_not_implementedz.TestArrayFunctionDispatch.test_not_implementeds & & & & & & & &  ,E F F & & u % % % & & & & & & & & & & & & & & & & & &sA  AAcGdd}tjd}|}tj||}t|ddS)NceZdZdZdS)@TestArrayFunctionDispatch.test_where_dispatch..DuckArraycdS)N overriddenr)rufuncmethodinputsrs rr9zSTestArrayFunctionDispatch.test_where_dispatch..DuckArray.__array_function__s#|rNrrrr DuckArrayrs# $ $ $ $ $rrr-)wherer)r/rstdr)rrr duck_arrayrs rtest_where_dispatchz-TestArrayFunctionDispatch.test_where_dispatchsn $ $ $ $ $ $ $ $ Y[[ Z000V\*****rN)r6r7r8rrrrrrrrrrsb888 CCC ! ! !&&& + + + + +rrceZdZdZdZdS)TestVerifyMatchingSignaturescvtddtddddtddddtt5tdd dddn #1swxYwYtt5td dd dddn #1swxYwYtt5tdd dd dddn #1swxYwYtt5tddddddddS#1swxYwYdS)NcdSNrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures..sQrcdSrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures..s!rcdSrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures..s!rcdSrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures..sArr-cdSrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures..sqrcdSrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures..srcdSrr)r`s rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures.. rcdSrr)ras rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures.. sarcdSrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures.. rrcdSrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures.. s1rcdSrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures..sarcdSrrys rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures..srcdSrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures..s1rcdSrrrs rrzNTestVerifyMatchingSignatures.test_verify_matching_signatures..s!rrr-)r r RuntimeErrorrs rtest_verify_matching_signaturesz.strcdSrrrs rfzDTestVerifyMatchingSignatures.test_array_function_dispatch..fsrc|fSrrrs rrzKTestVerifyMatchingSignatures.test_array_function_dispatch..sA4rF)verifycdSrrrs rrzDTestVerifyMatchingSignatures.test_array_function_dispatch..f Dr)rrr )rrs rtest_array_function_dispatchz9TestVerifyMatchingSignatures.test_array_function_dispatchs < ( (   $^^ 4 4  5 4                 ! > > >   ? >   s ;??N)r6r7r8rrrrrrrs5 E E E     rrc<iGfddfd}|fS)z2Create a duck array type and implements functions.ceZdZfdZdS)._new_duck_type_and_implements..MyArraycz|vrtStfd|DstS||i|S)Nc38K|]}t|VdSr) issubclass)rjrprs r zT_new_duck_type_and_implements..MyArray.__array_function__..(s-==!z!W--======r)rall)rrrurrHANDLED_FUNCTIONSrs rr9zA_new_duck_type_and_implements..MyArray.__array_function__%s[,,,%%====u===== &%%*$T*D;F;; ;rNr)rrsrrr$s3 < < < < < < < .implements..decorator.s04 n -Krr)rrrs` r implementsz1_new_duck_type_and_implements..implements,s*      rr)rrrs @@r_new_duck_type_and_implementsr sg<<<<<<<<<<< Z  rc.eZdZdZdZdZejdgddZ dZ ejdd d gd Z d Z ejd dddddddgdZ dZdZdS)TestArrayFunctionImplementationct\}}|td}ttddtt|ddS)NcdS)Nmyarrayrrs r_z7TestArrayFunctionImplementation.test_one_arg.._;s9rr-r!r)rr"rrrrrs r test_one_argz,TestArrayFunctionImplementation.test_one_arg8sw;== & ' '   ( '  '**J777' 22I>>>>>rct\}}td dd d}||dd}t|ddt|dddt||dtt5||ddddn #1swxYwY||d }t|d tt5||d ddddS#1swxYwYdS)Nc|fSrrroptions rrzDTestArrayFunctionImplementation.test_optional_args..EsUHrdefaultc|Srrrs rfunc_with_optionzLTestArrayFunctionImplementation.test_optional_args..func_with_optionEsMrrc|Srr)r new_options rmy_array_func_with_optionzUTestArrayFunctionImplementation.test_optional_args..my_array_func_with_optionIs rr-extra)ryes)rnor)r)r)rr rrrt)rrrrrrs rtest_optional_argsz2TestArrayFunctionImplementation.test_optional_argsBs;== !D!D!D E E    F E  $ % %    & %  %%a(()444%%a888'BBB%%ggii00)<<< 9 % % 8 8  WWYYw 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8+*7799GGGVU### 9 % % 9 9  WWYY4 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9s$+C  CCD44D8;D8cft\}}tddd}tjd}t |||ut |jdttd5||ddddS#1swxYwYdS)Nc|fSrrrs rrzFTestArrayFunctionImplementation.test_not_implemented..^sxrmy)modulec|Srrrs rrzBTestArrayFunctionImplementation.test_not_implemented..func^sLrr-z%no implementation found for 'my.func') rr r/rrrr7r rt)rrrrrs rrz4TestArrayFunctionImplementation.test_not_implemented[s ;== !7!7 E E E   F E  U u$%%%T_d+++ BDD   DOOO                  sB&&B*-B*name)rmeanasarrayctt|} |n#t$r }|}Yd}~nd}~wwxYw|jd|dsJdS)Nrz())getattrr/rtr startswith)rr reexcs r#test_signature_error_message_simplezCTestArrayFunctionImplementation.test_signature_error_message_simplejsr4    DFFFF   CCCCCC x{%%kkk2222222s " 838cd}t|d} |dn#t$r }|}Yd}~nd}~wwxYw |dtd#t$rQ}|jddrt jd|j|jksJYd}~dSd}~wwxYw) NcdS)Nrrrrr _dispatcherzQTestArrayFunctionImplementation.test_signature_error_message.._dispatcherxs2rcdSrrrrrrzJTestArrayFunctionImplementation.test_signature_error_message..func{rr)bad_arg must failrrzBPython version is not using __qualname__ for TypeError formatting.)r rrtAssertionErrorrrpytestskip)rrrrexpected_exceptionrs rtest_signature_error_messagez.dispatchersKrcdSNrrrrrrzCTestArrayFunctionImplementation.test_dispatcher_error..funcs1rr)rtr r)rr"r'rrr&s @rtest_dispatcher_errorz5TestArrayFunctionImplementation.test_dispatcher_errors%        ! , ,   - ,  DFFF -- -   %<<<<<<<<<< sA A#AA#ct}t|t|jksJt|dd}t|jdd}||ksJdS)Nzat r)r)rhrreprsplit)rr repr_no_idrepr_no_id_impls rtest_propertiesz/TestArrayFunctionImplementation.test_propertiess!4yyC 4555555$ZZ%%e,,Q/ t344::5AA!D_,,,,,,rrcdSrr)rrs rrz(TestArrayFunctionImplementation.rrNcdSrrlikes rrz(TestArrayFunctionImplementation.sarrr4r`cdSrrr5s rrz(TestArrayFunctionImplementation.sarctjt5t|ddddS#1swxYwYdSr)rraisesrr )rrs rtest_bad_like_sigz1TestArrayFunctionImplementation.test_bad_like_sigs]< ( ( , , % # % %d + + + , , , , , , , , , , , , , , , , , ,s?AAc2ddd}t|}tjt5|dddn #1swxYwYtjt5|dddddS#1swxYwYdS)Nr3cdSrrr3s rrzCTestArrayFunctionImplementation.test_bad_like_passing..funcs Drr#)r rr8rt)rrfunc_with_likes rtest_bad_like_passingz5TestArrayFunctionImplementation.test_bad_like_passings0     3022488 ]9 % %   N                   ]9 % % % % N $ $ $ $ % % % % % % % % % % % % % % % % % %s# AAA2 B  BBc*g}tdD],}Gdd}||-d}t|d}tjt d5||ddddS#1swxYwYdS)N(ceZdZdZdS)ATestArrayFunctionImplementation.test_too_many_args..MyArrctSrrrs rr9zTTestArrayFunctionImplementation.test_too_many_args..MyArr.__array_function__s))rNrrrrMyArrrAs#*****rrCc|Srrrs r _dispatchzETestArrayFunctionImplementation.test_too_many_args.._dispatchsKrcdSrrrEs rrz@TestArrayFunctionImplementation.test_too_many_args..funcrrzmaximum numbermatch)rsappendr rr8rt)robjsrkrCrFrs rtest_too_many_argsz2TestArrayFunctionImplementation.test_too_many_argssr ! !A * * * * * * * * KK     ! + +   , + ]9,< = = =   D$KK                  s5BB B r)r6r7r8rrrrmark parametrizerr!r*r0r9r=rLrrrrr6s>???9992    [V%G%G%GHH33IH37776 [Ws,G&HII  JI "--- [V N   1 ' ' ' '&   ,,   , % % %rrceZdZdZdS)TestNDArrayMethodscGddtj}tjd|}t t |dt t |ddS)NceZdZdZdS)-TestNDArrayMethods.test_repr..MyArrayctSrrrrs rr9z@TestNDArrayMethods.test_repr..MyArray.__array_function__rrNrrrrrrSrrrr-z MyArray(1)1)r/rArrBrr,rhrs r test_reprzTestNDArrayMethods.test_reprs} & & & & &bj & & &   ))T%[[,///SZZ%%%%%rN)r6r7r8rWrrrrPrPs# & & & & &rrPc,eZdZdZdZdZdZdZdS)TestNumPyFunctionscttjjdttjjjdttjjjdttjjjddS)Nnumpyz numpy.charz numpy.fftz numpy.linalg) rr/sumr7charequalfftlinalgsolvers rtest_set_modulez"TestNumPyFunctions.test_set_modulesbRV&000RW]-|<<<RVZ*K888RY_/@@@@@rcntjtj}t d|jvdS)Naxis)inspect signaturer/r\r parameters)rrfs rtest_inspect_sumz#TestNumPyFunctions.test_inspect_sums0%bf-- )../////rct\}}|tjd}ttj|ddS)NcdS)Nrrrs rrz/TestNumPyFunctions.test_override_sum.._s5rr)rr/r\rrs rtest_override_sumz$TestNumPyFunctions.test_override_sums`;== BF        RVGGII&&.....rc^Gdd}|tj|}d|jj_t j|}t|d|jjt j|f|fi|jj dS)Nc eZdZdZdZdZdS)=TestNumPyFunctions.test_sum_on_mock_array..ArrayProxyc||_dSr)r")rr"s r__init__zFTestNumPyFunctions.test_sum_on_mock_array..ArrayProxy.__init__s " rc&|jj|i|Sr)r"r9rs rr9zPTestNumPyFunctions.test_sum_on_mock_array..ArrayProxy.__array_function__s4tz4dEfEEErc&|jj|i|Sr)r" __array__rs rrszGTestNumPyFunctions.test_sum_on_mock_array..ArrayProxy.__array__s+tz+T> FZME8R 1 1 1 //11111rcGddtj}tjd|}t tj|ddS)Nc$eZdZdZfdZxZS)FTestNumPyFunctions.test_sum_forwarding_implementation..MyArraycdS)Nsummedr)rrdouts rr\zJTestNumPyFunctions.test_sum_forwarding_implementation..MyArray.sumsxrcLt||||Sr)superr9)rrrurr __class__s rr9zYTestNumPyFunctions.test_sum_forwarding_implementation..MyArray.__array_function__s!ww11$tVLLLr)r6r7r8r\r9 __classcell__)rs@rrr~sP    M M M M M M M M Mrrr-r)r/rArrBrr\rs r"test_sum_forwarding_implementationz5TestNumPyFunctions.test_sum_forwarding_implementation sq M M M M Mbj M M M   ))RVE]]H-----rN)r6r7r8rbrhrkr{rrrrrYrYsbAAA 000///222( . . . . .rrYc$eZdZdZd4dZdZdZdgedRdgedRd gedRd ged Rd ged Rd geejd ddfddgRdgedRdgeddRdgedRdgedRdgedRdgede Rdgee de Rdgede d Rd!ged"Rd#ged$d%d&gd'RgZ e jd(e e jd)d*dgd+Ze jd(e e jd,d-d-gd.gd/Ze jd)d*dgd0Zd1Ze jd(e d2Zd3S)5 TestArrayLikecVGdd}||_Gdd}||_dS)NceZdZddZdZdS)+TestArrayLike.setup_method..MyArrayNc||_dSrfunctionrrs rrpz4TestArrayLike.setup_method..MyArray.__init__ ( rc|tt|jusJ t||j}n#t$r tcYSwxYw||i|Sr)rr/r6rr)rrrurrmy_funcs rr9z>TestArrayLike.setup_method..MyArray.__array_function__"sswr4=999999*%dDM::GG%***))))*w////s6A  A r)r6r7r8rpr9rrrrrs7 ) ) ) ) 0 0 0 0 0rrceZdZddZdS):TestArrayLike.setup_method..MyNoArrayFunctionArrayNc||_dSrrrs rrpzCTestArrayLike.setup_method..MyNoArrayFunctionArray.__init__-rrr)r6r7r8rprrrMyNoArrayFunctionArrayr,s( ) ) ) ) ) )rr)rr)rrrs r setup_methodzTestArrayLike.setup_methodsk 0 0 0 0 0 0 0 0  ) ) ) ) ) ) ) )'=###rFc<fd}t|dS)Nc\d|vsJr d|vrttS)Nr4 value_error) ValueErrorr)rr arr_classenable_value_errorr s r _definitionz-TestArrayLike.add_method.._definition3sF''''! !mv&=&=  9WY5566 6r)setattr)rr rrrs ``` r add_methodzTestArrayLike.add_method2sB 7 7 7 7 7 7 7  4-----rc ||fSrrrUs r func_argszTestArrayLike.func_args=s V|rc|d|j|j}ttd5t jd|}ddddS#1swxYwYdS)Nrrr-r3)rrrr rtr/r)rref array_likes rtest_array_like_not_implementedz-TestArrayLike.test_array_like_not_implemented@s ...l  "" ,E F F 1 1AC000J 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1s A..A25A2rrr asanyarrayascontiguousarray)rrasfortranarrayrequirerrrVF) requirementsemptyfulloneszerosarange frombuffers)dtypefromiter fromstringz1,2,)rseploadtxtc tdS)Nz0 1 2 3rrrrrzTestArrayLike.Xsx ';';r genfromtxtc tdS)Nz1,2.1rrrrrzTestArrayLike.Ys(7*;*;r)inti8)floatf8)r delimiterzfunction, args, kwargs numpy_refTc|d|j|||jtt|}t|j|}|durtjd}n|j}t d|D}||i|d|i} |durt | tjusJt d|D} || i|} |dkr*| d| dt| | dSt | |jusJ| j |usJdS)NrTr-c3LK|]}t|r |n|V dSrcallablerjr`s rrz0TestArrayLike.test_array_like..k7BB!3!!###!BBBBBBrr4c3LK|]}t|r |n|V dSrrrs rrz0TestArrayLike.test_array_like..qs7DD!8A;;5AACCCADDDDDDrr) rrrr/rtuplergrAfillrr) rrrrrnp_funcrr like_argsrnp_argsnp_arrs rtest_array_likezTestArrayLike.test_array_like^s ... $,///"h''$,11   (1++CC,$$&&CBBTBBBBB Wi<6<<<<<    ##rz1111DDtDDDDDGWg000F7"" A""" V , , , , , ##t|3333&'111111rrr-rc|d|j|||jtt|}|dkr|j}t d|D}t td5||i|d|iddddS#1swxYwYdS)Nrrc3LK|]}t|r |n|V dSrrrs rrz.rrz9The `like` argument must be an array-like that implementsr4)rrrr/rrr rt)rrrrrrrs rtest_no_array_function_likez)TestArrayLike.test_no_array_function_like~s !<=== $"=>>>"h'' * * *-3355CBBTBBBBB KMM 4 4 GY 3& 3 3s 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4s B33B7:B7c |d|j|d|j|durtjd}n|j}tjd}t j5}tj |d}| |tj ||}|durTt|tj usJtj ||}t||t||n-t||jusJ|j|jj usJddddS#1swxYwYdS)NrfromfileTr-testfiler3)rrr/rrandomtempfileTemporaryDirectoryospathjointofilerrgrArr)rrrdatatmpdirfnamernp_ress rtest_array_like_fromfilez&TestArrayLike.test_array_like_fromfiles ...  DL111   (1++CC,$$&&Cy""  ( * * DfGLL44E KK   U555JD  J''2:5555U555VT***Z0000J''4<7777!*dl.CCCCC D D D D D D D D D D D D D D D D D DsCE99E=E=c|d|jd|j}tt5t jdd|ddddS#1swxYwYdS)NrT)rr-)rr4)rrrrrtr/)rrs rtest_exception_handlingz%TestArrayLike.test_exception_handlings $GGGl  "" 9 % % 4 4 HQDs 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4s A00A47A4c|d|j|||jtt|}t d|D}t d|D}||i|ddi}||i|}|dkr*|d|dt ||dS)Nrc3LK|]}t|r |n|V dSrrrs rrz2TestArrayLike.test_like_as_none..rrc3LK|]}t|r |n|V dSrrrs rrz2TestArrayLike.test_like_as_none..s7FFAXa[[7aacccaFFFFFFrr4rr-)rrrr/rrr) rrrrrr like_args_exprrs rtest_like_as_nonezTestArrayLike.test_like_as_nones ... $,///"h''BBTBBBBB FFFFFFF Wi=6===== 7M4V44 w   OOA    MM!   Z*****rN)F)r6r7r8rrrrr/rreshaperrs _array_testsrrMrNrrrrrrrrrrs]===* . . . .111 #99T??## %YYt__%% ( $(( 1yy0011 .IIf--..  9YY  ! 4 4Q : :<-0#J888 9 9 #99T??## %))D!$$%% "))D//"" #99T??## !IIaLL!! : +S999:: 5iia44455 = %s<<<== =YY;;<<==  2 ";";)6(H,/111 2 2#L, [5|DD [[4-882298ED2< [5|DD [UQ-E$FGG 4 4HGED 4 [[4-88DD98D2444 [5|DD++ED+++rrcttjtjjjusJGdd}|}|dgdksJ|dksJtj td5| dddn #1swxYwYtj ||}|dksJtj d|}|dgdksJtj |}tj td5|ddddS#1swxYwYdS)NcbeZdZdZeejZejZe ejZ dS)#test_function_like..MyClassc*tjdSr))r/rrs rrsz-test_function_like..MyClass.__array__s9Q<< rN) r6r7r8rs staticmethodr/rfunc1func2 classmethodfunc3rrrMyClassrsH    RW%% BG$$rr r-zunsupported operand typerH) rgr/rcore_multiarray_umath_ArrayFunctionDispatcherrrrr8rtr__get__)rmbounds rtest_function_likers ==BG5N N N N N%%%%%%%%  A 77B4==B     7799>>>> y(B C C C   GOOAw ' 'E 577a<<<< GOOD' * *E 5";;"     GOOG $ $E y(B C C C s$B;;B?B?" E::E>E>cddlddlfd}|tj}tjddg|ddgksJdS)Nrc|j|j|j|j|j}||}|j|_|S)N)r argdefsclosure) FunctionType__code__ __globals__r6 __defaults__ __closure__update_wrapper__kwdefaults__)rg functoolsrus r _copy_funcz1test_scipy_trapz_support_shim.._copy_funcsY   qz1=qz$%NAM  K K  $ $Q * *+rr-r)rur r/trapz)r  trapezoidr rus @@rtest_scipy_trapz_support_shimrs LLL 28$$I 8QF  yy!Q00 0 0 0 0 0 0r)$rerrriorunittestrr[r/ numpy.testingrrrr numpy.core.overridesr r r numpy.compatr rrr"r)r+rzrrrrrPrYrrrrrrrs ????????????             //0010 @@AABA l2l2l2l2l2l2l2l2^9?9?9?9?9?9?9?9?x1+1+1+1+1+1+1+1+h<!!!,[[[[[[[[~ & & & & & & & &5.5.5.5.5.5.5.5.pf+f+f+f+f+f+f+f+R@11111r