bg bddlmZddlZddlmZddlmZddlmZdZ dZ dd Z ddZ ddZ dS)) annotationsN)Union)inspect_getfullargspec)sqla_2cddlm}t|D]}|t |jfd|Dddt zzddS)a A facade around @testing.combinations() oriented towards boolean keyword-based arguments. Basically generates a nice looking identifier based on the keywords and also sets up the argument names. E.g.:: @testing.flag_combinations( dict(lazy=False, passive=False), dict(lazy=True, passive=False), dict(lazy=False, passive=True), dict(lazy=False, passive=True, raiseload=True), ) would result in:: @testing.combinations( ('', False, False, False), ('lazy', True, False, False), ('lazy_passive', True, True, False), ('lazy_passive', True, True, True), id_='iaaa', argnames='lazy,passive,raiseload' ) rconfigcg|]@dfdDftfdDzAS)_c3HK|]}|d|VdSFNget.0kds e/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/alembic/testing/util.py z/flag_combinations...9s499Aq%9a999999c3DK|]}|dVdSrrrs rrz/flag_combinations...:s/22AEE!UOO222222r)jointuple)rrkeyss @r z%flag_combinations..8su   XX9999999 9 9 ;2222T22222 3   ria,)id_argnames)sqlalchemy.testingr setupdatesorted combinationslenr)r&r rrs @rflag_combinationsr(s:*))))) 55D  A $<z"resolve_lambda..Ls%:::#S"&&++:::rr+)rdict __globals__r$types FunctionType__code__)__fnr.pos_args pass_pos_argsglbnew_fns ` rresolve_lambdar:Bsy&d++A.H:::::::M t CJJrNNN   s 3 3F 6 " "M " ""rfunctionc2ddlmddlmfd}|S)z&Provide MetaData for a pytest fixture.rr )fixture_functionscPfd}|S)Nc3Kddlm}|x}|_ ||}|j|V|jdS#|jwxYw)Nr)schema) sqlalchemyrAMetaDatametadata create_alldbdrop_all)selfrArDresultr fns rrun_ddlz3metadata_fixture..decorate..run_ddlZs ) ) ) ) ) )'-'8'8 8Ht} -D(++##FI... !!&),,,,,!!&),,,,s *A,,B)scope)fixture)rJrKr ddlr>s` rdecoratez"metadata_fixture..decorateYsF - - - - - -4 ((s(33G<<)rNrOr r>s` @@rmetadata_fixturerQSsU*)))))######======= OrvaluestrreturnUnion[int, str]c4 t|S#|cYSxYw)N)int)rRs r _safe_intrXls%5zz sFcddlm}ddlm}|st |jjdd}ts |rd|ini}ni}|||fi|S)Nrr )testing_engine future_engineFfuture)r"r sqlalchemy.testing.enginesrZgetattr_currentoptionsr)urlr`r\r rZr.s rrZrZss))))))999999 J0/5II #) 1h  r  >#w - -" - --r)r;)rRrSrTrU)NNF) __future__rr2typingrsqlalchemy.utilrutilrr(r:rQrXrZr+rrrfs#""""" 222222...b###"2 . . . . . .r