+
    êh‹  ã                   ó€   € R t ^ RIt^ RIt^ RIt^ RIt^ RIHtHt ^ RIH	t	 ^RI
Ht  ! R R4      t ! R R4      tR	 tR# )
z%Tests for automatic package discoveryN)Úfind_namespace_packagesÚfind_packages)ÚFlatLayoutPackageFinder)Ú	os_helperc                   óü   a € ] tR t^t o R tR tR tRR ltRR ltR t	R t
R	 tR
 tR tR t]P                   P#                  ]P&                  ! 4       '       * RR7      R 4       tR tR tR tR tR tR tRtV tR# )ÚTestFindPackagesc                óZ   € \         P                  ! 4       V n        V P                  4        R # ©N)ÚtempfileÚmkdtempÚdist_dirÚ_make_pkg_structure©ÚselfÚmethods   &&ÚE/usr/lib/python3/dist-packages/setuptools/tests/test_find_packages.pyÚsetup_methodÚTestFindPackages.setup_method   s   € Ü ×(Ò(Ó*ˆŒØ× Ñ Ö"ó    c                óF   € \         P                  ! V P                  4       R # r	   )ÚshutilÚrmtreer   r   s   &&r   Úteardown_methodÚ TestFindPackages.teardown_method   s   € Ü�Š�d—m‘mÖ$r   c                ó   € V P                  RV P                  4      V n        V P                  RV P                  4       V P                  RV P                  4      V n        V P                  RV P                  4       V P                  RV P                  4      V n        V P                  RV P
                  4       V P                  RV P                  4      V n        V P                  RV P                  4      V n        V P                  R	V P                  4       V P                  R
V P                  4       V P                  RV P                  4       R# )zßMake basic package structure.

dist/
    docs/
        conf.py
    pkg/
        __pycache__/
        nspkg/
            mod.py
        subpkg/
            assets/
                asset
            __init__.py
    setup.py

Údocszconf.pyÚpkgÚ__pycache__Únspkgzmod.pyÚsubpkgÚassetsÚassetú__init__.pyzsetup.pyN)Ú_mkdirr   Údocs_dirÚ_touchÚpkg_dirÚ
ns_pkg_dirÚsub_pkg_dirÚ	asset_dir)r   s   &r   r   Ú$TestFindPackages._make_pkg_structure   sã   € ð" Ÿ™ F¨D¯M©MÓ:ˆŒØ�‰�I˜tŸ}™}Ô-Ø—{‘{ 5¨$¯-©-Ó8ˆŒØ�‰�M 4§<¡<Ô0ØŸ+™+ g¨t¯|©|Ó<ˆŒØ�‰�H˜dŸo™oÔ.ØŸ;™; x°·±Ó>ˆÔØŸ™ X¨t×/?Ñ/?Ó@ˆŒØ�‰�G˜TŸ^™^Ô,Ø�‰�M 4×#3Ñ#3Ô4Ø�‰�J §¡Ö.r   Nc                ó€   € V'       d    \         P                  P                  W!4      p\         P                  ! V4       V# r	   )ÚosÚpathÚjoinÚmkdir)r   r-   Ú
parent_dirs   &&&r   r#   ÚTestFindPackages._mkdir4   s'   € ßÜ—7‘7—<‘< 
Ó1ˆDÜ
�Š�ŒØˆr   c                óˆ   € V'       d    \         P                  P                  W!4      p\        VR 4      P	                  4        V# )Úwb)r,   r-   r.   ÚopenÚclose)r   r-   Údir_s   &&&r   r%   ÚTestFindPackages._touch:   s/   € ßÜ—7‘7—<‘< Ó+ˆDÜˆT�4Ó×ÑÔ Øˆr   c                ó~   € V P                  R V P                  4       \        V P                  4      pVRR.8X  g   Q hR# )r"   r   ú
pkg.subpkgN©r%   r&   r   r   ©r   Úpackagess   & r   Útest_regular_packageÚ%TestFindPackages.test_regular_package@   s5   € Ø�‰�M 4§<¡<Ô0Ü  §¡Ó/ˆØ˜E <Ð0Ô0Ð0Ò0r   c                ó€   € V P                  R V P                  4       \        V P                  RR7      pVR.8X  g   Q hR# )r"   ©Úexcluder   N)zpkg.*r:   r;   s   & r   Útest_excludeÚTestFindPackages.test_excludeE   s4   € Ø�‰�M 4§<¡<Ô0Ü  §¡¸
ÔCˆØ˜E˜7Ô"Ð"Ò"r   c                ó¸   € V P                  RV P                  4       V P                  RV P                  4       \        V P                  RR7      pVR.8X  g   Q hR# )zG
Excluding a parent package should not exclude child packages as well.
r"   r@   r9   N)r   )r%   r&   r(   r   r   r;   s   & r   Útest_exclude_recursiveÚ'TestFindPackages.test_exclude_recursiveJ   sJ   € ð 	�‰�M 4§<¡<Ô0Ø�‰�M 4×#3Ñ#3Ô4Ü  §¡¸ÔAˆØ˜L˜>Ô)Ð)Ò)r   c                óÞ   € V P                  RV P                  4       V P                  RV P                  4      pV P                  RV4       \	        V P                  R.R7      pVR.8X  g   Q hR# )z=
If include is specified, other packages should be excluded.
r"   Ú	other_pkg)ÚincludeN)r%   r&   r#   r   r   )r   Úalt_dirr<   s   &  r   Útest_include_excludes_otherÚ,TestFindPackages.test_include_excludes_otherS   sZ   € ð 	�‰�M 4§<¡<Ô0Ø—+‘+˜k¨4¯=©=Ó9ˆØ�‰�M 7Ô+Ü  §¡¸¸ÔFˆØ˜K˜=Ô(Ð(Ò(r   c                ó>  € \         P                  ! \        P                  P	                  V P
                  R 4      4       V P                  RV P                  4      pV P                  RV4       V P                  RV4       \        V P
                  4      pRV9  g   Q hR# )úpkg/subpkg/assetsz	some.datar"   zfile.datzpkg.some.dataN)
r   r   r,   r-   r.   r   r#   r&   r%   r   )r   Údata_dirr<   s   &  r   Útest_dir_with_dot_is_skippedÚ-TestFindPackages.test_dir_with_dot_is_skipped]   sn   € Ü�Š”b—g‘g—l‘l 4§=¡=Ð2EÓFÔGØ—;‘;˜{¨D¯L©LÓ9ˆØ�‰�M 8Ô,Ø�‰�J Ô)Ü  §¡Ó/ˆØ hÔ.Ð.Ò.r   c                óÂ   € V P                  RV P                  4      pV P                  RV4      pV P                  RV4       \        V P                  4      pRV9  g   Q hR# )zS
Ensure that a package in a non-package such as build/pkg/__init__.py
is excluded.
Úbuildr   r"   z	build.pkgN)r#   r   r%   r   )r   Ú	build_dirÚbuild_pkg_dirr<   s   &   r   Ú,test_dir_with_packages_in_subdir_is_excludedÚ=TestFindPackages.test_dir_with_packages_in_subdir_is_excludede   sR   € ð
 —K‘K ¨¯©Ó7ˆ	ØŸ™ E¨9Ó5ˆØ�‰�M =Ô1Ü  §¡Ó/ˆØ (Ô*Ð*Ò*r   zSymlink support required)Úreasonc                óJ  € V P                  RV P                  4       \        P                  P	                  V P
                  R4      p\        P                  ! RV4       \        P                  P                  V4      '       g   Q h\        V P
                  4      pRV9   g   Q hR# )zˆ
A symbolically-linked directory should be treated like any other
directory when matched as a package.

Create a link from lpkg -> pkg.
r"   Úlpkgr   N)	r%   r&   r,   r-   r.   r   ÚsymlinkÚisdirr   )r   Ú
linked_pkgr<   s   &  r   Ú$test_symlinked_packages_are_includedÚ5TestFindPackages.test_symlinked_packages_are_includedp   sq   € ð 	�‰�M 4§<¡<Ô0Ü—W‘W—\‘\ $§-¡-°Ó8ˆ
Ü
�
Š
�5˜*Ô%Ü�w‰w�}‰}˜Z×(Ò(Ð(Ð(Ü  §¡Ó/ˆØ˜Ô!Ð!Ò!r   c                ó<   € \        V4      \        V4      8X  g   Q hR # r	   )Úset)r   ÚactualÚexpecteds   &&&r   Ú_assert_packagesÚ!TestFindPackages._assert_packages   s   € Ü�6‹{œc (›mÔ+Ð+Ò+r   c                ób   € \        V P                  R .R.R7      pV P                  V. RO4       R# )zpkg*úpkg.subpkg.assets)rI   rA   N©r   ú	pkg.nspkgr9   ©r   r   rd   r;   s   & r   Útest_pep420_ns_packageÚ'TestFindPackages.test_pep420_ns_package‚   s0   € Ü*Ø�M‰M F 8Ð6IÐ5Jô
ˆð 	×Ñ˜hÒ(JÖKr   c                ó^   € \        V P                  R .R7      pV P                  V. RO4       R# )rg   r@   N)r   r   ri   r9   rj   r;   s   & r   Ú"test_pep420_ns_package_no_includesÚ3TestFindPackages.test_pep420_ns_package_no_includesˆ   s'   € Ü*¨4¯=©=ÐCVÐBWÔXˆØ×Ñ˜hÒ(RÖSr   c                óZ   € \        V P                  4      p. ROpV P                  W4       R# )r   N)r   r   ri   r9   rg   rj   )r   r<   rc   s   &  r   Ú.test_pep420_ns_package_no_includes_or_excludesÚ?TestFindPackages.test_pep420_ns_package_no_includes_or_excludesŒ   s#   € Ü*¨4¯=©=Ó9ˆÚRˆØ×Ñ˜hÖ1r   c                ó˜   € V P                  R V P                  4       \        V P                  RR.R7      pV P	                  V. RO4       R# )r"   r   rg   r@   Nrh   )r%   r&   r   r   rd   r;   s   & r   Ú3test_regular_package_with_nested_pep420_ns_packagesÚDTestFindPackages.test_regular_package_with_nested_pep420_ns_packages‘   s@   € Ø�‰�M 4§<¡<Ô0Ü*Ø�M‰M FÐ,?Ð#@ô
ˆð 	×Ñ˜hÒ(JÖKr   c                ó  € \         P                  ! V P                  4       \         P                  ! \        P                  P                  V P                  R 4      4       \        V P                  4      pV P                  V. RO4       R# )rN   Nrh   )	r   r   r$   r,   r-   r.   r   r   rd   r;   s   & r   Ú*test_pep420_ns_package_no_non_package_dirsÚ;TestFindPackages.test_pep420_ns_package_no_non_package_dirs˜   sQ   € Ü�Š�d—m‘mÔ$Ü�Š”b—g‘g—l‘l 4§=¡=Ð2EÓFÔGÜ*¨4¯=©=Ó9ˆØ×Ñ˜hÒ(JÖKr   )r)   r   r$   r'   r&   r(   r	   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   r   r#   r%   r=   rB   rE   rK   rP   rV   ÚpytestÚmarkÚskipifr   Úcan_symlinkr^   rd   rk   rn   rq   rt   rw   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   r   r      sš   ø‡ € ò#ò%ò/ô:ôò1ò
#ò
*ò)ò/ò	+ð ‡[�[×Ñ˜I×1Ò1Ó3Ô3Ð<VÐÓWñ"ó Xð"ò,òLòTò2ò
L÷Lð Lr   r   c                   óì   a € ] tR t^Ÿt o R. RORR.3RRR.RR.3R. RO. 3R	. ROR.3R
. ROR.3R. RO. RO3R. RO. RO3/t]P                  P                  R]P                  4       4      R 4       t	Rt
V tR# )ÚTestFlatLayoutPackageFinderzhidden-foldersr   z
pkg.nestedzprivate-packagesz_pkg/__init__.pyzpkg/_private/__init__.pyzpkg._privatezinvalid-namer   ÚtestsÚexamplesztool-specificÚexamplec                óº   € V P                   V,          w  r4\        W4       \        P                  ! \	        V4      4      p\        V4      \        V4      8X  g   Q hR # r	   )ÚEXAMPLESÚensure_filesr   ÚfindÚstrra   )r   Útmp_pathr‰   ÚfilesÚexpected_packagesÚfound_packagess   &&&   r   Ú&test_unwanted_directories_not_includedÚBTestFlatLayoutPackageFinder.test_unwanted_directories_not_includedÎ   sH   € à#'§=¡=°Õ#9Ñ ˆÜ�XÔ%Ü0×5Ò5´c¸(³mÓDˆÜ�>Ó"¤cÐ*;Ó&<Ô<Ð<Ò<r   © N)z.pkg/__init__.pyúpkg/__init__.pyzpkg/nested/file.txt)zinvalid-pkg/__init__.pyzother.pkg/__init__.pyzyet,another/file.py)r–   zdocs/conf.pyzdocs/readme.rst)r–   ztests/test_pkg.pyztests/__init__.py)r–   zexamples/__init__.pyzexamples/file.pyzexample/other_file.pyzpkg/example/__init__.pyzpkg/examples/__init__.py)r   zpkg.exampleszpkg.example)zhtmlcov/index.htmlr–   ztasks/__init__.pyztasks/subpackage/__init__.pyzfabfile/__init__.pyzfabfile/subpackage/__init__.pyzpkg/tasks/__init__.pyzpkg/fabfile/__init__.py)r   z	pkg.taskszpkg.fabfile)ry   rz   r{   r|   r‹   r}   r~   ÚparametrizeÚkeysr“   r�   r‚   rƒ   s   @r   r†   r†   Ÿ   s½   ø‡ € àÚJØ�LÐ!ð
ð 	ØÐ!;Ð<Ø�NÐ#ð
ð 	ÚWØð
ð 	ÒGÈ%ÈÐQØÚIØˆGð
ð 	òò 3ð
ð 	ò
ò 0ð
ð=,€Hð\ ‡[�[×Ñ˜Y¨¯©«Ó8ñ=ó 9ö=r   r†   c                 ó‚   € V F8  pW,          pVP                   P                  R R R7       VP                  4        K:  	  R# )T)ÚparentsÚexist_okN)Úparentr/   Útouch)Ú	root_pathr�   Úfiler-   s   &&  r   rŒ   rŒ   Ö   s4   € ÛˆØÕˆØ�‰×Ñ $°ÐÔ6Ø�
‰
Žó r   )Ú__doc__r,   r   r
   r}   Ú
setuptoolsr   r   Úsetuptools.discoveryr   Úcompat.py39r   r   r†   rŒ   r•   r   r   Ú<module>r¤      s<   ðÙ +ã 	Û Û ã ç =Ý 8å "÷MLñ ML÷`4=ñ 4=ônr   