§ w<ˆj‹ãóŒ—dZddlZddlZddlZddlZddlmZmZddlm Z ddl m Z Gd„d¦«Z Gd „d ¦«Z d „ZdS) z%Tests for automatic package discoveryéN)Úfind_namespace_packagesÚ find_packages)ÚFlatLayoutPackageFinderé)Ú os_helpercóÞ—eZdZd„Zd„Zd„Zdd„Zdd„Zd„Zd„Z d „Z d „Z d „Z d „Z ej ej¦« d ¬¦«d„¦«Zd„Zd„Zd„Zd„Zd„Zd„ZdS)ÚTestFindPackagescó^—tj¦«|_| ¦«dS©N)ÚtempfileÚmkdtempÚdist_dirÚ_make_pkg_structure©ÚselfÚmethods úu/builddir/build/BUILD/cloudlinux-venv-1.0.12/venv/lib/python3.11/site-packages/setuptools/tests/test_find_packages.pyÚ setup_methodzTestFindPackages.setup_methods*€Ý Ô(Ñ*Ô*ˆŒ Ø × Ò Ñ"Ô"Ð"Ð"Ð"ócó8—tj|j¦«dSr )ÚshutilÚrmtreerrs rÚteardown_methodz TestFindPackages.teardown_methods€ÝŒ �d”mÑ$Ô$Ð$Ð$Ð$rcóŠ—| d|j¦«|_| d|j¦«| d|j¦«|_| d|j¦«| d|j¦«|_| d|j¦«| d|j¦«|_| d|j¦«|_| d |j¦«| d |j¦«| d |j¦«d S) aGMake basic package structure. dist/ docs/ conf.py pkg/ __pycache__/ nspkg/ mod.py subpkg/ assets/ asset __init__.py setup.py Údocszconf.pyÚpkgÚ __pycache__Únspkgzmod.pyÚsubpkgÚassetsÚassetú __init__.pyzsetup.pyN)Ú_mkdirrÚdocs_dirÚ_touchÚpkg_dirÚ ns_pkg_dirÚ sub_pkg_dirÚ asset_dir)rs rrz$TestFindPackages._make_pkg_structures€ð"Ÿ š  F¨D¬MÑ:Ô:ˆŒ Ø � Š �I˜tœ}Ñ-Ô-Ð-Ø—{’{ 5¨$¬-Ñ8Ô8ˆŒ Ø � Š �M 4¤<Ñ0Ô0Ð0ØŸ+š+ g¨t¬|Ñ<Ô<ˆŒØ � Š �H˜dœoÑ.Ô.Ð.ØŸ;š; x°´Ñ>Ô>ˆÔØŸš X¨tÔ/?Ñ@Ô@ˆŒØ � Š �G˜Tœ^Ñ,Ô,Ð,Ø � Š �M 4Ô#3Ñ4Ô4Ð4Ø � Š �J ¤ Ñ.Ô.Ð.Ð.Ð.rNcór—|r tj ||¦«}tj|¦«|Sr )ÚosÚpathÚjoinÚmkdir)rr,Ú parent_dirs rr#zTestFindPackages._mkdir4s1€Ø ð 2Ý”7—<’<  ¨DÑ1Ô1ˆDÝ Œ�‰ŒˆØˆ rcóŽ—|r tj ||¦«}t|d¦« ¦«|S)NÚwb)r+r,r-ÚopenÚclose)rr,Údir_s rr%zTestFindPackages._touch:s@€Ø ð ,Ý”7—<’<  dÑ+Ô+ˆDÝ ˆT�4ÑÔ×ÒÑ Ô Ð Øˆ rcóx—| d|j¦«t|j¦«}|ddgksJ‚dS)Nr"rú pkg.subpkg©r%r&rr©rÚpackagess rÚtest_regular_packagez%TestFindPackages.test_regular_package@sC€Ø � Š �M 4¤<Ñ0Ô0Ð0Ý  ¤Ñ/Ô/ˆØ˜E <Ð0Ò0Ð0Ð0Ð0Ð0Ð0rcóz—| d|j¦«t|jd¬¦«}|dgksJ‚dS)Nr")zpkg.*©Úexcluderr7r8s rÚ test_excludezTestFindPackages.test_excludeEsE€Ø � Š �M 4¤<Ñ0Ô0Ð0Ý  ¤¸ ÐCÑCÔCˆØ˜E˜7Ò"Ð"Ð"Ð"Ð"Ð"rcó°—| d|j¦«| d|j¦«t|jd¬¦«}|dgksJ‚dS)zW Excluding a parent package should not exclude child packages as well. r")rr<r6N)r%r&r(rrr8s rÚtest_exclude_recursivez'TestFindPackages.test_exclude_recursiveJs^€ð � Š �M 4¤<Ñ0Ô0Ð0Ø � Š �M 4Ô#3Ñ4Ô4Ð4Ý  ¤¸ÐAÑAÔAˆØ˜L˜>Ò)Ð)Ð)Ð)Ð)Ð)rcóÞ—| d|j¦«| d|j¦«}| d|¦«t |jdg¬¦«}|dgksJ‚dS)zM If include is specified, other packages should be excluded. r"Ú other_pkg)ÚincludeN)r%r&r#rr)rÚalt_dirr9s rÚtest_include_excludes_otherz,TestFindPackages.test_include_excludes_otherSsr€ð � Š �M 4¤<Ñ0Ô0Ð0Ø—+’+˜k¨4¬=Ñ9Ô9ˆØ � Š �M 7Ñ+Ô+Ð+Ý  ¤¸¸ ÐFÑFÔFˆØ˜K˜=Ò(Ð(Ð(Ð(Ð(Ð(rcó6—tjtj |jd¦«¦«| d|j¦«}| d|¦«| d|¦«t|j¦«}d|vsJ‚dS)Núpkg/subpkg/assetsz some.datar"zfile.datz pkg.some.data) rrr+r,r-rr#r&r%r)rÚdata_dirr9s rÚtest_dir_with_dot_is_skippedz-TestFindPackages.test_dir_with_dot_is_skipped]sˆ€ÝŒ •b”g—l’l 4¤=Ð2EÑFÔFÑGÔGÐGØ—;’;˜{¨D¬LÑ9Ô9ˆØ � Š �M 8Ñ,Ô,Ð,Ø � Š �J Ñ)Ô)Ð)Ý  ¤Ñ/Ô/ˆØ hÐ.Ð.Ð.Ð.Ð.Ð.rcóÈ—| d|j¦«}| d|¦«}| d|¦«t|j¦«}d|vsJ‚dS)zk Ensure that a package in a non-package such as build/pkg/__init__.py is excluded. Úbuildrr"z build.pkgN)r#rr%r)rÚ build_dirÚ build_pkg_dirr9s rÚ,test_dir_with_packages_in_subdir_is_excludedz=TestFindPackages.test_dir_with_packages_in_subdir_is_excludedesf€ð —K’K ¨¬Ñ7Ô7ˆ ØŸ š  E¨9Ñ5Ô5ˆ Ø � Š �M =Ñ1Ô1Ð1Ý  ¤Ñ/Ô/ˆØ (Ð*Ð*Ð*Ð*Ð*Ð*rzSymlink support required)Úreasoncó&—| d|j¦«tj |jd¦«}tjd|¦«tj |¦«sJ‚t|j¦«}d|vsJ‚dS)z¨ A symbolically-linked directory should be treated like any other directory when matched as a package. Create a link from lpkg -> pkg. r"ÚlpkgrN) r%r&r+r,r-rÚsymlinkÚisdirr)rÚ linked_pkgr9s rÚ$test_symlinked_packages_are_includedz5TestFindPackages.test_symlinked_packages_are_includedpsƒ€ð � Š �M 4¤<Ñ0Ô0Ð0Ý”W—\’\ $¤-°Ñ8Ô8ˆ Ý Œ �5˜*Ñ%Ô%Ð%ÝŒw�}Š}˜ZÑ(Ô(Ð(Ð(Ð(Ý  ¤Ñ/Ô/ˆØ˜Ð!Ð!Ð!Ð!Ð!Ð!rcóJ—t|¦«t|¦«ksJ‚dSr )Úset)rÚactualÚexpecteds rÚ_assert_packagesz!TestFindPackages._assert_packagess%€Ý�6‰{Œ{�c (™mœmÒ+Ð+Ð+Ð+Ð+Ð+rcóh—t|jdgdg¬¦«}| |gd¢¦«dS)Nzpkg*úpkg.subpkg.assets)rCr=©rú pkg.nspkgr6©rrrZr8s rÚtest_pep420_ns_packagez'TestFindPackages.test_pep420_ns_package‚sJ€Ý*Ø ŒM F 8Ð6IÐ5Jð ñ ô ˆð ×Ò˜hÐ(JÐ(JÐ(JÑKÔKÐKÐKÐKrcód—t|jdg¬¦«}| |gd¢¦«dS)Nr\r<)rrr^r6r_r8s rÚ"test_pep420_ns_package_no_includesz3TestFindPackages.test_pep420_ns_package_no_includesˆs=€Ý*¨4¬=ÐCVÐBWÐXÑXÔXˆØ ×Ò˜hÐ(RÐ(RÐ(RÑSÔSÐSÐSÐSrcób—t|j¦«}gd¢}| ||¦«dS)N)rrr^r6r\r_)rr9rYs rÚ.test_pep420_ns_package_no_includes_or_excludesz?TestFindPackages.test_pep420_ns_package_no_includes_or_excludesŒs8€Ý*¨4¬=Ñ9Ô9ˆØRÐRÐRˆØ ×Ò˜h¨Ñ1Ô1Ð1Ð1Ð1rcóœ—| d|j¦«t|jddg¬¦«}| |gd¢¦«dS)Nr"rr\r<r])r%r&rrrZr8s rÚ3test_regular_package_with_nested_pep420_ns_packageszDTestFindPackages.test_regular_package_with_nested_pep420_ns_packages‘s^€Ø � Š �M 4¤<Ñ0Ô0Ð0Ý*Ø ŒM FÐ,?Ð#@ð ñ ô ˆð ×Ò˜hÐ(JÐ(JÐ(JÑKÔKÐKÐKÐKrcóþ—tj|j¦«tjtj |jd¦«¦«t|j¦«}| |gd¢¦«dS)NrGr]) rrr$r+r,r-rrrZr8s rÚ*test_pep420_ns_package_no_non_package_dirsz;TestFindPackages.test_pep420_ns_package_no_non_package_dirs˜si€ÝŒ �d”mÑ$Ô$Ð$ÝŒ •b”g—l’l 4¤=Ð2EÑFÔFÑGÔGÐGÝ*¨4¬=Ñ9Ô9ˆØ ×Ò˜hÐ(JÐ(JÐ(JÑKÔKÐKÐKÐKrr )Ú__name__Ú __module__Ú __qualname__rrrr#r%r:r>r@rErIrNÚpytestÚmarkÚskipifrÚ can_symlinkrUrZr`rbrdrfrh©rrr r sm€€€€€ð#ð#ð#ð%ð%ð%ð/ð/ð/ð:ðððð ðððð 1ð1ð1ð #ð#ð#ð *ð*ð*ð)ð)ð)ð/ð/ð/ð +ð +ð +ð „[×ÒÐ1˜IÔ1Ñ3Ô3Ð3ÐÑ"Ô"¥cÐ*;Ñ&<Ô&<Ò<Ð<Ð<Ð<Ð<ÐrŽsæðØ+Ð+à € € € Ø € € € Ø€€€à € € € à=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ø8Ð8Ð8Ð8Ð8Ð8à"Ð"Ð"Ð"Ð"Ð"ðMLðMLðMLðMLðMLñMLôMLðMLð`4=ð4=ð4=ð4=ð4=ñ4=ô4=ð4=ðnððððr