ddlZddlZddlZddlZddlmZddlmZddlmZddlm Z d)dZ d)d Z Gd d e Z d Zd Zd)dZd)dZGdde ZGddeZGddeZGddeZGddeZGddeZejZdZdZdZdZd Zd)d!Zed"Z d)d#Z!d$Z"d)d%Z#d)d&Z$d)d'Z%d(Z&dS)*N)config)util) decorator)inspect_getfullargspeccvt}t||}|j||SN)compound _as_predicateskipsadd predicatereasonrulepreds /srv/buildsys-work-dir/castor/build_node/builder-2/WGSG1/unpkd_srcs/cloudlinux-venv-1.0.6/venv/lib/python3.11/site-packages/sqlalchemy/testing/exclusions.pyskip_ifr3 ::D F + +DJNN4 Kcvt}t||}|j||Sr )r r failsrrs rfails_ifrrrceZdZdZdZdZdZdZedZ dZ dZ d Z d Z d Zejd Zd ZddZddZdS)r cxt|_t|_t|_dSr )setrr tagsselfs r__init__zcompound.__init__#s'UU UU EE rc,||Sr )rr others r__add__zcompound.__add__(sxxrct}|j|j|j|j|j|j|Sr )r r updaterr)r rs ras_skipszcompound.as_skips+sXzz $*%%% $*%%% ### rct}|j|j|j|j|j|j|D]_}|j|j|j|j|j|j`|Sr r rr'r r)r otherscopyr$s rrz compound.add2szz $*%%% $*%%% ### ) )E J  ek * * * J  ek * * * I  UZ ( ( ( ( rct}|jd|jD|jd|jD|j|j|S)Nc34K|]}t|VdSr  NotPredicate).0fails r z compound.not_..?*DD,t,,DDDDDDrc34K|]}t|VdSr r/)r1skips rr3z compound.not_..@r4rr*)r r,s rnot_z compound.not_=svzz DDDDDDDD DDDDDDDD ### rc@|tjSr )enabled_for_configr_currentrs renabledzcompound.enabledDs&&v777rcf|j|jD]}||rdSdS)NFTr unionr)r rrs rr9zcompound.enabled_for_configHsH))$*55  Iy   uu 4rcZfd|j|jDS)NcPg|]"}| |#S _as_string)r1rrs r z4compound.matching_config_reasons..PsG   y     ( (   rr=r rs `rmatching_config_reasonsz compound.matching_config_reasonsOs@    !Z--dj99    rct|j| o| p|j|Sr )boolr intersection)r include_tags exclude_tagss r include_testzcompound.include_testVsK &&|44 4 K!!ITY%;%;L%I%I   rc|j|j|j|j|j|jdSr )r r'rrr#s r_extendzcompound._extend\sP %+&&& %+&&& $$$$$rct|dr|j|Stfd}||}|_|S)N_sa_exclusion_extendc<jtj|g|Ri|Sr )_dorr:)fnargskwr s rdecoratez#compound.__call__..decoratefs)48FOR=$==="== =r)hasattrrPrNr)r rSrV decorateds` r__call__zcompound.__call__asr 2- . .   # + +D 1 1 1I  > > > >  >HRLL )- &rc#LKt}|j|j|j dV|t jdS#t$r+}| t j|Yd}~dSd}~wwxYwr ) r rr'r r>_expect_successrr: Exception_expect_failure)r all_failsexs rfail_ifzcompound.fail_ifnsJJ tz// ;;<<< 7 EEE  % %fo 6 6 6 6 6 ; ; ;  % %for : : : : : : : : : ;s A.. B#8 BB#cd|jD]M}||r@dtjd||}tj|N ||i|}|||j|S#t$r(}||||jYd}~dSd}~wwxYw)N'z' : )name) r rget_current_test_namerC skip_testr[__name__r\r]) r cfgrSrTrUr6msg return_valuer_s rrRz compound._dozsJ & &DtCyy & &02222OOC((( %%% 2t?r??L  2; 7 7 7   < < <  br{ ; ; ; ; ; ; ; ; ;  >DtF|| 9%$R[[///IIFF WWF 44!8!8!8!8&&&B   K3<>>!+< = = = = = =rc |jsdS|jD]G}|r:td|ddfd|jDdHdS)NzUnexpected success for 'z' ( and c3BK|]}|VdSr rB)r1r2rs rr3z+compound._expect_success..s@%%8>>>"rr c"t|gSr )r)tagnames r requires_tagrs  ??rcVt}|j||Sr )r rr')tagnamescomps rrrs& ::DIX KrcZt|}tt||Sr )r rr0rrs ronly_ifrs'i((I < **F 3 33rcZt|}tt||Sr )r rr0rs r succeeds_ifrs'i((I L++V 4 44rc6eZdZeddZddZddZdS) PredicateNclt|tr|j|St|tr|r|j||_|St|t tfrtfd|D|St|tr t|St|tj rtjd|}|std|z|d}|d}|dr?td|ddDnd}t|||| Stj|rt'||SJd |z) Nc:g|]}|SrA) as_predicate)r1rclss rrDz*Predicate.as_predicate..s'>>>D!!$''>>>rz.([\+\w]+)\s*(?:(>=|==|!=|<=|<|>)\s*([\d\.]+))?z(Couldn't locate DB name in predicate: %rrrc34K|]}t|VdSr )int)r1ds rr3z)Predicate.as_predicate..s(AAc!ffAAAAAAr.) descriptionFzunknown predicate type: %s) isinstancer rr9rrlistr OrPredicatetuple SpecPredicater string_typesrematch ValueErrorgroupsplitcallableLambdaPredicate)rrrtokensdbopspecs` rrzPredicate.as_predicates i * * C##I$@+NN N  9 - - C 4y4<(3 %   D#; / / C>>>>I>>>   5 ) ) C ), ,  4#4 5 5 CXA9F  >JaBaB<<??AAfll1oo&;&;C&@&@AAAAAA  !R;GGG G ]9 % % C"9k:: : B6B B B5rFc||}|r| }|j|r|jjnd|r|jjnd|rdnd|rdnddzS)Nz z zdoesn't supportz does support)driverdatabasedoesnt_support does_support)rrurlget_driver_nameget_backend_name)r rnegatebool_s r_format_descriptionzPredicate._format_descriptionsV   JEfim33555! 66888 38L//n.3JNN9J # #  rctr )NotImplementedErrorr rrs rrCzPredicate._as_strings!###rr F)NF)rfrr classmethodrrrCrArrrrs_!C!C!C[!CF     $$$$$$rrc$eZdZddZdZddZdS)BooleanPredicateNc,||_|pd|z|_dS)Nz boolean %s)valuer)r rrs rr!zBooleanPredicate.__init__s! &>,*>rc|jSr )rrEs rrYzBooleanPredicate.__call__s zrFc0|||S)Nrrrs rrCzBooleanPredicate._as_strings''v'>>>rr rrfrrr!rYrCrArrrrsK??????????rrc eZdZddZejejejejej ej ej ddZ dZ d dZdS) rNc>||_||_||_||_dSr )rrrr)r rrrrs rr!zSpecPredicate.__init__s% &rc2||dko ||dkS)NrrrA)valpairs rzSpecPredicate.sSDG^%FtAwr)<>z==z!=z<=z>=inbetweencr|j}d|jvr|jd\}}n |jd}}|r |j|krdS| |j|krdS|jZ| Jdt |}t |jdr|jp|j|j}|||jSdS)N+Fz%DBAPI version specs not supported yetrYT) rrrcrr_server_versionrW_opsr)r renginedialectrversionopers rrYzSpecPredicate.__call__s $'>>"gmmC00OGVV"gtVG  v{g--5  &-6"9"95 7 >>#J>>>%f--G,,8NDIdg.Bs ggiirrAzcustom function)rrrTrUr__doc__)r rrrTrUrs ` rr!zLambdaPredicate.__init__?s%g..Aw #////DLL"DLJB (  1*D    _ 1&D   0D   rc,||Sr )rrEs rrYzLambdaPredicate.__call__Ns||F###rFc,||Sr rrs rrCzLambdaPredicate._as_stringQs''///rrrrrArrrr>sK 1 1 1 1$$$000000rrc$eZdZddZdZddZdS)r0Nc"||_||_dSr )rr)r rrs rr!zNotPredicate.__init__Vs"&rc.|| Sr )rrEs rrYzNotPredicate.__call__Zs>>&))))rFcv|jr||| S|j|| Sr )rrrrCrs rrCzNotPredicate._as_string]s@   A++FJ?? ?>,,VZ@@ @rr rrrArrr0r0UsQ''''***AAAAAArr0c2eZdZddZdZd dZdZd dZdS) rNc"||_||_dSr ) predicatesr)r rrs rr!zOrPredicate.__init__es$&rc6|jD]}||rdSdS)NTF)r)r rrs rrYzOrPredicate.__call__is4O  DtF|| tt urFcbrd}nd}|fd|jDS)Nrzz or c3FK|]}|VdS)rNrB)r1prrs rr3z(OrPredicate._eval_str..tsD  45ALLL / /      r)r~r)r rr conjunctions `` r _eval_strzOrPredicate._eval_stros]  !!KK K     9=      rcn|jd||zS||dS)NzNot Tr)rrrrEs r _negation_strzOrPredicate._negation_strxs:   'D44V<<< <>>&>66 6rc|r||S|j||S||Sr )rrrrrs rrCzOrPredicate._as_string~sM  .%%f-- -+//777~~f---rr r)rfrrr!rYrrrCrArrrrdsn''''     777 ......rrcJt|||tjSr )rrr:)rrrs r _is_excludedrs &=R & &v 7 77rc|}t|jdd}|d}||S)z#Return a server_version_info tuple.server_version_infoNrA)connectgetattrrclose)rconnrs rrrsC >>  Dfn&;TBBGJJLLL Nrc4td|DS)NcBg|]}t|SrArrr1rs rrDzdb_spec..s&AAAr ..r22AAArrdbss rdb_specrs AASAAA B BBrc<ttddS)NFzmark as executerrrArropenr s #E+<== > >>rc<ttddS)NTzmarked as skipr rArrclosedr s #D*:;; < <.s&#M#M#M2I$:$:2$>$>#M#M#Mr)rrrs rfails_on_everything_exceptrs' {#M#M#M#M#MNN O OOrc"t||Sr )rrs rr6r6s 2v  rcxttfdtj|DS)NcFg|]}t|SrAr)r1rrs rrDzonly_on..s) L L LBY # #B / / L L Lr)rrrto_list)rrs `ronly_onrsC  L L L L$,s:K:K L L L    rc@tt||||Sr )rr)rrrrs rexcluders =R.. 7 77rc^|s Jdtd|D|S)Nzno queries sent!cBg|]}t|SrAr)r1querys rrDzagainst..s&KKK% ..u55KKKrr)rqueriess ragainstr"sD &&&&&7 L;KK7KKK L L  rr )'rrrrvrrr util.compatrrrobjectr rrrrrrrrr0rrr rrrr r rrrrr6rrr"rArrr&s, 000000HHHHHvHHHV 4444 5555 5$5$5$5$5$5$5$5$p ? ? ? ? ?y ? ? ?6B6B6B6B6BI6B6B6Br00000i000. A A A A A9 A A A!.!.!.!.!.)!.!.!.H& 888   CCC???===JJJJ ;; ;    PPP8888r