+
    êh×B  ã                  ó  € ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	t	^ RI
t
^ RIt^ RIHt ^ RIt^ RIt^ RIHtHtHt ^ RIt^ RIt ! R R]4      t ! R R4      t ! R	 R
4      tR tR tR t]P:                  P=                  R!RR]3RR]3.4      ]P:                  P?                  ]	P@                  R,          R"8H  ;'       d    ]	P@                  PB                  R8g  RR7      R 4       4       t"]P:                  P?                  ]	P@                  R,          R"8H  ;'       d    ]	P@                  PB                  R8g  RR7      R 4       t#]P:                  P=                  RRR.4      R 4       t$R t% ! R R4      t& ! R R 4      t'R# )#é    )ÚannotationsN)Úmock)ÚDistInfoDistributionÚDistributionÚEggInfoDistributionc                  ó   € ] tR t^tR tRtR# )Ú
EggRemoverc                	óè   € V \         P                  9   d    \         P                  P                  V 4       \        P                  P	                  V 4      '       d   \        P                  ! V 4       R # R # ©N)ÚsysÚpathÚremoveÚosÚexists)Úselfs   &ÚH/usr/lib/python3/dist-packages/pkg_resources/tests/test_pkg_resources.pyÚ__call__ÚEggRemover.__call__   sA   € Ø”3—8‘8ÔÜ�H‰H�O‰O˜DÔ!Ü�7‰7�>‰>˜$×ÒÜ�IŠI�dŽOñ  ó    © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ú__static_attributes__r   r   r   r	   r	      s   † ör   r	   c                  ó‚   € ] tR t^ t$ . tR]R&   ]P                  ! R^^^^^ 4      t ]R 4       t	]R 4       t
R tR tRtR	# )
ÚTestZipProviderzlist[EggRemover]Ú
finalizersiÝ  c                ó”  € \         P                  ! RRR7      p\        P                  ! VR4      p\        P                  ! 4       pRVn        V P                  P                  4       Vn        VP                  VR4       \        P                  ! 4       pRVn        V P                  P                  4       Vn        VP                  VR4       \        P                  ! 4       pR	Vn        V P                  P                  4       Vn        VP                  VR
4       \        P                  ! 4       pRVn        V P                  P                  4       Vn        VP                  VR4       VP                  4        VP                  4        \        P                  P                  VP                  4       \        P                  P!                  VP                  R4      p\        P                  P                  V4       V P"                  P                  \%        V4      4       V P"                  P                  \%        VP                  4      4       R# )z'create a zip egg and add it to sys.pathz.eggF)ÚsuffixÚdeleteÚwúmod.pyzx = 3
údata.datúhello, world!zsubdir/mod2.pyzx = 6
zsubdir/data2.datzgoodbye, world!ÚsubdirN)ÚtempfileÚNamedTemporaryFileÚzipfileÚZipFileÚZipInfoÚfilenameÚref_timeÚ	timetupleÚ	date_timeÚwritestrÚcloser   r   ÚappendÚnamer   Újoinr   r	   )ÚclsÚeggÚzip_eggÚzip_infor&   s   &    r   Úsetup_classÚTestZipProvider.setup_class&   s‹  € ô ×)Ò)°ÀÔFˆÜ—/’/ # sÓ+ˆÜ—?’?Ó$ˆØ$ˆÔØ Ÿ\™\×3Ñ3Ó5ˆÔØ×Ñ˜ 9Ô-Ü—?’?Ó$ˆØ&ˆÔØ Ÿ\™\×3Ñ3Ó5ˆÔØ×Ñ˜ ?Ô3Ü—?’?Ó$ˆØ,ˆÔØ Ÿ\™\×3Ñ3Ó5ˆÔØ×Ñ˜ 9Ô-Ü—?’?Ó$ˆØ.ˆÔØ Ÿ\™\×3Ñ3Ó5ˆÔØ×Ñ˜Ð#4Ô5Ø�‰ŒØ�	‰	Œä�‰�‰˜Ÿ™Ô!Ü—‘—‘˜cŸh™h¨Ó1ˆÜ�‰�‰˜ÔØ�‰×Ñœj¨Ó0Ô1Ø�‰×Ñœj¨¯©Ó2Ö3r   c                	ó:   € V P                    F
  pV! 4        K  	  R # r   )r   )r5   Ú	finalizers   & r   Úteardown_classÚTestZipProvider.teardown_classD   s   € àŸœˆIÙŽKó (r   c                	óF  € ^ RI p\        P                  ! V4      p. R	Op\        VP	                  R4      4      V8X  g   Q hRR.p\        VP	                  R4      4      V8X  g   Q h\        VP	                  R4      4      V8X  g   Q hVP	                  R4      . 8X  g   Q hVP	                  R4      . 8X  g   Q h^ RIp\        P                  ! V4      p\        VP	                  R4      4      V8X  g   Q hVP	                  R4      . 8X  g   Q hVP	                  R4      . 8X  g   Q hR# )
r   Nr&   Ú z	data2.datzmod2.pyzsubdir/Únonexistentznonexistent/)r$   r#   r&   )ÚmodÚpkg_resourcesÚZipProviderÚsortedÚresource_listdirÚmod2)r   rB   ÚzpÚexpected_rootÚexpected_subdirrG   Úzp2s   &      r   Útest_resource_listdirÚ%TestZipProvider.test_resource_listdirI   s  € Ûä×&Ò& sÓ+ˆâ8ˆÜ�b×)Ñ)¨"Ó-Ó.°-Ô?Ð?Ð?à&¨	Ð2ˆÜ�b×)Ñ)¨(Ó3Ó4¸ÔGÐGÐGÜ�b×)Ñ)¨)Ó4Ó5¸ÔHÐHÐHà×"Ñ" =Ó1°RÔ7Ð7Ð7Ø×"Ñ" >Ó2°bÔ8Ð8Ð8ãä×'Ò'¨Ó-ˆä�c×*Ñ*¨2Ó.Ó/°?ÔBÐBÐBà×#Ñ# HÓ-°Ô3Ð3Ð3Ø×#Ñ# IÓ.°"Ô4Ð4Ò4r   c                ó¾  € ^ RI p\        P                  ! 4       p\        P                  ! V4      pVP	                  VR4      p\
        P
                  P                  \        P                  ! V4      P                  4      pWPP                  8X  g   Q h\        VRRR7      pVP                  R4       VP                  4        V P                  P                  4       p\        P                  ! WGV34       VP	                  VR4      p\        VRR7      ;_uu_ 4       pVP!                  4       R8X  g   Q h RRR4       VP#                  4        R#   + '       g   i     L"; i)zô
If a previous call to get_resource_filename has saved the file, but
the file has been subsequently mutated with different file of the
same size and modification time, it should not be overwritten on a
subsequent call to get_resource_filename.
Nr$   r"   úutf-8©Úencodingzhello, world?r%   )rB   rC   ÚResourceManagerrD   Úget_resource_filenameÚdatetimeÚfromtimestampr   ÚstatÚst_mtimer-   ÚopenÚwriter1   Ú	timestampÚutimeÚreadÚcleanup_resources)r   rB   ÚmanagerrH   r,   ÚactualÚfÚtss   &       r   Ú)test_resource_filename_rewrites_on_changeÚ9TestZipProvider.test_resource_filename_rewrites_on_changea   s   € ó 	ä×/Ò/Ó1ˆÜ×&Ò& sÓ+ˆØ×+Ñ+¨G°ZÓ@ˆÜ×"Ñ"×0Ñ0´·²¸Ó1B×1KÑ1KÓLˆØŸ™Ô&Ð&Ð&Ü�˜3¨Ô1ˆØ	�‰�Ô Ø	�‰Œ	Ø�]‰]×$Ñ$Ó&ˆÜ
�Š� ˜8Ô$Ø×+Ñ+¨G°ZÓ@ˆÜ�( W×-Õ-°Ø—6‘6“8˜Ô.Ð.Ñ.÷ .à×!Ñ!Ö#÷ .×-ús   ÄEÅE	r   N)r   r   r   r   r   Ú__annotations__rT   r-   Úclassmethodr9   r=   rL   rb   r   r   r   r   r   r       sZ   ‡ Ø#%€JÐ Ó%à× Ò   q¨"¨b°"°aÓ8€HØ.àñ4ó ð4ð: ñó ðò5ö0$r   r   c                  ó*   € ] tR t^ztR tR t R tRtR# )ÚTestResourceManagerc                	óÆ   € \         P                  ! 4       pVP                  R 4      p\        \	        V4      4      pRV,           p\        V\        4      '       g   Q V4       hR# )Úfooz%Unexpected type from get_cache_path: N)rC   rR   Úget_cache_pathÚstrÚtypeÚ
isinstance)r   Úmgrr   Útype_Úmessages   &    r   Útest_get_cache_pathÚ'TestResourceManager.test_get_cache_path{   sO   € Ü×+Ò+Ó-ˆØ×!Ñ! %Ó(ˆÜ”D˜“J“ˆØ9¸EÕAˆÜ˜$¤×$Ò$Ð- gÓ-Ò$r   c                	ó˜  a€ \         P                  3V3R  llo. Sn        \         P                  ! 4       pVP	                  \        V4      4       \        P                  P                  R4      p\        P                  P                  \         RSR7      ;_uu_ 4        VP                  V4       RRR4       SP                  p\        V4      ^8X  g   Q hV^ ,          P                  \        P                  4      RR RR.8X  g   Q hV^,          P                  \        P                  4      RR R.8X  g   Q hR#   + '       g   i     L“; i)	c                óŠ   <€ SP                   P                  V 4       V! V 4      pV'       g   \        P                  ! V 4       V# r   )Údirnamesr2   r   Úmakedirs)ÚdirnameÚunpatched_isdirÚwas_dirÚpatched_isdirs   && €r   rz   ÚCTestResourceManager.test_get_cache_path_race.<locals>.patched_isdir„   s5   ø€ Ø×"Ñ"×)Ñ)¨'Ô2á% gÓ.ˆGßÜ—’˜GÔ$ØˆNr   ri   ÚbarÚisdir)ÚnewN)ri   r|   Úbazéþÿÿÿéÿÿÿÿ)rC   r}   ru   rR   Úset_extraction_pathrk   r   Úsepr4   r   ÚpatchÚobjectrj   ÚlenÚsplit)r   Útmpdirrn   Úarchive_nameÚcalled_dirnamesrz   s   &&   @r   Útest_get_cache_path_raceÚ,TestResourceManager.test_get_cache_path_race‚   s  ø€ ä3@×3FÑ3F÷ 	ð "$ˆÔô ×+Ò+Ó-ˆØ×Ñ¤ F£Ô,ä—v‘v—{‘{Ð#8Ó9ˆÜ�Z‰Z×Ñœ}¨g¸=Ð×IÕIØ×Ñ˜|Ô,÷ Jð (×0Ñ0ˆÜ�?Ó# qÔ(Ð(Ð(Ø˜qÕ!×'Ñ'¬¯©Ó/°°Ð4¸À¸ÔFÐFÐFØ˜qÕ!×'Ñ'¬¯©Ó/°°Ð4¸¸Ô?Ð?Ò?÷ J×Iús   ÂD9Ä9E		c                óz   € Rp\         P                  RRP                  V4      .p\        P                  ! V4       R# )zx
In a separate Python environment, import pkg_resources and assert
that action doesn't cause setuptools to be imported.
z-cz; N)zimport pkg_resourcesz
import syszAassert "setuptools" not in sys.modules, "setuptools was imported")r   Ú
executabler4   Ú
subprocessÚ
check_call)r   ÚlinesÚcmds   &  r   Útest_setuptools_not_importedÚ0TestResourceManager.test_setuptools_not_imported¢   s2   € ð

ˆô
 �~‰~˜t T§Y¡Y¨uÓ%5Ð6ˆÜ×Ò˜cÖ"r   r   N)r   r   r   r   rq   r‹   r“   r   r   r   r   rg   rg   z   s   † ò.ò@ð8ö#r   rg   c                ó8  € \         P                  P                  V 4      p\         P                  ! V4       \	        V R4      ;_uu_ 4       pVP                  V4       RRR4       \        \        P                  ! V4      4      pVw  pV#   + '       g   i     L5; i)aj  
Make a test Distribution object, and return it.

:param metadata_path: the path to the metadata file that should be
    created. This should be inside a distribution directory that should
    also be created. For example, an argument value might end with
    "<project>.dist-info/METADATA".
:param metadata: the desired contents of the metadata file, as bytes.
ÚwbN)	r   r   rw   ÚmkdirrX   rY   ÚlistrC   Údistributions_from_metadata)Úmetadata_pathÚmetadataÚdist_dirr`   ÚdistsÚdists   &&    r   Úmake_test_distributionrŸ   °   sl   € ô �w‰w�‰˜}Ó-€HÜ‡H‚HˆXÔÜ	ˆm˜T×	"Ô	" aØ	�‰�Ô÷ 
#ä”×:Ò:¸8ÓDÓE€EØ�G€Tà€K÷ 
#×	"ús   Á
B	Â	B	c                óÊ  € Rp\         P                  P                  \        V 4      RV4      pRP	                  R4      p\        W#R7      p\        P                  ! \        4      ;_uu_ 4       pVP                  V4       RRR4       XP                  p\        V4      pRpW‡9   g   Q RV 24       hVP                  V4      '       g   Q RV 24       hR#   + '       g   i     L\; i)	zA
Test a metadata file with bytes that can't be decoded as utf-8.
ÚMETADATAzfoo.dist-infou   nÃ©ez
iso-8859-1)r›   Nz`codec can't decode byte 0xe9 in position 1: invalid continuation byte in METADATA file at path: zactual: )r   r   r4   rk   ÚencoderŸ   ÚpytestÚraisesÚUnicodeDecodeErrorÚget_metadataÚvalueÚendswith)	rˆ   r,   rš   r›   rž   ÚexcinfoÚexcr_   Úexpecteds	   &        r   Útest_get_metadata__bad_utf8r¬   Ä   sÂ   € ð €Hä—G‘G—L‘L¤ V£¨o¸xÓH€Mà�}‰}˜\Ó*€HÜ! -ÔC€Dä	�ŠÔ)×	*Ô	*¨gØ×Ñ˜(Ô#÷ 
+ð �-‰-€CÜ�‹X€Fð	?ð ð ÔÐ2 ¨&¨Ð2Ó2ÐØ�?‰?˜=×)Ò)Ð>¨X°f°XÐ+>Ó>Ò)÷ 
+×	*ús   Á,CÃC"	c                óà   € W,          pVP                  4        VP                  R4      P                  4        \        \        P
                  ! V4      4      p\        V4      ^8X  g   Q hVw  pWB3# )zF
Create a distribution directory with no file containing the version.
ztemp.txt)Ú
ensure_dirr4   Úensurer˜   rC   r™   r†   )rˆ   Úbasenamerœ   r�   rž   s   &&   r   Úmake_distribution_no_versionr±   Þ   sc   € ð Õ €HØ×ÑÔð ‡M�M�*Ó×$Ñ$Ô&ä”×:Ò:¸8ÓDÓE€EÜˆu‹:˜Œ?Ðˆ?Ø�G€Tàˆ>Ðr   zegg-infozPKG-INFOz	dist-infor¡   :Né   NÚfinalz/https://github.com/python/cpython/issues/103632©Úreasonc                óð  € RV 2p\        W4      w  rVRV R2p\        P                  P                  Wb4      p\        P
                  ! \        4      ;_uu_ 4       p	VP                   RRR4       \        X	P                  4      p
Wz9   g   Q \        Wz34      4       hV	P                  P                  w  rµW{9   g   Q hW‹9   g   Q \        W‹34      4       h\        V4      VJ g   Q hR#   + '       g   i     L†; i)zA
Test Distribution.version when the "Version" header is missing.
zfoo.z!Missing 'Version:' header and/or z file at path: N)r±   r   r   r4   r£   r¤   Ú
ValueErrorÚversionrk   r§   Úargsrl   )rˆ   r    Úexpected_filenameÚexpected_dist_typer°   rž   rœ   Úexpected_textrš   r©   ÚerrÚmsgs   &&&&        r   Ú!test_distribution_version_missingr¿   ï   sâ   € ð" �f�Xˆ€HÜ1°&ÓC�N€Dð ,Ð,=Ð+>¸oÐNð ô —G‘G—L‘L Ó=€Mô 
�Š”z×	"Ô	" gØ�Š÷ 
#ô ˆg�m‰mÓ
€Cð ÔÐ:¤ mÐ%9Ó!:Ó:Ðð —‘×"Ñ"�I€CØÔÐÐàÔÐ:¤ mÐ%9Ó!:Ó:ÐÜ�‹:Ð+Ó+Ð+Ò+÷ 
#×	"ús   ÁC%Ã%C5	c                 óô   € \        R4      p \        P                  ! \        4      ;_uu_ 4       pV P                   RRR4       XP
                  P                  w  r RpW#8X  g   Q hR#   + '       g   i     L4; i)z`
Test Distribution.version when the "Version" header is missing and
the path can't be detected.
z/fooNzJMissing 'Version:' header and/or PKG-INFO file at path: [could not detect])r   r£   r¤   r·   r¸   r§   r¹   )rž   r©   r¾   r«   s       r   Ú1test_distribution_version_missing_undetected_pathrÁ     s[   € ô ˜Ó€DÜ	�Š”z×	"Ô	" gØ�Š÷ 
#ð —‘×"Ñ"�I€CàTð ð Œ?ÐŠ?÷ 
#×	"ús   ®A'Á'A7	ÚonlyFTc                óœ   € V R,          pVP                  4        \        P                  ! \        V 4      \        V4      V4      '       d   Q hR# )z5Test path containing a file with dist-info extension.zfoobar.dist-infoN)ÚtouchrC   Údist_factoryrk   )Útmp_pathrÂ   Ú	dist_infos   && r   Útest_dist_info_is_not_dirrÈ   /  s?   € ð Ð-Õ-€IØ‡O�OÔÜ×)Ò)¬#¨h«-¼¸Y»È×NÒNÐNÐNÑNr   c                óè  aa€ \         P                  oV P                  R\        P                  ! RR7      4       \        SR,          R4      ;_uu_ 4       p\
        P                  ! RR/V4       RRR4       V P                  R\        P                  ! R	R7      4       VV3R
 lp\        P                  ! R\        P                  ! VR7      4      ;_uu_ 4       p\        P                  P                  4        \        P                  ! 4       RR.8X  g   Q h\        P                  P                  4        RRR4       XP                  4        R#   + '       g   i     Lç; i  + '       g   i     L5; i)z-Regression test for pkg_resources._macos_verszplatform.mac_ver)Úreturn_valueú
fake.plistr–   ÚProductVersionz11.4Nzos.path.existsTc                ó*   <€ S! SR ,          .VO5/ VB # )rË   r   )Úfiler¹   ÚkwargsÚ	orig_openrÆ   s   &*,€€r   Ú	fake_openÚ+test_macos_vers_fallback.<locals>.fake_openE  s   ø€ Ù˜ LÕ0ÐB°4ÒB¸6ÑBÐBr   zbuiltins.open)Úside_effectÚ11Ú4)r@   r   r@   )ÚbuiltinsrX   Úsetattrr   ÚMockÚplistlibÚdumpr„   rC   Ú_macos_versÚcache_clearÚassert_called)ÚmonkeypatchrÆ   Ú	fake_filerÑ   ÚmrÐ   s   &f   @r   Útest_macos_vers_fallbackrá   7  sû   ù€ ä—‘€Ið ×ÑÐ*¬D¯IªIÀ<Ô,PÔQô 
ˆh˜Õ% t×	,Ô	,°	Ü�ŠÐ'¨Ð0°)Ô<÷ 
-ð ×ÑÐ(¬$¯)ª)ÀÔ*FÔGöCô 
�Š�O¤T§Y¢Y¸9Ô%E×	FÔ	FÈ!Ü×!Ñ!×-Ñ-Ô/Ü×(Ò(Ó*¨t°S¨kÔ9Ð9Ð9Ü×!Ñ!×-Ñ-Ô/÷ 
Gð
 ‡O�OÖ÷ 
-×	,ú÷ 
G×	Fús   ÁEÃAE!ÅE	Å!E1	c                  ó4  € ] tR tRt]P
                  R 4       tR tR t]P                  P                  R. RO4      R 4       t]P                  P                  ]P                  P                  R4      ]P                  P                  R4      8g  RR	7      ]P                  P                  RR.4      R
 4       4       t]P                  P                  ]P                  P"                  R8g  RR	7      ]P                  P                  R. RO4      R 4       4       tRtR# )ÚTestDeepVersionLookupDistutilsiQ  c                ó"  a€  ! R R\         4      pV! S4      pSP                  \        P                  4       Rp\	        V3R lV 4       4      Vn        \        \        \        P                  VP
                  P                  4       4      4       V# )zY
Create a package environment, similar to a virtualenv,
in which packages are installed.
c                  ó   € ] tR tRtRtR# )Ú7TestDeepVersionLookupDistutils.env.<locals>.EnvironmentiY  r   N)r   r   r   r   r   r   r   r   ÚEnvironmentræ   Y  s   † Ûr   rç   c              3  óJ   <"  € T F  q\        SV,          4      3x € K  	  R # 5ir   )rk   )Ú.0rw   rˆ   s   & €r   Ú	<genexpr>Ú5TestDeepVersionLookupDistutils.env.<locals>.<genexpr>_  s   øé € ÐNÉ¸g¤3 v°Õ'7Ó#8Õ9Ëùs   ƒ #)ÚhomeÚlibÚscriptsÚdatazegg-base)rk   ÚchmodrV   ÚS_IRWXUÚdictÚpathsr˜   Úmapr   r—   Úvalues)r   rˆ   rç   ÚenvÚsubss   &f   r   rö   Ú"TestDeepVersionLookupDistutils.envR  sg   ø€ ô	œ#ô 	ñ ˜&Ó!ˆØ�‰”T—\‘\Ô"Ø;ˆÜÔNÉÓNÓNˆŒ	ÜŒS”—‘˜3Ÿ9™9×+Ñ+Ó-Ó.Ô/Øˆ
r   c                óD  € Rp\        RW#R7      p\        P                  P                  V4      p\        P                  P
                  P                  V4      pVP                  4        VP                  R,          Vn        VP                  4        VP                  4        R# )zR
Create a foo package installed (distutils-style) to env.paths['lib']
as version.
u&   This package has unicode metadata! â�„ri   )r3   r¸   Úlong_descriptionrí   N)rò   Ú	distutilsrž   r   ÚcommandÚinstall_egg_infoÚinitialize_optionsró   Úinstall_dirÚfinalize_optionsÚrun)r   rö   r¸   ÚldÚattrsrž   Úiei_cmds   &&&    r   Úcreate_foo_pkgÚ-TestDeepVersionLookupDistutils.create_foo_pkgc  sw   € ð
 6ˆÜ˜%¨ÔFˆÜ�~‰~×*Ñ*¨5Ó1ˆÜ×#Ñ#×4Ñ4×EÑEÀdÓKˆØ×"Ñ"Ô$Ø!Ÿi™i¨Õ.ˆÔØ× Ñ Ô"Ø�‰Žr   c                	óþ   € R pV P                  W4       \        P                  P                  R4      p\        P                  ! VP
                  R,          .4      P                  V4      pVP                  V8X  g   Q hR# )z1.11.0.dev0+2329eaezfoo>=1.9rí   N)r  rC   ÚRequirementÚparseÚ
WorkingSetró   Úfindr¸   )r   rö   r¸   Úreqrž   s   &&   r   Ú#test_version_resolved_from_egg_infoÚBTestDeepVersionLookupDistutils.test_version_resolved_from_egg_infoq  sf   € Ø'ˆØ×Ñ˜CÔ)ô ×'Ñ'×-Ñ-¨jÓ9ˆÜ×'Ò'¨¯©°5Õ)9Ð(:Ó;×@Ñ@ÀÓEˆØ�|‰|˜wÔ&Ð&Ò&r   c                ón   € \         P                  ! V4      p\         P                  ! V4      pW48X  g   Q hR# )zUEnsure the trailing slash is cleaned for path comparison.

See pypa/setuptools#1519.
N©rC   Únormalize_path©r   ÚunnormalizedÚ
normalizedÚresult_from_unnormalizedÚresult_from_normalizeds   &&&  r   Ú test_normalize_path_trailing_sepÚ?TestDeepVersionLookupDistutils.test_normalize_path_trailing_sep{  s2   € ô $1×#?Ò#?ÀÓ#MÐ Ü!.×!=Ò!=¸jÓ!IÐØ'ÔAÐAÒAr   ÚAÚaz%Testing case-insensitive filesystems.r´   c                ón   € \         P                  ! V4      p\         P                  ! V4      pW48X  g   Q hR# )z@Ensure mixed case is normalized on case-insensitive filesystems.Nr  r  s   &&&  r   Útest_normalize_path_normcaseÚ;TestDeepVersionLookupDistutils.test_normalize_path_normcase�  s2   € ô $1×#?Ò#?ÀÓ#MÐ Ü!.×!=Ò!=¸jÓ!IÐØ'ÔAÐAÒAr   Ú\z5Testing systems using backslashes as path separators.c                ód   € \         P                  ! V4      pVP                  V4      '       g   Q hR# )z;Ensure path seps are cleaned on backslash path sep systems.N)rC   r  r¨   )r   r  r«   Úresults   &&& r   Ú!test_normalize_path_backslash_sepÚ@TestDeepVersionLookupDistutils.test_normalize_path_backslash_sep�  s)   € ô ×-Ò-¨lÓ;ˆØ�‰˜x×(Ò(Ð(Ò(r   r   N)r  r  ))ri   ri   )zfoo/ri   )úfoo/barr#  )zfoo/bar/r#  )z
MiXeD/CasEz
mixed/case)r  r«   ))zforward/slashúforward\slash)zforward/slash/r$  )zbackward\slash\zbackward\slash)r   r   r   r   r£   Úfixturerö   r  r  ÚmarkÚparametrizer  Úskipifr   r   Únormcaser  rƒ   r!  r   r   r   r   rã   rã   Q  s"  † Ø‡^�^ñó ðò ò'ð ‡[�[×ÑØ&ò	
óñBóðBð ‡[�[×ÑØ
�‰×Ñ˜Ó §¡×!1Ñ!1°#Ó!6Ñ6Ø6ð ó ð ‡[�[×ÑØ&à(ð	
óñBóó	ðBð ‡[�[×ÑØ
�‰�‰�tÑØFð ó ð ‡[�[×ÑØ$ò	
óñ)óó	ô)r   rã   c                  óx   € ] tR tRtR tRRRRRRR	R
/t]P                  P                  R. RO4      R 4       t	Rt
R# )ÚTestWorkdirRequirei¯  c                	ón  € VR ,          pVP                  4        V P                  P                  4        FQ  w  rVWE,          pVP                  P                  RRR7       VP	                  \
        P                  ! V4      RR7       KS  	  VP                  \        RV.4       \        P                  ! V4      # )zsite-packagesT)Úexist_okÚparentsrO   rP   r   )r—   ÚFILESÚitemsÚparentÚ
write_textÚinspectÚcleandocr×   r   r   Úfspath)r   rÆ   rÞ   Ú
dist_filesÚsite_packagesrÎ   Úcontentr   s   &&&&    r   Úfake_site_packagesÚ%TestWorkdirRequire.fake_site_packages°  s�   € Ø  ?Õ2ˆØ×ÑÔØ!ŸZ™Z×-Ñ-Ö/‰MˆDØ Õ'ˆDØ�K‰K×Ñ t°TÐÔ:Ø�O‰OœG×,Ò,¨WÓ5ÀˆOÖHñ 0ð
 	×ÑœC ¨-¨Ô9Ü�yŠy˜Ó'Ð'r   z!pkg1_mod-1.2.3.dist-info/METADATAze
            Metadata-Version: 2.4
            Name: pkg1.mod
            Version: 1.2.3
            z pkg2.mod-0.42.dist-info/METADATAzd
            Metadata-Version: 2.1
            Name: pkg2.mod
            Version: 0.42
            zpkg3_mod.egg-info/PKG-INFOzE
            Name: pkg3.mod
            Version: 1.2.3.4
            zpkg4.mod.egg-info/PKG-INFOzD
            Name: pkg4.mod
            Version: 0.42.1
            c                	óŽ  € V P                  WV P                  4      p\        P                  ! V.4      pWDP	                  R R4      3 Fz  pVP                  V4      w  pVP                  V8X  g   Q h\        P                  P                  \        P                  P                  VP                  V.4      V4      '       d   Kz  Q h	  R# )Ú.Ú-N)r9  r/  rC   r
  ÚreplaceÚrequirer¸   r   r   ÚsamefileÚ
commonpathÚlocation)	r   rÆ   rÞ   r¸   Úrequirementr7  Úwsr  rž   s	   &&&&&    r   Ú test_require_non_normalised_nameÚ3TestWorkdirRequire.test_require_non_normalised_nameÐ  s¦   € ð ×/Ñ/°ÀtÇzÁzÓRˆÜ×%Ò% } oÓ6ˆà×!4Ñ!4°S¸#Ó!>Ó?ˆCØ—Z‘Z “_‰FˆTØ—<‘< 7Ô*Ð*Ð*Ü—7‘7×#Ñ#Ü—‘×"Ñ" D§M¡M°=Ð#AÓBÀM÷ô ð ð ó @r   r   N)r¸   rC  ))z1.2.3zpkg1.mod>=1)z0.42zpkg2.mod>=0.4)z1.2.3.4zpkg3.mod<=2)z0.42.1zpkg4.mod>0.2,<1)r   r   r   r   r9  r/  r£   r&  r'  rE  r   r   r   r   r+  r+  ¯  sa   † ò	(ð 	,ð .ð
 	+ð -ð
 	%ð 'ð 	%ð 'ð€Eð* ‡[�[×ÑØ"ò	
óñóôr   r+  )r    rº   r»   )é   é   )(Ú
__future__r   rÖ   rT   r3  r   rÙ   rV   r�   r   r'   r)   Úunittestr   r£   rC   r   r   r   Ú"distutils.command.install_egg_inforû   Údistutils.distrk   r	   r   rg   rŸ   r¬   r±   r&  r'  ÚxfailÚversion_infoÚreleaselevelr¿   rÁ   rÈ   rá   rã   r+  r   r   r   Ú<module>rP     sš  ðÝ "ã Û Û Û 	Û Û Û Û 
Û Û Ý ã ã ß QÑ Qã )Û ô�ô ÷W$ñ W$÷t3#ñ 3#òlò(?ò4ð" ‡�×ÑØ9à	�ZÐ!4Ð5Ø	�jÐ"6Ð7ðóð ‡�×ÑØ×Ñ�RÕ˜GÑ#×PÐP¨×(8Ñ(8×(EÑ(EÈÑ(PØ<ð ó ñ,ó	óð,ð> ‡�×ÑØ×Ñ�RÕ˜GÑ#×PÐP¨×(8Ñ(8×(EÑ(EÈÑ(PØ<ð ó ñó	ðð$ ‡�×Ñ˜ %¨ Ó/ñOó 0ðOò÷4[)ñ [)÷|6ó 6r   