\bgdZddlZddlZddlZddlZddlZddlmZddlZddl Z ddl m Z ddl m Z eejjdZGd d ZGd d Zd ZdZdS)z$Test .dist-info style distributions.N)partial)unpack_archive)DALSutf-8encodingceZdZedZedZejdZ dZ dZ dZ dZ ejdd d Zd S) TestDistInfoz Metadata-Version: 1.2 Requires-Dist: splort (==4) Provides-Extra: baz Requires-Dist: quux (>=1.1); extra == 'baz' c xd|D}|jd|zS)Nc3NK|] \}}djditV!dS)z{key}: {value} N)formatlocals).0keyvalues p/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/setuptools/tests/test_dist_info.py z.TestDistInfo.build_metadata.. s?XX:3*#*66VXX66XXXXXX)items metadata_basejoin)clskwargsliness rbuild_metadatazTestDistInfo.build_metadatas5XXXXX 2775>>11rcVd}||z }||dz }|d}||dd}||z }||dz }|dd }||dt|S) Nz%VersionedDistribution-2.718.dist-infoMETADATAVersionedDistribution)Namerrz!UnversionedDistribution.dist-infoUnversionedDistribution0.3)r"Version)mkdirr write_textstr)selftmpdirdist_info_name versionedfilenamecontent unversioneds rmetadatazTestDistInfo.metadata#s@^+ z)%%(&   Gg666<~- +%%*&   Gg6666{{rctdtj|D}t|dks J||d}|d}|jdksJ|jdksJdS)Nc3(K|] }|j|fVdSN) project_name)rds rrz-TestDistInfo.test_distinfo..;s:  $%Q^Q       rr#r!z2.718r$)dict pkg_resourcesfind_distributionslenversion)r)r0distsr/r,s r test_distinfozTestDistInfo.test_distinfo:s  )6)I()S)S     5zzQ56 12  G++++"e++++++rcrd}tttjj|}tj|D]s}||ddksJ|d|dtjdgksJ|jdgksJtdS)N)z splort==4z quux>=1.1r)baz)extrasrzquux>=1.1;extra=="baz"r?)listmapr8 Requirementparser9requiresr@)r)r0specsrEr5s rtest_conditional_dependenciesz*TestDistInfo.test_conditional_dependenciesGs(M5;UCCDD1(;; ' 'A::<<8BQB<////::X:.. )//0HII38w&&&&&  ' 'rcLd}|dz |dtjdtjtjz}t d|d}|jsJ||jsJt| d rJd S) zA Supplying an invalid version crashes dist_info. z@[metadata] name=proj version=42 [egg_info] tag_build=invalid!!! setup.cfgrrzinvalid version dist_infoF)cwdcheck *.dist-infoN) r'recompileMIrun_command_inner returncodesearchstdoutrAglob)r)tmp_pathconfigmsgprocs rtest_invalid_versionz!TestDistInfo.test_invalid_versionSsY K ++FW+EEEj*BD24K88 (%HHHzz$+&&&&& m445555555rcd}|dz |dttdd|t|d}|jd sJtj|ttdd d |t|d}|jd sJdS) Nz [metadata] name=proj version=42 [egg_info] tag_date=1 tag_build=.post rIrrrJz --no-daterKrMzproj-42z --tag-buildz.azproj-42a) r'print run_commandnextrVname startswithshutilrmtree)r)rWrXrJs rtest_tag_argumentszTestDistInfo.test_tag_arguments_s  K ++FW+EEE k+{AAABBB}5566 ~((33333 i    k+}dIIIJJJ}5566 ~((4444444r keep_egg_info)FTc<d}|dz |d|dz }||rdgng}tdd|g|Rd |itt |d d ksJtt |d d ksJt |}tt |d |ksJtt |d d ksJtt |dd ksJtt |dd ksJdS)Nz [metadata] name=proj version=42 rIrr__outz--keep-egg-inforJz --output-dirrKrMrrz *.egg-infoz *.__bkp__)r'r&r_r:rArVint)r)rWrfrXoutoptsexpected_egg_infos rtest_output_dirzTestDistInfo.test_output_dirss6 K ++FW+EEE  &3;!""KJtJJJJJJ4//0011Q66664 m445566!;;;; ..4..//004EEEEE4 l334455::::4--..//144444 k223344999999rN)__name__ __module__ __qualname__rr classmethodrpytestfixturer0r=rGr[remark parametrizermrrrr r sD M22[2 ^^, , , , ' ' ' 6 6 6555( [_m<< : :=< : : :rr c"eZdZdZedZgdZej dd ej ddgej ded Z d S) TestWheelCompatibilityzMake sure the .dist-info directory produced with the ``dist_info`` command is the same as the one produced by ``bdist_wheel``. ae [metadata] name = {name} version = {version} [options] install_requires = foo>=12; sys_platform != "linux" [options.extras_require] test = pytest [options.entry_points] console_scripts = executable-name = my_package.module:function discover = myproj = my_package.other_module:function ))rr).postz[egg_info] tag_build = post )rxz[egg_info] tag_build = .post )rxz)[egg_info] tag_build = post tag_date = 1 ).devz[egg_info] tag_build = .dev )ryz)[egg_info] tag_build = .dev tag_date = 1 )a1zgg_info] tag_build = .a1 )z+localz[egg_info] tag_build = +local razmy-proj my_proj my.proj My.Projr;z0.42.13)suffixcfgc|j|||z}dD]6}||z ||z dz |d7t d|dz t |d }t||d z t |d } t d |d z t |d} | j| jksJ| j | ddd||sJdD]*} t| | z t| | z ksJ+dS)N)rar;) dir_wheeldir_distrIrr bdist_wheelr~r]zdir_wheel/dist/*.whlunpackzunpack/*.dist-inforJrzdir_dist/*.dist-info-_)r zentry_points.txt) SETUPCFGrr&r'r_r`rVrrarbreplaceread) r)rar;rWr{r|rXiwheelwheel_dist_inforJfiles r&test_dist_info_is_the_same_as_in_wheelz=TestWheelCompatibility.test_dist_info_is_the_same_as_in_wheels %%4%AACG( N NA \ " " " \K ' 3 3FW 3 M M M MMx+'=>>>>X]]#9::;;uh1222x}}-ABBCCKX %:;;;;'=>>?? ~!55555~((DLLc,B,B)V)VW)Vf)V)VWWWWW2 J JD D())T/D2H-I-IIIIII J JrN) rnrorp__doc__rr EGG_INFO_OPTSrrrtrusplitrrrrrwrwst H*   M [V%F%L%L%N%NOO [Y 44 [. >>JJ?>54POJJJrrwctjtjdddd|}tjddgt t |}tj|fi|S)NTr)stderrrUtextr rLz-cz __import__('setuptools').setup()) subprocessSTDOUTPIPEsys executablerBr(run)cmdrrks rrRrRsb#/      D >4!C Tc#smm TC ># & & & &&rc$t|i|jSr3)rRrU)argsrs rr_r_s d -f - - 44r)rpathlibrNrcrr functoolsrrrr8setuptools.archive_utilrtextwraprPath read_textrr rwrRr_rrrrs)**   222222ww|%888m:m:m:m:m:m:m:m:`=J=J=J=J=J=J=J=J@ ' ' '55555r