bg dZddlmZddlZddlZddlZddlZddlmZddl Z ddl m Z m Z m Z ddd ZddZejdZdZdS)z@Utility functions for test code that uses astroid ASTs as input.) annotationsN)Callable)managernodes transforms0.0.04.0.0minverstrmaxverreturnrcRdd}||fd}|S)zSCompare version of python interpreter to the given one and skips the test if older.python_versionr r tuple[int, ...]c td|dDS#t$r}|d}t||d}~wwxYw)Nc34K|]}t|VdSN)int.0vs c/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/astroid/test_utils.py z1require_version..parse..s(CCAQCCCCCC.z. is not a correct version : should be X.Y[.Z].)tuplesplit ValueError)remsgs rparsezrequire_version..parsesm )CC)=)=c)B)BCCCCC C ) ) )#SSSCS//q ( )s+. AA  Actjddcxkrkrnn|SddtjDtj|fd}|S)Nrc34K|]}t|VdSr)r rs rrzArequire_version..check_require_version..&s(AA1AAAAAAArckrtjddddSkrtjddddSdS)NzNeeds Python > z. Current version is rzNeeds Python <= )pytestskip)argskwargscurrent max_versionr min_versionr versions rnew_fz=require_version..check_require_version..new_f(su+%% UfUU7UUUVVVVV;&& VvVVGVVVWWWWW'&r)sys version_infojoin functoolswraps)fr.r*r-r+r r,r s @@rcheck_require_versionz.require_version..check_require_version!s(+(8!(<  / / / /K / / / / /HxxAA0@AAAAA    X X X X X X X X X   X  r)rr r r)r r r!r5r+r,s`` @@rrequire_versionr7sf))))%--K%--K ! rcffd|tjD|S)Nc*g|]}|jk |Sr6)name)rnr:s r z!get_name_node..5s O O O!$Ar)nodes_of_classrName) start_fromr:indexs ` r get_name_noderA4s3 O O O Oz00<< O O OPU VVrc#Ktjd| dVtjd|dS#tjd|wxYw)Nalwaysdefault)warnings simplefilter)warnings renable_warningrH8s[ (G,,,2  i11111i1111s 4A ctj}i|_g|_i|_i|_t j|_t|_ |Sr) rAstroidManager__dict___failed_import_hooks astroid_cache_mod_file_cacherTransformVisitor _transformsetextension_package_whitelist)ms rbrainless_managerrTCsQ  AAJAAOA.00AL$'EEA! Hr)rr )r r r r r r)r)__doc__ __future__r contextlibr2r/rEcollections.abcrr&astroidrrrr7rAcontextmanagerrHrTr6rrr[s GF"""""" $$$$$$ ..........!!!!!@WWWW 222      r