§
    °³Ùg\3  ã                   ó  — 	 d dl Z n# e$ r d dlZ Y nw xY w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mZ  ej        ej                             dd¦  «        ¦  «        Zej                             dd¦  «        Zej                             dd	¦  «        Zej                             d
d¦  «        Zej                             dd¦  «        Zddgez   ddegz   Z ej        ej                             dd¦  «        ¦  «        Zej                             ej                             eddd¦  «        ¦  «        Zd„ Z G d„ dej        ¦  «        Z G d„ dej        ¦  «        Z ej!        d d…         dk     r&ddddgifddddgifdddd gifd!dd"d#gifd$dd%d&gifgZ"n;ej!        d d…         d'k     rd(dd)d*gifd+dd,d-gifd$dd%d&gifd.dd/d0gifgZ"n	d1dd2d3gifgZ" G d4„ d5ej        ¦  «        Z# G d6„ d7ej        ¦  «        Z$dS )8é    N)Úbase)Útest_packagingÚPIPFLAGSÚ Ú
PIPVERSIONÚpipÚ
PBRVERSIONÚpbrÚREPODIRÚ
WHEELHOUSEú-mÚinstallú-fÚPROJECTSz..c               #   óè  K  — t           sd S t          ddg¦  «        } t          D ]Í}|                     ¦   «         }|                     d¦  «        d         }	 t          t          j                             t           |d¦  «        d¦  «        5 }d| 	                    ¦   «         vr	 d d d ¦  «         ŒŠ	 d d d ¦  «         n# 1 swxY w Y   n# t          $ r Y Œ¯w xY w|| v rŒ¸|t          ||¬¦  «        fV — ŒÎd S )	NÚtempestÚrequirementsú/éÿÿÿÿúsetup.pyÚrtr
   )ÚnameÚ
short_name)r   Úsetr   ÚstripÚsplitÚopenÚosÚpathÚjoinÚreadÚIOErrorÚdict)Úexcludesr   r   Úfs       úP/granary/edev/quantum/lib/python3.11/site-packages/pbr/tests/test_integration.pyÚall_projectsr'   (   su  è è € Ýð Øˆå�I˜~Ð.Ñ/Ô/€HÝð Cð CˆØ�zŠz‰|Œ|ˆØ—Z’Z ‘_”_ RÔ(ˆ
ð	Ý•b”g—l’lÝ˜Z¨ñ5ô 5Ø6:ñ<ô <ð Ø?@Ø §¢¡¤Ð(Ð(Øðð ð ñ ô ð ð à(ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð øøõ ð 	ð 	ð 	ØˆHð	øøøà˜Ð!Ð!ØØ�4 T°jÐAÑAÔAÐBÐBÐBÐBÐBðCð Cs<   Á4CÂ
B;Â"CÂ/CÂ;B?	Â?CÃB?	ÃCÃ
CÃCc                   ó²   ‡ — e Zd Z e e¦   «         ¦  «        Zˆ fd„Z ej        e	j
                             dd¦  «        dk    d¦  «        d„ ¦   «         Zˆ xZS )ÚTestIntegrationc                 ó  •— t          j        dt          j                             dd¦  «        ¦  «        }|5  t          t          | ¦  «                             ¦   «          d d d ¦  «         n# 1 swxY w Y   t          j	        ¦   «          d S )NÚOS_TEST_TIMEOUTÚ600)
ÚfixturesÚEnvironmentVariabler   ÚenvironÚgetÚsuperr)   ÚsetUpr   Ú_config_git)ÚselfÚenvÚ	__class__s     €r&   r2   zTestIntegration.setUp@   s»   ø€ õ Ô*Ø�rœzŸ~š~Ð.?ÀÑGÔGñIô Iˆàð 	1ð 	1Ý•/ 4Ñ(Ô(×.Ò.Ñ0Ô0Ð0ð	1ð 	1ð 	1ñ 	1ô 	1ð 	1ð 	1ð 	1ð 	1ð 	1ð 	1øøøð 	1ð 	1ð 	1ð 	1åÔÑÔÐÐÐs   ·(A+Á+A/Á2A/ÚPBR_INTEGRATIONNÚ1úintegration tests not enabledc           
      óô  — t           j                             t          | j        ¦  «        }t           j                             |d¦  «        }t          j        | j        ¦  «                             ¦   «         }t           j                             |¦  «        r{t          j
        ¦   «         }|                     |¦  «         |                     d¦  «        r>|                     ddd¬¦  «        }t          j        |¦  «                             ¦   «         }t           j                             t          dd¦  «        }t           j                             |                      t          j        ¦   «         ¦  «        j        d¦  «        }t#          |d¦  «        5 }t#          |d	¦  «        5 }	|D ]8}
|
                     d
¦  «        d         }||k    r|	                     |
¦  «         Œ9	 d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   t(          d|gz   }|                      t+          j        dddt.          gt(          ¬¦  «        ¦  «        }|j        }|                      t3          j        d|ddg|¬¦  «        ¦  «         |                      t+          j        dddt.          gt(          ¬¦  «        ¦  «        }|j        }t           j                             |dt          j        t           j                             |d¦  «        ¦  «        d         ¦  «        }|                      t3          j        d|g|z   |gz   ¦  «        ¦  «         |                      t+          j        dddt.          gt(          ¬¦  «        ¦  «        }|j        }|j        }|                      t3          j        d|g|z   d|z   gz   ¦  «        ¦  «         | j        dk    r8d}t          j        |¦  «        D ]\  }}}d|v rd}Œ|                      |¦  «         |                      t+          j        dddt.          gt(          ¬¦  «        ¦  «        }|j        }|j        }|                      t3          j        d|g|z   d|gz   ¦  «        ¦  «         d S )Nú	setup.cfgÚmetadatar   Únotapackagename)Úfallbackr   zupper-constraints.txtÚrÚwz===r   z-cÚsdistr   Úwheel)ÚmodulesÚpip_cmdr   ©ÚcwdÚtarballÚdistzinstall-gitzgit+file://ÚnovaFzalembic.iniTz	install-ez-e)r   r   r    r   r   Úpkg_resourcesÚ	safe_nameÚlowerÚexistsÚconfigparserÚConfigParserr!   Úhas_sectionr0   Ú
useFixturer-   ÚTempDirr   r   ÚwriteÚPIP_CMDr   ÚVenvr	   Úpythonr   ÚCapturedSubprocessÚlistdirÚwalkÚ
assertTrue)r4   r   Ú	setup_cfgÚproject_nameÚconfigÚraw_nameÚconstraintsÚtmp_constraintsÚsrcÚdestÚlineÚ
constraintrD   ÚvenvrV   ÚfilenameÚrootÚfoundÚ_Ú	filenamess                       r&   Útest_integrationz TestIntegration.test_integrationI   sÝ  € õ Œw�|Š|�G T¤_Ñ5Ô5ˆÝ”G—L’L  {Ñ3Ô3ˆ	Ý$Ô.¨t¬Ñ?Ô?×EÒEÑGÔGˆåŒ7�>Š>˜)Ñ$Ô$ð 		IÝ!Ô.Ñ0Ô0ˆFØ�KŠK˜	Ñ"Ô"Ð"Ø×!Ò! *Ñ-Ô-ð IØ!Ÿ:š: j°&Ø/@ð &ñ Bô B�õ
  -Ô6°xÑ@Ô@×FÒFÑHÔH�Ý”g—l’l¥7¨NØ#:ñ<ô <ˆåœ'Ÿ,š,Ø�OŠO�HÔ,Ñ.Ô.Ñ/Ô/Ô4Ø#ñ%ô %ˆõ
 �+˜sÑ#Ô#ð 	) sÝ�o sÑ+Ô+ð )¨tØð )ð )�DØ!%§¢¨EÑ!2Ô!2°1Ô!5�JØ# zÒ1Ð1ØŸ
š
 4Ñ(Ô(Ð(øð)ð)ð )ð )ñ )ô )ð )ð )ð )ð )ð )ð )øøøð )ð )ð )ð )ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)õ ˜T ?Ð3Ñ3ˆà�ŠÝÔ Ø).°½Ð(DÝ(/ð1ñ 1ô 1ñ2ô 2ˆð ”ˆØ�Š�Ô/Ø�f˜j¨'Ð2¸ð>ñ >ô >ñ 	?ô 	?ð 	?à�ŠÝÔ 	Ø).°½Ð(DÝ(/ð1ñ 1ô 1ñ2ô 2ˆð ”ˆÝ”7—<’<Ø�&�"œ*¥R¤W§\¢\°$¸Ñ%?Ô%?Ñ@Ô@ÀÔCñEô Eˆà�Š�Ô/Ø˜�x 'Ñ)¨X¨JÑ6ñ8ô 8ñ 	9ô 	9ð 	9à�ŠÝÔ Ø).°½Ð(DÝ(/ð1ñ 1ô 1ñ2ô 2ˆð ŒyˆØ”ˆØ�Š�Ô/Ø˜F˜8 gÑ-°ÀÑ1EÐ0FÑFñHô Hñ 	Iô 	Ið 	IàŒ?˜fÒ$Ð$ØˆEÝ#%¤7¨4¡=¤=ð !ð !‘��1�iØ  IÐ-Ð-Ø �EøØ�OŠO˜EÑ"Ô"Ð"Ø�ŠÝÔ Ø).°½Ð(DÝ(/ð1ñ 1ô 1ñ2ô 2ˆð ŒyˆØ”ˆØ�Š�Ô/Ø˜&˜ GÑ+¨t°T¨lÑ:ñ<ô <ñ 	=ô 	=ð 	=ð 	=ð 	=s6   ÆH Æ <G)ÇH Ç)G-	Ç-H Ç0G-	Ç1H È HÈH)Ú__name__Ú
__module__Ú__qualname__Úlistr'   Ú	scenariosr2   Ú	testtoolsÚ
skipUnlessr   r/   r0   rk   Ú__classcell__)r6   s   @r&   r)   r)   <   s�   ø€ € € € € à��\�\‘^”^Ñ$Ô$€Iðð ð ð ð ð €YÔØ
Œ
�ŠÐ(¨$Ñ/Ô/°3Ò6Ø'ñ)ô )ðK=ð K=ñ)ô )ðK=ð K=ð K=ð K=ð K=ó    r)   c                   ó|   — e Zd Z ej        ej                             dd¦  «        dk    d¦  «        d„ ¦   «         ZdS )ÚTestInstallWithoutPbrr7   Nr8   r9   c                 óÄ  — |                       t          j        ¦   «         ¦  «        j        }t          j                             |d¦  «        }t	          j        |¦  «         |                      t          j	        ddd|fdt          ¬¦  «         t          j                             |d¦  «        }t	          j        |¦  «         t          j        d¦  «        t          j        d	|z  ¦  «        d
œt          j        d¦  «        dt          j        d¦  «        dœdœ}|                       t          j        |¦  «        ¦  «        j        }|d         }|d         }|                      t          j	        ddd|fd|¬¦  «         |                       t          j        dg d¢¦  «        ¦  «        }|j        }|                       t%          j        d|gddgz   |¬¦  «        ¦  «         |                       t%          j        d|gddgz   |¬¦  «        ¦  «         t          j                             |j        dd¦  «        }	|                       t%          j        d|	gdgz   |¬¦  «        ¦  «         d S )NÚdistdirr   rA   ú-dF)Ú
allow_failrF   Útestpkgaq                      #!/usr/bin/env python
                    import setuptools
                    setuptools.setup(
                        name = 'pkgTest',
                        # TODO(clarkb) should we use a random prefix to
                        # avoid collisions?
                        install_requires = ['pkgReq'],
                    )
                zW                    [easy_install]
                    find_links = %s
                )r   r;   z(                    pbr
                r   zE                    print("FakeTest loaded and ran")
                )úrequirements.txtzpkgReq/__init__.pyzpkgReq/__main__.py)ÚpkgTestÚpkgReqr}   r~   Únopbr)r   rB   Ú
setuptoolsr   rE   r   Úbinr
   Úfreeze)rQ   r-   rR   r   r   r    ÚmkdirÚ_run_cmdÚsysÚ
executableÚPBR_ROOTÚtextwrapÚdedentr   ÚCreatePackagesÚpackage_dirsrU   rV   r   rW   )
r4   ÚtempdirÚdist_dirÚtest_pkg_dirÚpkgsÚpkg_dirsÚreq_pkg_dirre   rV   Úpbr_cmds
             r&   Útest_install_without_pbrz.TestInstallWithoutPbr.test_install_without_pbrž   s¾  € ð
 —/’/¥(Ô"2Ñ"4Ô"4Ñ5Ô5Ô:ˆõ ”7—<’< ¨Ñ3Ô3ˆÝ
Œ�ÑÔÐØ�Š•c”n z°7¸DÀ(Ð&KØ!&­Hð 	ñ 	6ô 	6ð 	6õ ”w—|’| G¨YÑ7Ô7ˆÝ
Œ�ÑÔÐõ %œOð 	-ñ 	ô 	õ &œ_ð .ð ñ.ñ  ô  ð!ð !õ$ %-¤Oð 5ñ %ô %ð ')Ý&.¤oð 7ñ 'ô 'ðð ð%
ð 
ˆð6 —?’?ÝÔ)¨$Ñ/Ô/ñ1ô 1Ü1=ð 	à 	Ô*ˆØ˜xÔ(ˆà�Š•c”n z°7¸DÀ(Ð&KØ!&¨Kð 	ñ 	9ô 	9ð 	9ð �Š�~Ô2°7ð4Bð 4Bð 4Bñ Cô  Cñ Dô Dˆð ”ˆà�Š�Ô/Ø�f�X ¨YÐ 7Ñ7¸\ðKñ Kô Kñ 	Lô 	Lð 	Lð 	�Š�Ô/Ø�f�X  xÐ 0Ñ0°lðDñ Dô Dñ 	Eô 	Eð 	Eå”'—,’,˜tœy¨%°Ñ7Ô7ˆØ�Š�Ô/Ø�g�Y ( Ñ+°ð?ñ ?ô ?ñ 	@ô 	@ð 	@ð 	@ð 	@rt   )	rl   rm   rn   rq   rr   r   r/   r0   r“   © rt   r&   rv   rv   š   sb   € € € € € ð €YÔØ
Œ
�ŠÐ(¨$Ñ/Ô/°3Ò6Ø'ñ)ô )ð<@ð <@ñ)ô )ð<@ð <@ð <@rt   rv   é   )r•   é
   r   ÚBionicrC   z
pip==9.0.1zsetuptools==39.0.1ÚStretchzsetuptools==33.1.1ÚEL8z
pip==9.0.3zsetuptools==39.2.0ÚBusterz	pip==18.1zsetuptools==40.8.0ÚFocalzpip==20.0.2zsetuptools==45.2.0)r•   é   r   ÚBullseyezpip==20.3.4zsetuptools==52.0.0ÚBookwormzpip==23.0.1zsetuptools==66.1.1ÚJammyzpip==22.0.2zsetuptools==59.6.0ÚNoblezpip==24.0.0zsetuptools==68.1.2c                   ó”   — e Zd Zddddgifgez   Z ej        ej         	                    dd¦  «        dk    d¦  «        d	„ ¦   «         Z
dS )
ÚTestMarkersPipz
pip-latestrC   r   r€   r7   Nr8   r9   c                 óF  — dt          j        d¦  «        ii i dœ}|                      t          j        |¦  «        ¦  «        j        }|                      t          j        ¦   «         ¦  «        j        }t          j         
                    |d¦  «        }|                      t          j        d¦  «        ¦  «        }|j        }t          j        |¦  «         | j        D ]7}|                      t          j        d|ddd	d
|g|j        ¬¦  «        ¦  «         Œ8|D ]%}|                      |ddd|g||         d¬¦  «         Œ&|                      |ddd	dd|dg|j        d¬¦  «         |                      |g d¢|j        d¬¦  «        d         }|                      d|v pd|v ¦  «         d S )Nr|   zr                    pkg_a; python_version=='1.2'
                    pkg_b; python_version!='1.2'
                )Útest_markersÚpkg_aÚpkg_bÚrepoÚmarkerszpip-versionr   r   r   z	--upgraderE   r   rA   ry   F)rF   rz   z
--no-indexr   r¤   )r   r   r‚   r   r¦   zpkg-b)rˆ   r‰   rQ   r   rŠ   r‹   r-   rR   r   r   r    rU   rV   rƒ   rC   r   rW   r„   rZ   )	r4   r�   r�   Útemp_dirÚrepo_dirre   Ú
bin_pythonÚmoduleÚpkgs	            r&   Útest_pip_versionsz TestMarkersPip.test_pip_versionsÿ   sû  € ð $¥X¤_ð 6ñ &ô &ð ð Øð
ð 
ˆð —?’?ÝÔ)¨$Ñ/Ô/ñ1ô 1Ü1=ð 	à—?’?¥8Ô#3Ñ#5Ô#5Ñ6Ô6Ô;ˆÝ”7—<’< ¨&Ñ1Ô1ˆØ�Š�~Ô2°9Ñ=Ô=Ñ>Ô>ˆØ”[ˆ
Ý
Œ�ÑÔÐØ”lð 	 ð 	 ˆFØ�OŠO�DÔ3ØØ˜T 5¨)°[À&ÐIØ”Iðñ ô ñ  ô  ð  ð  ð ð 	5ð 	5ˆCØ�MŠMØ˜Z¨°$¸ÐAØ˜S”M¨eð ñ 5ô 5ð 5ð 5ð 	�ŠØØ�5˜) \°4¸Øðà”	 eð	 	ñ 	-ô 	-ð 	-ð
 �}Š}ØØ#Ð#Ð#Ø”	 eð ñ -ô -ð ./ô0ˆð 	�Š˜ 4˜Ð:¨7°d¨?Ñ;Ô;Ð;Ð;Ð;rt   )rl   rm   rn   Últs_scenariosrp   rq   rr   r   r/   r0   r®   r”   rt   r&   r¢   r¢   ù   s€   € € € € € ð 
˜	 E¨<Ð#8Ð9Ð:ðàñ€Ið €YÔØ
Œ
�ŠÐ(¨$Ñ/Ô/°3Ò6Ø'ñô ð(<ð (<ñ	ô ð(<ð (<ð (<rt   r¢   c                   ó€   — e Zd ZeZ ej        ej         	                    dd¦  «        dk    d¦  «        d„ ¦   «         Z
dS )ÚTestLTSSupportr7   Nr8   r9   c           
      óì   — |                       t          j        d| j        ¬¦  «        ¦  «        }|j        }dt
          z  }|                       t          j        d|ddd|g|j        ¬¦  «        ¦  «         d S )	Nr€   )rC   zfile://%s#egg=pbrzlts-supportr   r   r   rE   )	rQ   r   rU   rC   rV   r‡   r   rW   r   )r4   re   r«   r
   s       r&   Útest_lts_venv_default_versionsz-TestLTSSupport.test_lts_venv_default_versions2  s‹   € ð
 �ŠÝÔ °d´lÐCÑCÔCñEô Eˆà”[ˆ
Ø!¥HÑ,ˆð 	�Š�Ô/ØØ˜˜u i°Ð5Ø”	ðñ ô ñ 	ô 	ð 	ð 	ð 	rt   )rl   rm   rn   r¯   rp   rq   rr   r   r/   r0   r³   r”   rt   r&   r±   r±   .  s`   € € € € € à€Ià€YÔØ
Œ
�ŠÐ(¨$Ñ/Ô/°3Ò6Ø'ñô ð
ð 
ñ	ô ð
ð 
ð 
rt   r±   )%rN   ÚImportErrorrO   Úos.pathr   rJ   Úshlexr…   r-   rq   rˆ   Ú	pbr.testsr   r   r   r/   r0   r   r   r	   r   r   rT   r   r   Úabspathr    Ú__file__r‡   r'   ÚBaseTestCaser)   rv   Úversion_infor¯   r¢   r±   r”   rt   r&   ú<module>r¼      s|  ðð(ØÐÐÐÐøØð (ð (ð (Ø'Ð'Ð'Ð'Ð'Ð'ð(øøøà €€€Ø Ð Ð Ð Ø €€€Ø 
€
€
€
à €€€Ø Ð Ð Ð Ø €€€à Ð Ð Ð Ð Ð Ø $Ð $Ð $Ð $Ð $Ð $àˆ5Œ;�r”z—~’~ j°"Ñ5Ô5Ñ6Ô6€ØŒZ�^Š^˜L¨%Ñ0Ô0€
ØŒZ�^Š^˜L¨%Ñ0Ô0€
Ø
Œ*�.Š.˜ BÑ
'Ô
'€ØŒZ�^Š^˜L¨"Ñ-Ô-€
Ø�ˆ-˜(Ñ
" i°°zÐ%BÑ
B€Øˆ5Œ;�r”z—~’~ j°"Ñ5Ô5Ñ6Ô6€ØŒ7�?Š?˜2œ7Ÿ<š<¨°$¸¸dÑCÔCÑDÔD€ðCð Cð Cð([=ð [=ð [=ð [=ð [=�dÔ'ñ [=ô [=ð [=ð|C@ð C@ð C@ð C@ð C@˜DÔ-ñ C@ô C@ð C@ðT Ô�A�a�CÔ˜:Ò%Ð%à	�I Ð.BÐCÐDÐEØ	�Y Ð/CÐ DÐEÐFØ	�˜\Ð+?Ð@ÐAÐBØ	�I Ð-AÐBÐCÐDØ	�9˜}Ð.BÐCÐDÐEð€M€Mð 	Ô�a˜�cÔ˜ZÒ'Ð'à	�i -Ð1EÐ!FÐGÐHØ	�i -Ð1EÐ!FÐGÐHØ	�9˜}Ð.BÐCÐDÐEØ	�9˜}Ð.BÐCÐDÐEð	€M€Mð 
�9˜}Ð.BÐCÐDÐEð€Mð
2<ð 2<ð 2<ð 2<ð 2<�TÔ&ñ 2<ô 2<ð 2<ðjð ð ð ð �TÔ&ñ ô ð ð ð s   ‚ ‡	’