Ë
    –2ÚiH  ã                   óp  — d Z ddlZddlZddlZddlZddlZddlZddlZddlZddl	m
Z
 ddlZddlmZ ddlmZmZ ddlmZ ddlZddlZdej,                  dk(  z  dz   Z G d	„ d
e«      Z G d„ de«      Zej4                  d„ «       Zej8                  ej:                  j=                  d«      ej:                  j=                  d«       G d„ dej>                  «      «       «       «       Z ej:                  j=                  d«      ej:                  j=                  d«       G d„ dej>                  «      «       «       Z!y)zTests for distutils.dist.é    N)ÚCommand)ÚDistributionÚfix_help_options)Úsupportú.Úposixzpydistutils.cfgc                   ó   — e Zd ZdZdgZd„ Zy)Ú	test_distz#Sample distutils extension command.)zsample-option=ÚSz	help textc                 ó   — d | _         y ©N)Úsample_option©Úselfs    ú\/var/www/html/acx/venv/lib/python3.12/site-packages/setuptools/_distutils/tests/test_dist.pyÚinitialize_optionsztest_dist.initialize_options   s
   € Ø!ˆÕó    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úuser_optionsr   © r   r   r
   r
      s   „ Ù-ð 	-ð€Ló"r   r
   c                   ó   — e Zd ZdZd„ Zy)ÚTestDistributionz²Distribution subclasses that avoids the default search for
    configuration files.

    The ._config_files attribute must be set before
    .parse_config_files() is called.
    c                 ó   — | j                   S r   )Ú_config_filesr   s    r   Úfind_config_filesz"TestDistribution.find_config_files*   s   € Ø×!Ñ!Ð!r   N)r   r   r   r   r   r   r   r   r   r   "   s   „ ñó"r   r   c                  ó*   — t         j                  dd …= y )Né   )ÚsysÚargvr   r   r   Ú
clear_argvr#   .   s   € ä�‰�‘‰r   Úsave_envÚ	save_argvc                   óü   — e Zd Zdd„Zd„ Zd„ Zej                  j                  de	j                  j                  vd¬«      d„ «       Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zej                  j                  dd¬«      d„ «       Zy)ÚTestDistributionBehaviorc                 óh   — t        «       }||_        |j                  «        |j                  «        |S r   )r   r   Úparse_config_filesÚparse_command_line)r   ÚconfigfilesÚds      r   Úcreate_distributionz,TestDistributionBehavior.create_distribution7   s.   € ÜÓˆØ%ˆŒØ	×ÑÔØ	×ÑÔØˆr   c                 óŽ   — t         j                  j                  d«       | j                  «       }|j	                  «       dgk(  sJ ‚y )NÚbuildúdistutils.command)r!   r"   Úappendr-   Úget_command_packages)r   r#   r,   s      r   Ú!test_command_packages_unspecifiedz:TestDistributionBehavior.test_command_packages_unspecified>   s;   € Ü�‰�‰˜Ô Ø×$Ñ$Ó&ˆØ×%Ñ%Ó'Ð,?Ð+@Ò@Ð@Ñ@r   c                 ó   — ddl m} t        j                  j	                  g d¢«       | j                  «       }|j                  «       g d¢k(  sJ ‚|j                  d«      }t        ||«      sJ ‚|j                  dk(  sJ ‚y )Nr   )r
   )ú--command-packageszfoo.bar,distutils.testsr
   z
-Ssometext)r0   úfoo.barzdistutils.testsr
   Úsometext)
Údistutils.tests.test_distr
   r!   r"   Úextendr-   r2   Úget_command_objÚ
isinstancer   )r   r#   r
   r,   Úcmds        r   Útest_command_packages_cmdlinez6TestDistributionBehavior.test_command_packages_cmdlineC   s€   € Ý7ä�‰�‰ò 
ô 	ð ×$Ñ$Ó&ˆà×%Ñ%Ó'ò ,
ò 
ð 	
ð 
ð
 ×Ñ Ó,ˆÜ˜#˜yÔ)Ð)Ð)Ø× Ñ  JÒ.Ð.Ñ.r   Ú	distutilsz;Cannot test when virtualenv has monkey-patched Distribution)Úreasonc                 óÎ  — t         j                  j                  d«       t        |dz  «      }d}t        j
                  j                  |d|› d|› d|› d|› d|› d	|› d
|› d|› d|› d|› d|› d|› d|› d�i«       t        j                  j                  t         dd¬«      5  | j                  |g«      }d d d «       ||f}|||||||||||||dœ}t        j                  j                  d«      j                  «       «      t        |j                  «       «      k(  sJ ‚|j                  j                  d«      j                  «       D ]  \  }}	|	||   k(  rŒJ ‚ t        j                  j                  t         dd¬«      5  | j                  |g«      }d d d «       |j                  «       D ]"  }||j                  j                  di «      vrŒ"J ‚ y # 1 sw Y   �ŒxY w# 1 sw Y   ŒLxY w)NÚinstallÚfilez/somedirzB
                    [install]
                    install-base = z(
                    install-platbase = z#
                    install-lib = z'
                    install-platlib = z'
                    install-purelib = z'
                    install-headers = z'
                    install-scripts = z$
                    install-data = z
                    prefix = z#
                    exec-prefix = z
                    home = z
                    user = z
                    root = z
                    z/a)ÚprefixÚbase_prefix)Úinstall_baseÚinstall_platbaseÚinstall_libÚinstall_platlibÚinstall_purelibÚinstall_headersÚinstall_scriptsÚinstall_datarC   Úexec_prefixÚhomeÚuserÚrootz/b)r!   r"   r1   ÚstrÚjaracoÚpathr/   ÚmockÚpatchÚmultipler-   ÚsortedÚcommand_optionsÚgetÚkeysÚitems)
r   Útmp_pathr#   rB   Úfakepathr,   Úoption_tupleÚresult_dictÚkeyÚvalues
             r   Útest_venv_install_optionsz2TestDistributionBehavior.test_venv_install_optionsW   sU  € ô
 	�‰�‰˜	Ô"Ü�8˜fÑ$Ó%ˆàˆä�‰×ÑØð $à$, :ð .(Ø(0 zð 2#Ø#+ *ð -'Ø'/ jð 1'Ø'/ jð 1'Ø'/ jð 1'Ø'/ jð 1$Ø$, :ð .Ø&˜Zð (#Ø#+ *ð -Ø$˜:ð &Ø$˜:ð &Ø$˜:ð &ðð
ô 	ô( �Z‰Z× Ñ ¤¨T¸tÐ ÓDñ 	1Ø×(Ñ(¨$¨Ó0ˆA÷	1ð ˜hÐ'ˆð )Ø ,Ø'Ø+Ø+Ø+Ø+Ø(Ø"Ø'Ø Ø Ø ñ
ˆô  �a×'Ñ'×+Ñ+¨IÓ6×;Ñ;Ó=Ó>Ä&Ø×ÑÓóC
ò 
ð 	
ð 
ð ×+Ñ+×/Ñ/°	Ó:×@Ñ@ÓBò 	-‰JˆC�Ø˜K¨Ñ,Ó,Ð,Ð,ð	-ô �Z‰Z× Ñ ¤¨T¸tÐ ÓDñ 	1Ø×(Ñ(¨$¨Ó0ˆA÷	1ð ×#Ñ#Ó%ò 	CˆCØ˜a×/Ñ/×3Ñ3°I¸rÓBÒBÐBÐBñ	C÷A	1ñ 	1ú÷:	1ð 	1ús   ÂGÅ=GÇGÇG$c                 óè  — t         j                  j                  d«       t        |dz  «      }t        j
                  j                  |di«       | j                  |g«      }|j                  «       g d¢k(  sJ ‚g d¢t         j                  dd  | j                  |g«      }|j                  «       ddgk(  sJ ‚g d	¢t         j                  dd  | j                  |g«      }|j                  «       dgk(  sJ ‚y )
Nr/   rB   zh
                    [global]
                    command_packages = foo.bar, splat
                    )r0   r6   Úsplat)r5   Úsporkr/   r    r0   re   )r5   Ú r/   )	r!   r"   r1   rQ   rR   rS   r/   r-   r2   )r   r\   r#   rB   r,   s        r   Ú test_command_packages_configfilez9TestDistributionBehavior.test_command_packages_configfile˜   së   € Ü�‰�‰˜Ô Ü�8˜fÑ$Ó%ˆÜ�‰×ÑØð ð
ô 	ð ×$Ñ$ d VÓ,ˆØ×%Ñ%Ó'Ò+TÒTÐTÐTò @Œ�‰��ˆØ×$Ñ$ d VÓ,ˆØ×%Ñ%Ó'Ð,?ÀÐ+IÒIÐIÐIò ;Œ�‰��ˆØ×$Ñ$ d VÓ,ˆØ×%Ñ%Ó'Ð,?Ð+@Ò@Ð@Ñ@r   c                 ó  ‡— g Šˆfd„}|j                  t        j                  t        t        dt        j
                  «      «       |t        _        t        ddddi dœ¬«      }t        ‰«      dk(  sJ ‚dt        |«      vsJ ‚y )	Nc                 ó(   •— ‰j                  | «       y r   )r1   )ÚmsgÚwarnss    €r   Ú_warnz:TestDistributionBehavior.test_empty_options.<locals>._warn·   s   ø€ Ø�L‰L˜Õr   ÚwarnÚxxxÚxxxx)ÚauthorÚnameÚversionÚurlÚoptions©Úattrsr   rt   )	ÚaddfinalizerÚ	functoolsÚpartialÚsetattrÚwarningsrm   r   ÚlenÚdir)r   Úrequestrl   Údistrk   s       @r   Útest_empty_optionsz+TestDistributionBehavior.test_empty_options°   s‚   ø€ ð
 ˆô	ð 	×ÑÜ×Ñœg¤x°¼¿¹ÓGô	
ð ŒŒÜàØØ ØØñô
ˆô �5‹z˜QŠÐˆØ¤ D£	Ñ)Ð)Ñ)r   c                 ól  — dddœ}t        |¬«      }|j                  «        |j                  j                  ddgk(  sJ ‚|j                  j                  ddgk(  sJ ‚dddœ}t        |¬«      }|j                  «        |j                  j                  dgk(  sJ ‚|j                  j                  dgk(  sJ ‚y )Núone,two)ÚkeywordsÚ	platformsru   ÚoneÚtwozfoo bar)r   Úfinalize_optionsÚmetadatar„   rƒ   ©r   rv   r   s      r   Útest_finalize_optionsz.TestDistributionBehavior.test_finalize_optionsË   s°   € Ø&°YÑ?ˆä %Ô(ˆØ×ÑÔð �}‰}×&Ñ&¨5°%¨.Ò8Ð8Ð8Ø�}‰}×%Ñ%¨%°¨Ò7Ð7Ð7à&°YÑ?ˆÜ %Ô(ˆØ×ÑÔØ�}‰}×&Ñ&¨9¨+Ò5Ð5Ð5Ø�}‰}×%Ñ%¨)¨Ò4Ð4Ñ4r   c                 óÈ   — t        «       }|j                  �J ‚|j                  «       }|dgk(  sJ ‚|j                  dgk(  sJ ‚d|_        |j                  «       }|g d¢k(  sJ ‚y )Nr0   r‚   )r0   r…   r†   )r   Úcommand_packagesr2   )r   r   Úcmdss      r   Útest_get_command_packagesz2TestDistributionBehavior.test_get_command_packagesÛ   sx   € Ü‹~ˆØ×$Ñ$Ð,Ð,Ð,Ø×(Ñ(Ó*ˆØÐ+Ð,Ò,Ð,Ð,Ø×$Ñ$Ð)<Ð(=Ò=Ð=Ð=à )ˆÔØ×(Ñ(Ó*ˆØÒ:Ò:Ð:Ñ:r   c                 óš   — t        «       }t        j                  t        «      5  |j	                  dd¬«       d d d «       y # 1 sw Y   y xY w)NÚokÚok2)Úlevel)r   ÚpytestÚraisesÚ	TypeErrorÚannounce)r   r   s     r   Útest_announcez&TestDistributionBehavior.test_announceæ   s:   € ä‹~ˆÜ�]‰]œ9Ó%ñ 	-Ø�M‰M˜$ eˆMÔ,÷	-÷ 	-ñ 	-ús   ¤AÁA
c                 óú   — t         j                  j                  t        di|«       t	        «       }|j                  «       }t	        ddgi¬«      }|j                  «       }t        |«      dz
  t        |«      k(  sJ ‚y )Nz[distutils]
Úscript_argsz--no-user-cfgru   r    )rR   rS   r/   Úpydistutils_cfgr   r   r|   )r   Ú	temp_homer,   Ú	all_filesÚfiless        r   Útest_find_config_files_disablez7TestDistributionBehavior.test_find_config_files_disableì   sm   € ä�‰×Ñœ?¨OÐ<¸iÔHä‹NˆØ×'Ñ'Ó)ˆ	ä °Ð/@ÐAÔBˆØ×#Ñ#Ó%ˆô �9‹~ Ñ!¤S¨£ZÒ/Ð/Ñ/r   zplatform.system() == "Windows"z Windows does not honor chmod 000c                 ó¢   — |j                  t        «      j                  dd¬«       |j                  d«       t	        «       j                  «        y)zV
        Finding config files should not fail when directory is inaccessible.
        rf   zutf-8)Úencodingr   N)Újoinpathrš   Ú
write_textÚchmodr   r   )r   Ú	fake_homes     r   Ú'test_find_config_files_permission_errorz@TestDistributionBehavior.test_find_config_files_permission_errorù   s<   € ð 	×Ñœ?Ó+×6Ñ6°rÀGÐ6ÔLØ�‰˜ÔÜ‹×(Ñ(Õ*r   N)r   )r   r   r   r-   r3   r=   r“   ÚmarkÚskipifr   r)   rb   rg   r€   rŠ   rŽ   r—   rž   r¥   r   r   r   r'   r'   3   s¡   „ óòAò
/ð( ‡[�[×ÑØ˜<×:Ñ:×EÑEÐEØLð ó ñ;Có	ð;CòzAò0*ò65ò 	;ò-ò0ð ‡[�[×ÑØ(Ø1ð ó ñ+ó	ñ+r   r'   c                   óœ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestMetadatac                 ó€   — t        j                  «       }|j                  j                  |«       |j	                  «       S r   )ÚioÚStringIOrˆ   Úwrite_pkg_fileÚgetvalue)r   r   Úsios      r   Úformat_metadatazTestMetadata.format_metadata	  s+   € Ü�k‰k‹mˆØ�‰×$Ñ$ SÔ)Ø�|‰|‹~Ðr   c                 óÊ   — dddœ}t        |«      }| j                  |«      }d|v sJ ‚d|j                  «       vsJ ‚d|j                  «       vsJ ‚d|j                  «       vsJ ‚y )NÚpackageú1.0)rq   rr   zMetadata-Version: 1.0ú	provides:ú	requires:ú
obsoletes:)r   r°   Úlower©r   rv   r   Úmetas       r   Útest_simple_metadataz!TestMetadata.test_simple_metadata  sp   € Ø"¨uÑ5ˆÜ˜EÓ"ˆØ×#Ñ# DÓ)ˆØ&¨$Ñ.Ð.Ð.Ø $§*¡*£,Ñ.Ð.Ð.Ø $§*¡*£,Ñ.Ð.Ð.Ø 4§:¡:£<Ñ/Ð/Ñ/r   c                 ó  — ddddgdœ}t        |«      }|j                  j                  «       ddgk(  sJ ‚|j                  «       ddgk(  sJ ‚| j                  |«      }d|v sJ ‚d|j	                  «       vsJ ‚d|j	                  «       vsJ ‚y )Nr²   r³   zpackage.sub©rq   rr   ÚprovidesúMetadata-Version: 1.1rµ   r¶   )r   rˆ   Úget_providesr°   r·   r¸   s       r   Útest_provideszTestMetadata.test_provides  s¥   € àØØ" MÐ2ñ
ˆô
 ˜EÓ"ˆØ�}‰}×)Ñ)Ó+°	¸=Ð/IÒIÐIÐIØ× Ñ Ó" y°-Ð&@Ò@Ð@Ð@Ø×#Ñ# DÓ)ˆØ&¨$Ñ.Ð.Ð.Ø $§*¡*£,Ñ.Ð.Ð.Ø 4§:¡:£<Ñ/Ð/Ñ/r   c                 ó€   — t        j                  t        «      5  t        dddgdœ«       d d d «       y # 1 sw Y   y xY w)Nr²   r³   úmy.pkg (splat)r¼   ©r“   r”   Ú
ValueErrorr   r   s    r   Útest_provides_illegalz"TestMetadata.test_provides_illegal%  ó9   € Ü�]‰]œ:Ó&ñ 	ÜØ"¨uÐCSÐBTÑUô÷	÷ 	ñ 	úó   š4´=c                 ó0  — ddddgdœ}t        |«      }|j                  j                  «       ddgk(  sJ ‚|j                  «       ddgk(  sJ ‚| j                  |«      }d|v sJ ‚d|j	                  «       vsJ ‚d|v sJ ‚d	|v sJ ‚d
|j	                  «       vsJ ‚y )Nr²   r³   Úotherzanother (==1.0)©rq   rr   Úrequiresr¾   r´   zRequires: otherzRequires: another (==1.0)r¶   )r   rˆ   Úget_requiresr°   r·   r¸   s       r   Útest_requireszTestMetadata.test_requires+  sÄ   € àØØ Ð"3Ð4ñ
ˆô
 ˜EÓ"ˆØ�}‰}×)Ñ)Ó+°Ð9JÐ/KÒKÐKÐKØ× Ñ Ó" wÐ0AÐ&BÒBÐBÐBØ×#Ñ# DÓ)ˆØ&¨$Ñ.Ð.Ð.Ø $§*¡*£,Ñ.Ð.Ð.Ø  DÑ(Ð(Ð(Ø*¨dÑ2Ð2Ð2Ø 4§:¡:£<Ñ/Ð/Ñ/r   c                 ó€   — t        j                  t        «      5  t        dddgdœ«       d d d «       y # 1 sw Y   y xY w)Nr²   r³   rÂ   rÊ   rÃ   r   s    r   Útest_requires_illegalz"TestMetadata.test_requires_illegal;  rÆ   rÇ   c                 ó„   — dt        dg«      dœ}t        |«      }t        |j                  j                  t
        «      sJ ‚y )Nr²   rÉ   )rq   rË   )Úiterr   r;   rˆ   rË   Úlistr‰   s      r   Útest_requires_to_listz"TestMetadata.test_requires_to_listA  s6   € Ø"´°g°Y³Ñ@ˆÜ˜EÓ"ˆÜ˜$Ÿ-™-×0Ñ0´$Ô7Ð7Ñ7r   c                 ó0  — ddddgdœ}t        |«      }|j                  j                  «       ddgk(  sJ ‚|j                  «       ddgk(  sJ ‚| j                  |«      }d|v sJ ‚d|j	                  «       vsJ ‚d|j	                  «       vsJ ‚d	|v sJ ‚d
|v sJ ‚y )Nr²   r³   rÉ   zanother (<1.0)©rq   rr   Ú	obsoletesr¾   r´   rµ   zObsoletes: otherzObsoletes: another (<1.0))r   rˆ   Úget_obsoletesr°   r·   r¸   s       r   Útest_obsoleteszTestMetadata.test_obsoletesF  sÄ   € àØØ!Ð#3Ð4ñ
ˆô
 ˜EÓ"ˆØ�}‰}×*Ñ*Ó,°Ð:JÐ0KÒKÐKÐKØ×!Ñ!Ó#¨Ð1AÐ'BÒBÐBÐBØ×#Ñ# DÓ)ˆØ&¨$Ñ.Ð.Ð.Ø $§*¡*£,Ñ.Ð.Ð.Ø $§*¡*£,Ñ.Ð.Ð.Ø! TÑ)Ð)Ð)Ø*¨dÑ2Ð2Ñ2r   c                 ó€   — t        j                  t        «      5  t        dddgdœ«       d d d «       y # 1 sw Y   y xY w)Nr²   r³   rÂ   rÕ   rÃ   r   s    r   Útest_obsoletes_illegalz#TestMetadata.test_obsoletes_illegalV  s9   € Ü�]‰]œ:Ó&ñ 	ÜØ"¨uÐDTÐCUÑVô÷	÷ 	ñ 	úrÇ   c                 ó„   — dt        dg«      dœ}t        |«      }t        |j                  j                  t
        «      sJ ‚y )Nr²   rÉ   )rq   rÖ   )rÑ   r   r;   rˆ   rÖ   rÒ   r‰   s      r   Útest_obsoletes_to_listz#TestMetadata.test_obsoletes_to_list\  s6   € Ø"´°w°i³ÑAˆÜ˜EÓ"ˆÜ˜$Ÿ-™-×1Ñ1´4Ô8Ð8Ñ8r   c                 ó‚   — dddgdœ}t        |«      }|j                  «       dgk(  sJ ‚| j                  |«      }d|v sJ ‚y )NÚBoaú3.0ú#Programming Language :: Python :: 3©rq   rr   Úclassifiersr¾   )r   Úget_classifiersr°   r¸   s       r   Útest_classifierzTestMetadata.test_classifiera  sZ   € àØØAÐBñ
ˆô
 ˜EÓ"ˆØ×#Ñ#Ó%Ð*OÐ)PÒPÐPÐPØ×#Ñ# DÓ)ˆØ&¨$Ñ.Ð.Ñ.r   c                 óæ   — ddddœ}t        |«      }d|j                  d   v sJ ‚t        |j                  j                  t
        «      sJ ‚|j                  j                  t        |d   «      k(  sJ ‚y )NrÞ   rß   )rà   rá   úshould be a listr   râ   )r   Úmessagesr;   rˆ   râ   rÒ   ©r   Úcaplogrv   r,   s       r   Útest_classifier_invalid_typez)TestMetadata.test_classifier_invalid_typel  sq   € àØØCñ
ˆô
 ˜Óˆà! V§_¡_°QÑ%7Ñ7Ð7Ð7ä˜!Ÿ*™*×0Ñ0´$Ô7Ð7Ð7Ø�z‰z×%Ñ%¬¨e°MÑ.BÓ)CÒCÐCÑCr   c                 óX   — ddg d¢dœ}t        |«      }|j                  «       g d¢k(  sJ ‚y )NÚMontyr³   ©ÚspamÚeggszlife of brian©rq   rr   rƒ   )r   Úget_keywordsr‰   s      r   Útest_keywordszTestMetadata.test_keywordsy  s6   € àØÚ9ñ
ˆô
 ˜EÓ"ˆØ× Ñ Ó"Ò&GÒGÐGÑGr   c                 óæ   — ddddœ}t        |«      }d|j                  d   v sJ ‚t        |j                  j                  t
        «      sJ ‚|j                  j                  t        |d   «      k(  sJ ‚y )Nrì   r³   rí   rð   ræ   r   rƒ   )r   rç   r;   rˆ   rƒ   rÒ   rè   s       r   Útest_keywords_invalid_typez'TestMetadata.test_keywords_invalid_type‚  sq   € àØØ9ñ
ˆô
 ˜Óˆà! V§_¡_°QÑ%7Ñ7Ð7Ð7ä˜!Ÿ*™*×-Ñ-¬tÔ4Ð4Ð4Ø�z‰z×"Ñ"¤d¨5°Ñ+<Ó&=Ò=Ð=Ñ=r   c                 óX   — ddddgdœ}t        |«      }|j                  «       ddgk(  sJ ‚y )Nrì   r³   ú	GNU/LinuxúSome Evil Platform©rq   rr   r„   )r   Úget_platformsr‰   s      r   Útest_platformszTestMetadata.test_platforms�  sA   € àØØ%Ð';Ð<ñ
ˆô
 ˜EÓ"ˆØ×!Ñ!Ó#¨Ð5IÐ'JÒJÐJÑJr   c                 óæ   — ddddœ}t        |«      }d|j                  d   v sJ ‚t        |j                  j                  t
        «      sJ ‚|j                  j                  t        |d   «      k(  sJ ‚y )Nrì   r³   )rö   r÷   rø   ræ   r   r„   )r   rç   r;   rˆ   r„   rÒ   rè   s       r   Útest_platforms_invalid_typesz)TestMetadata.test_platforms_invalid_types˜  sq   € àØØ<ñ
ˆô
 ˜Óˆà! V§_¡_°QÑ%7Ñ7Ð7Ð7ä˜!Ÿ*™*×.Ñ.´Ô5Ð5Ð5Ø�z‰z×#Ñ#¤t¨E°+Ñ,>Ó'?Ò?Ð?Ñ?r   c                 óT   — ddddœ}t        |«      }| j                  |«      }d|v sJ ‚y )NrÞ   rß   zhttp://example.org/boa)rq   rr   Údownload_urlr¾   )r   r°   r¸   s       r   Útest_download_urlzTestMetadata.test_download_url¥  s<   € àØØ4ñ
ˆô
 ˜EÓ"ˆØ×#Ñ# DÓ)ˆØ&¨$Ñ.Ð.Ñ.r   c                 ó¢   — t        j                  d«      }dd|dœ}t        |«      }| j                  |«      }|j	                  dd«      }||v sJ ‚y )Nzc        example::
              We start here
            and continue here
          and end here.r²   r³   ©rq   rr   Úlong_descriptionz	
        ú
)ÚtextwrapÚdedentr   r°   Úreplace)r   Ú	long_descrv   r   r¹   s        r   Útest_long_descriptionz"TestMetadata.test_long_description¯  s[   € Ü—O‘Oðó
ˆ	ð #¨uÈ)ÑTˆä˜EÓ"ˆØ×#Ñ# DÓ)ˆØ�|‰|˜N¨DÓ1ˆØ˜DÑ Ð Ñ r   c                 ó¬   — t         j                  j                  t        di|«       |t        z  }t	        |«      t        «       j                  «       v sJ ‚y)z*
        pydistutils.cfg is found
        rf   N)rR   rS   r/   rš   rQ   r   r   )r   r›   Úconfig_paths      r   Útest_custom_pydistutilsz$TestMetadata.test_custom_pydistutils¾  sE   € ô 	�‰×Ñœ?¨BÐ/°Ô;Ø¤/Ñ1ˆä�;Ó¤<£>×#CÑ#CÓ#EÑEÐEÑEr   c                 óÒ   — t         j                  j                  ddi|«       |dz  }|j                  dt	        |«      «       t	        |«      t        «       j                  «       v sJ ‚y )Nzoverrides.cfgrf   ÚDIST_EXTRA_CONFIG)rR   rS   r/   ÚsetenvrQ   r   r   )r   Úmonkeypatchr\   Úfilenames       r   Útest_extra_pydistutilsz#TestMetadata.test_extra_pydistutilsÇ  sW   € Ü�‰×Ñ˜?¨BÐ/°Ô:Ø˜oÑ-ˆØ×ÑÐ.´°H³Ô>Ü�8‹}¤£× @Ñ @Ó BÑBÐBÑBr   c                 óJ   — ddg}t        |«      }|d   dk(  sJ ‚|d   dk(  sJ ‚y )N)ÚaÚbÚcr,   )r    é   é   é   r   )r  r  r  r    )r    r  r  )r   )r   Úhelp_tuplesÚfancy_optionss      r   Útest_fix_help_optionsz"TestMetadata.test_fix_help_optionsÍ  s<   € Ø+¨\Ð:ˆÜ(¨Ó5ˆØ˜QÑ ?Ò2Ð2Ð2Ø˜QÑ 9Ò,Ð,Ñ,r   c                 ó  — t        «       }g t        _        d|_        d|_        |j                  «        |j                  «       j                  j                  d«      D �cg c]  }|j                  «       dk7  sŒ|‘Œ }}|sJ ‚y c c}w )NTzsetup.pyr  rf   )
r   r!   r"   ÚhelpÚscript_namer*   Ú
readouterrÚoutÚsplitÚstrip)r   r~   Úcapsysr   ÚlineÚoutputs         r   Útest_show_helpzTestMetadata.test_show_helpÓ  s}   € ä‹~ˆØŒŒØˆŒ	Ø%ˆÔØ×ÑÔ!ð $×.Ñ.Ó0×4Ñ4×:Ñ:¸4Ó@ö
ØÀDÇJÁJÃLÐTVÓDVŠDð
ˆð 
ñ ˆ‰vùò
s   ÁBÁ8Bc                 óä  — dddddddgdgd	œ}t        |«      }|j                  }t        j                  «       }|j	                  |«       |j                  d
«       |j                  |«       |j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  ddgk(  sJ ‚|j                  �J ‚|j                  �J ‚|j                  dgk(  sJ ‚y )Nr²   r³   Údescrn   zhttp://example.comr…   r†   Úfoo)rq   rr   r  Údescriptionrþ   rƒ   rË   r   )r   rˆ   r«   r¬   r­   ÚseekÚread_pkg_filerq   rr   r*  rþ   rƒ   r„   rÖ   rË   )r   rv   r   rˆ   ÚPKG_INFOs        r   Útest_read_metadatazTestMetadata.test_read_metadataà  s  € àØØ &Ø Ø0Ø ˜Ø˜ñ
ˆô ˜EÓ"ˆØ—=‘=ˆô —;‘;“=ˆØ×Ñ Ô)Ø�‰�aÔØ×Ñ˜xÔ(à�}‰} 	Ò)Ð)Ð)Ø×Ñ 5Ò(Ð(Ð(Ø×#Ñ# uÒ,Ð,Ð,Ø×$Ñ$Ð(<Ò<Ð<Ð<Ø× Ñ  U¨E NÒ2Ð2Ð2Ø×!Ñ!Ð)Ð)Ð)Ø×!Ñ!Ð)Ð)Ð)Ø× Ñ  U GÒ+Ð+Ñ+r   c                 ó¼  — ddddœ}t        |«      }|j                  }t        j                  «       5 }|j	                  |«       |j                  «       }ddd«       t        j                  «      }t        j                  j                  ddd¬	«      }t        j                  «       5 }t        j                  j                  ||¬
«      j                  |«       |j                  d«       t        j                  |«      }ddd«       t        |d   j!                  «       «      }	t        d   j!                  «       «      }
|
|	k(  sJ ‚y# 1 sw Y   ŒóxY w# 1 sw Y   ŒUxY w)z½
        In pypa/setuptools#4033, it was shown that once PKG-INFO is
        re-generated using ``email.generator.Generator``, some control
        characters might cause problems.
        r²   r³   zhello
world
r  NTFr   )Úutf8Úmangle_from_Úmax_line_length)ÚpolicyÚDescription)r   rˆ   r«   r¬   r­   r®   ÚemailÚmessage_from_stringr3  ÚEmailPolicyÚ	generatorÚ	GeneratorÚflattenr+  Úmessage_from_fileÚsetÚ
splitlines)r   rv   r   rˆ   Úbufferrj   Úorigr3  ÚregenÚ	orig_descÚ
regen_descs              r   Ú'test_round_trip_through_email_generatorz4TestMetadata.test_round_trip_through_email_generatorý  s6  € ð ØØ 4ñ
ˆô
 ˜EÓ"ˆØ—=‘=ˆä�[‰[‹]ð 	$˜fØ×#Ñ# FÔ+Ø—/‘/Ó#ˆC÷	$ô
 ×(Ñ(¨Ó-ˆÜ—‘×)Ñ)ØØØð *ó 
ˆô
 �[‰[‹]ð 	4˜fÜ�O‰O×%Ñ% f°VÐ%Ó<×DÑDÀTÔJà�K‰K˜ŒNÜ×+Ñ+¨FÓ3ˆE÷		4ô ˜˜]Ñ+×6Ñ6Ó8Ó9ˆ	Ü˜˜}Ñ-×8Ñ8Ó:Ó;ˆ
Ø˜YÒ&Ð&Ñ&÷+	$ð 	$ú÷	4ð 	4ús   ²"EÂ'AEÅEÅEN)r   r   r   r°   rº   rÀ   rÅ   rÍ   rÏ   rÓ   rØ   rÚ   rÜ   rä   rê   rò   rô   rú   rü   rÿ   r  r  r  r  r&  r.  rC  r   r   r   r©   r©     s€   „ òò
0ò0òò0ò ò8ò
3ò ò9ò
	/òDòHò>òKò@ò/ò!òFòCò-òò,ó:$'r   r©   )"r   r5  Úemail.generatorÚemail.policyrx   r«   Úosr!   r  Úunittest.mockrT   r{   Údistutils.cmdr   Údistutils.distr   r   Údistutils.testsr   Újaraco.pathrR   r“   rq   rš   r
   r   Úfixturer#   Úcombine_markersr¦   ÚusefixturesÚTempdirManagerr'   r©   r   r   r   ú<module>rP     s!  ðÙ ã Û Û Û Û 	Û 	Û 
Û Ý Û Ý !ß 9Ý #ã Û à˜Ÿ™ GÑ+Ñ,Ð/@Ñ@€ô"�ô "ô	"�|ô 	"ð ‡�ñó ðð 	×ÑØ‡�×Ñ˜Ó$Ø‡�×Ñ˜Ó%ôM+˜w×5Ñ5ó M+ó &ó %ó ðM+ð` ‡�×Ñ˜Ó$Ø‡�×Ñ˜Ó%ôY'�7×)Ñ)ó Y'ó &ó %ñY'r   