(@,J ddlZddlmZmZddlZddlZddlmZm Z m Z m Z m Z m Z ddlmZddlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ dZ!dZ"d Z#d Z$d Z%d Z&d Z'dZ(dZ)ej*+dgdej*+dgddZ,dZ-ej*+de.de.dde de ddggdZ/dZ0dS)N) assert_raisessuppress_warnings)onesasarrayreshape result_typeallequal)Array) _all_dtypes_boolean_dtypes_real_floating_dtypes_floating_dtypes_complex_floating_dtypes_integer_dtypes_integer_or_boolean_dtypes_real_numeric_dtypes_numeric_dtypesint8int16int32int64uint64boolc tdttfdttfdttfdttfdttfdttfdttfdttfd ttfd ttfd ttfd ttfd ttfdttfdttfdttfdttfdttfdttfdttfdttfdtddggttfdttfdttfdttfdttfdttfdttfdttfd ttfd!ttfd"dS)#NcddSNras{/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib64/python3.11/site-packages/numpy/array_api/tests/test_array_object.pyz%test_validate_index..,saecddSNr"r#sr%r&z%test_validate_index..-safr'cdddS)Nrr"r#sr%r&z%test_validate_index...sa2hr'cdddS)Nr,r"r#sr%r&z%test_validate_index../saBir'cddSr!r"r#sr%r&z%test_validate_index..0saer'cddSr)r"r#sr%r&z%test_validate_index..1safr'cdddS)Nrr,r"r#sr%r&z%test_validate_index..2sa2hr'cdddS)Nr*r,r"r#sr%r&z%test_validate_index..3saBir'cdddfSN.r"r#sr%r&z%test_validate_index..5saBQBir'cdddfSN.r.r"r#sr%r&z%test_validate_index..6saCRCjr'cddddfSN.r5r,r"r#sr%r&z%test_validate_index..7saEQrE lr'cddddfS)N.ir,r"r#sr%r&z%test_validate_index..8saFRF mr'cdddfSr4r"r#sr%r&z%test_validate_index..9saABBir'cdddfSr7r"r#sr%r&z%test_validate_index..:saBCCjr'cddddfSr9r"r#sr%r&z%test_validate_index..;saAErE lr'cddddfS)N.r.r,r"r#sr%r&z%test_validate_index..<saBFF mr'c4dddfdkdfSNrr"r#sr%r&z%test_validate_index..?sa!!!A# ! nr'c4dddfdkdfS)NrrA.r"r#sr%r&z%test_validate_index..@s a!!!A# # &6r'c,dddkfS)N.rrAr"r#sr%r&z%test_validate_index..AsaQqT1W or'cgdS)NTTTr"r#sr%r&z%test_validate_index..Bsa(:(:(:&;r'cdS)N)rEr"r#sr%r&z%test_validate_index..Cs a(;&<r'rrAcSNr"r$idxsr%r&z%test_validate_index..Gs afr'cfSrHr"rIsr%r&z%test_validate_index..Hs agr'cddgSr@r"r#sr%r&z%test_validate_index..IaAir'cdS)N)rrArOr"r#sr%r&z%test_validate_index..Js a&7r'cddgSr@r"r#sr%r&z%test_validate_index..KrMr'c>tjddggSr@)nparrayr#sr%r&z%test_validate_index..Lsa1a&(:(:&;r'cdS)Nr"r"r#sr%r&z%test_validate_index..O aer'cdS)Nrr"r#sr%r&z%test_validate_index..PrUr'cdSNrr"r#sr%r&z%test_validate_index..Qs adr'cddSrHr"r#sr%r&z%test_validate_index..Rsadr')rr IndexErrorrrIs@@r%test_validate_indexr\s4 V A*mmmm,,,*nnnn---*....///*////000*mmmm,,,*nnnn---*....///*////000*////000*0000111*2222333*3333444*////000*0000111*2222333*3333444*4444555*6666777*5555666*;;;;<<<*<<<<=== Aq6(  C*nnnnn---*ooooo...*////000*7777888*////000*;;;;<<<*mmmm,,,*mmmm,,,*llll+++*llll+++++r'c  iddddddddd dd dd dd d dddddddddddddd ddddddi}d td}|D]\ } g} dvr!d ddz}d ddz}|||gz }dd d!|d"fD] |D]ۊ  D]ъ |dksz|dkr jtvsf|dkr jtvsR|d kr jt vs>|dkr jt vs*|d#kr jtvs|dkrC jtvr4 jtvrt tks jt vrt tks\ jtvrt ttfvs1 jtvrt tttfvr jt vr" |krtt fd$[t#5}|t&d%t)  dddn #1swxYwYtt* fd&|D]  D] D]يjt,kr!jt.t0t2t4fvsىjt,kr!jt.t0t2t4fvsjt vrjt vsjt vrjt vspjtvrjtvsTjtvrjtvs8jtvrjtvsjtvr*jtvrtt* fd') dr?t9jjjkrtt* fd(}|dkr9jtvrjtvsjtvrjtvs|dkrjtvrjtvs|dkrjtvrjtvs|d krjt vrjt vs|dkr8jt vrjt vs`jtvrjtvsD|d#krjtvrjtvs"|dkr7jtvr)jtvrt) tt* fd)ېݐddddd*}|D]l\ } D]\ |dkr jtvs|dkr' jt vrt) Ctt* fd+]m fd,}d-D] d.D] |D] t ttfvr jtvs&t tkr) jt vrtt: fd/ntt* fd0|D]|D]jt,kr!jt.t0t2t4fvsjt,kr!jt.t0t2t4fvsjt vrjt vspjt vrjt vsTjtvrjtvs8jtvrjtvsjtvsjtvrMtt*fd1tt*fd2tt*fd3>jd4ks'jd4ksjdjd5krtt:fd6tt:fd7t9jjjkrtt*fd8tt:fd9 t9jjjkrtt*fd:cjd5jdkrtt:fd;!dS)._array_valsls  & &A!1%%% % % % %  * *A%q))) ) ) ) )! ( (A#Q''' ' ' ' ' ( (r'gꌠ9Y>)F)rbrlrfrdrire__rr__irArwy?Fbooleanc6tSrHgetattr_opr$ssr%r&z test_operators..CQRASASr'z"invalid value encountered in powerc6tSrHr~rsr%r&z test_operators..sC9K9Kr'c6tSrHr~rxysr%r&z test_operators..rr'c6tSrHr~rsr%r&z test_operators..rr'c6tSrHr~rsr%r&z test_operators..rr')__abs__ __invert____neg____pos__c4tSrHr~)r$opsr%r&z test_operators..sB1A1Ar'c3KD]}|VtD];}td|Vtd|Vtd|V._matmul_array_valss  AGGGG ( (AvQ''' ' ' 'vQ''' ' ' 'vQ''' ' ' ' ' ( (r') __matmul__ __rmatmul__ __imatmul__)rArwFc6tSrHr~rsr%r&z test_operators..sogaooa6H6Hr'c6tSrHr~rsr%r&z test_operators..s_WQ__Q5G5Gr'c.SrHrrrsr%r&z test_operators..sar'c.SrHrrsr%r&z test_operators..q1A1Ar'c.SrHrrsr%r&z test_operators..rr'r"rc.SrHrrsr%r&z test_operators..s!,,q//r'c.SrHrrsr%r&z test_operators..s!--2B2Br'c.SrHrrsr%r&z test_operators..Q]]15E5Er'c.SrHrrsr%r&z test_operators..ammA6F6Fr'c.SrHrrsr%r&z test_operators.. rr'c.SrHrrsr%r&z test_operators.. rr')"intitemsrvrrrrrrtyperrfloatrcomplexr OverflowErrorrfilterRuntimeWarningr TypeErrorrrrrr startswithr ValueErrorshaperrr)binary_op_dtypesBIG_INTdtypesopsropiopsupunary_op_dtypesrryrr$rrrrs @@@@@@@r%test_operatorsrTs 9' %   .  .  . i . > 9 % & 9 i 9!" z#$ '%*((($iiG&,,..PUPU Fd Q Q Q"QRR&.C"QRR&.C C: CS"gu-J UJ UAI UI U$"M"MA 5"i//AG4N4N"n44DX9X9X"i//AG4N4N"&:::qwJd?d?d"i//AG4N4N"j00QW@P5P5PW77DGGtOO !? : :tAww#~~ !+@ @ @T!WWQVX[P\E\E\ !+C C CQT[]bdgShHhHh7o55!w,,)-9S9S9S9S9S9STTTT"3!4!43 # >+O!Q!Q!Q /3 2 2 2 333333333333333 &i1K1K1K1K1K1KLLLL#U#UC([]]"U"U!,!U!UA!"6 1 1ag$uV[A\6\6\#$7f#4#4T5RWY^D_9_9_#$7o#=#=!'Q`B`B`#$7o#=#=!'Q`B`B`#$7o#=#=!'Q`B`B`#$7o#=#=!'Q`B`B`#$7.>#>#>17RbCbCb#$7.>#>#>17RbCbCb -i9S9S9S9S9S9S T T T T!$u 5 5U$/$A$AQW$L$L -i9S9S9S9S9S9S T T T T"(E//qw/7Q7QVWV]apVpVp9:O9S9SXYX_crXrXr$*n$<$<L`A`A`efelqEfEfE$*i$7$7AG.sT'5'*:*:%;%;r'c<ttdgSrY)rrr"r'r%r&z0test_python_scalar_construtors..sS!%6%6r'c<ttdgS)Nr)rrr"r'r%r&z0test_python_scalar_construtors.. sU7C5>>%:%:r'c<ttdgS)Nr)rrr"r'r%r&z0test_python_scalar_construtors..!sWWbT]]%;%;r'cFtjtdgSrY)operatorindexrr"r'r%r&z0test_python_scalar_construtors.."sX^GQCLL%A%Ar'c"tSrH)rcsr%r&z0test_python_scalar_construtors..)s SVVr'c"tSrH)rrsr%r&z0test_python_scalar_construtors..-s U1XXr'c,tjSrHrr)bsr%r&z0test_python_scalar_construtors..4X^A%6%6r'c,tjSrHr)fsr%r&z0test_python_scalar_construtors..5rr'c,tjSrHrrsr%r&z0test_python_scalar_construtors..6rr') rrrrrrrrr)irrrs @@@r%test_python_scalar_construtorsrsA A A A 77e     q66Q;;;; 88s???? >!   ! ! ! !);;<<<)66777)::;;;);;<<<)AABBB 77d1gg < < < <a < < < !   ! ! ! !)6666777)6666777)666677777r'c`tdjdksJttdsJt t fdtttdsJt t fddS)Nrcpuc.dS)Ngpu) to_devicer#sr%r&z&test_device_property..>sakk%&8&8r'devicec&tdS)Nrr)rr#sr%r&z&test_device_property..Asga&>&>&>r')rrr r rrrrr#s@r%test_device_propertyr9s V A 8u     uQ[[''++ , ,,, ,*8888999 uWQu---q11 2 222 2*>>>>?????r'ctdtd}ttfdt|jt sJ|jjdksJtjt sJjjdksJt|jt sJ|jjdksJdS)N)rArrrrcjSrH)Tr#sr%r&z'test_array_properties..Fs acr')rr)rArr)rrr isinstancerr rmT)rr$s @r%test_array_propertiesrCs YA V A*kkkk*** ac5 ! !!! ! 39     adE " """ " 4: " " " " adE " """ " 4:      r'c htdt}tj||jusJtj|tj}tjtj|tjdtjsJ|jtjksJdS)Nrru) rrrRr_arrayfloat64r r rv)r$rs r%test___array__rPs V5!!!A :a==AH $ $ $ $ 1BJ'''A 6"(1bgfBJ???@@ A AAA A 7bj r'cVtd}|dddf}|jdksJdS)Nr5)rAr5)rr)r$ indexed_as r%test_allow_newaxisrWs7 QA$' I ?f $ $ $ $ $ $r'ctd}tjt5|dddddS#1swxYwYdS)Nrrr)Nrrrpytestraisesr[r#s r%(test_disallow_flat_indexing_with_newaxisr\s YA z " " *  ?AActd}tjt5|dt dfddddS#1swxYwYdS)NrT)rrrr[rr#s r%test_disallow_mask_with_newaxisras YA z " " $ sAAAr)r")r5rr)stringFTct|}tjt5||ddddS#1swxYwYdSrHr)rrr$s r%test_error_on_invalid_indexrfs U A z " " %rcNtd}|tddS)Nr"T)rrr#s r%!test_mask_0d_array_without_errorsrms$ RAgdmmr'rr5TrActd}tjt5|d|fdddn #1swxYwYtjt5||dfddddS#1swxYwYdS)Nr.r)rr$s r%)test_error_on_invalid_index_with_ellipsisrqs YA z " " #q&  z " " !S& s# AAA$ A<<BBc$tdt}||jdksJtdt}tdt}tjt 5||ddddS#1swxYwYdS)aq Indexing operations convert array keys before indexing the internal array Fails when array_api array keys are not converted into NumPy-proper arrays in __getitem__(). This is achieved by passing array_api arrays with 0-sized dimensions, which NumPy-proper treats erroneously - not sure why! TODO: Find and use appropriate __setitem__() case. )rrrurWN)rbool_rrrr[)r$keys r%!test_array_keys_use_private_arrayr{s V5!!!A Q4:     TA vU # # #C z " " #s/ BB  B )1r numpy.testingrrnumpyrRrrrrr r r _array_objectr _dtypesr rrrrrrrrrrrrrrrr\rrrrrrrrmark parametrizerrslicerrr"r'r%rs:::::::: >>>>>>>>>>>>>>>>!!!!!!&6,6,6,p{%{%{%|$8$8$8N@@@    !!!%%%   "7"7"788"9"9"9::;:98 %%((EE!QKKA @r'