
    eI8                     	   d dl mZ d dlmZ d dlmZ d dlZd dlZd dlm	Z	 d dl
mZmZmZ d dlmZ dd	lmZ  ee          j        Z ej                    Ze                    d
d          Zej                            d          Z ej        e          Ze                    dd          ZdZej                            d          d             Z ej                            d          d             Z! edd           ej                            d          d                         Z" edd           ej                            d          d                         Z# edd ee          ej                            d          d                         Z$ edd ee          ej                            d          d                         Z%ej                            d          d             Z&ej                            d          d             Z' edd            ej                            d          d!                         Z( edd"           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-ej                            d$          d*             Z.ej                            d$          d+             Z/ej                            d$          d,             Z0ej                            d$          d-             Z1ej                            d$          d.             Z2ej                            d$          d/             Z3ej                            d$          d0             Z4ej                            d$          d1             Z5ej                            d2          d3             Z6ej                            d2          d4             Z7dS )5    )Path)findall)patchNmain)default_pwddefault_usernamerun_patched)config   )
load_mocksdefault_sitetestdata)siteurlzhttp://localhost:8088/api/z%https://conda.anaconda.org/conda-testzCBR-5429)reasonc           	      L   t          j        d          5 }t          |           t          j        d|dd||g           dt           d| d| j        v sJ | j                    d	| d
t           d| d| j        v sJ | j                    	 d d d            d S # 1 swxY w Y   d S )NFassert_all_requests_are_fired-tupload-cUploading conda artifact to 	channels//artifacts...File  successfully uploaded to /repo with response 201)	responsesRequestsMockr   r   test_urltext)caplogtoken_user_1new_channelpackage_pathrspss        Hlib/python3.11/site-packages/repo_cli/tests/integration/test_packages.pytest_upload_channel_packager+      s1   		e	D	D	D 4	4x{LQRRR Y8XXkXXX{  ;   kLjjHjj;jjj{  ;                    s   A5BB Bc           	         t          j        d          5 }t          |           t          j        d|d|g           t	          ddt
           d| d           dt
           d| d| j        v sJ | j                    d	| d
t
           d| d| j        v sJ | j                    	 d d d            d S # 1 swxY w Y   d S )NFr   r   r   zNEW HEREr   r   r   r   r   r   r    )r!   r"   r   r   printr#   r$   )r%   r&   r(   r	   r)   s        r*   #test_upload_default_channel_packager.   -   s]    
	e	D	D	D 4	4x>???]8]]>N]]]	
 	
 	

 ^8]]>N]]]{  ;   pLooHooK[ooo{  ;                    s   BB33B7:B7zbuiltins.inputc                      dS Ny argss    r*   <lambda>r5   F       s     c           	         t          j        d          5 }t          |           |dz   |z   dz   |z   dz   |z   }t          j        d|d|d|g           d| j        v sJ | j                    	 d d d            d S # 1 swxY w Y   d S 	NFr   ::/r   copy-dzcopy action successfulr!   r"   r   r   r$   	r%   r&   r'   new_channel_with_packagepackage_namepackage_filenamepackage_versionr)   package_locations	            r*   test_copy_channel_packagerE   F       
	e	D	D	D D4$  	
   	 		4v/?{STTT'6;6666666D D D D D D D D D D D D D D D D D D   AA::A>A>c                      dS r0   r2   r3   s    r*   r5   r5   c   r6   r7   c           	         t          j        d          5 }t          |           |dz   |z   dz   |z   dz   |z   }t          j        d|d|d|g           d| j        v sJ | j                    	 d d d            d S # 1 swxY w Y   d S r9   r>   	r%   r&   new_subchannelnew_subchannel_with_packagerA   rB   rC   r)   rD   s	            r*   test_copy_subchannel_package_rM   c   s    
	e	D	D	D D4'  	
   	 		4v/?~VWWW'6;6666666D D D D D D D D D D D D D D D D D DrG   c                      dS r0   r2   r3   s    r*   r5   r5      r6   r7   c           	         t          j        d          5 }t          |           |dz   |z   dz   |z   dz   |z   }t          j        d|d|d|g           d| j        v sJ | j                    	 d d d            d S # 1 swxY w Y   d S 	NFr   r:   r;   r   mover=   zmove action successfulr>   r?   s	            r*   test_move_channel_packagerR      rF   rG   c                      dS r0   r2   r3   s    r*   r5   r5      r6   r7   c                 
   t          j        d          5 }t          |           d d d            n# 1 swxY w Y   |dz   |z   dz   |z   dz   |z   }t          j        d|d|d|g           d| j        v sJ | j                    d S rP   r>   rJ   s	            r*   test_move_subchannel_packagerU      s     
	e	D	D	D 4               	$
	
	 	 		
 	 	  	It\6+;T>RSSS#v{222FK22222s   266c           	         t          j        d          5 }t          |           t          j        d|dd|dz   |z   dg           d| d	| j        v sJ | j                    d
| d
| j                                        v s!J | j                                                    d
| d
| j        v sJ | j                    d
| d
| j        v sJ | j                    	 d d d            d S # 1 swxY w Y   d S )NFr   r   channel--list-filer:   --full-details*Found 1 files matching the specified spec :')r!   r"   r   r   r$   strip)r%   r&   r@   rB   rA   rC   r)   s          r*   !test_view_channel_package_detailsr^      s    
	e	D	D	D B4	(4/,> 		
 		
 		
 U9QTTT{  ;   '#&&&&+*;*;*=*====v{?P?P?R?R==="<"""fk1116;111%?%%%444fk4444'B B B B B B B B B B B B B B B B B Bs   CC((C,/C,c           	      R   t          j        d          5 }t          |           t          j        d|dd|dz   |z   dg           d| d	| j        v sJ | j                    d
| d| j        v sJ | j                    d| dsJ d| dsJ 	 d d d            d S # 1 swxY w Y   d S )NFr   r   rW   rX   r:   rY   rZ   r[   z'fn': 'r\   z	'name': 'z'version': 'r>   )r%   r&   rL   rB   rA   rC   r)   s          r*   $test_view_subchannel_package_detailsr`      sR    
	e	D	D	D 14	+d2\A 		
 		
 		
 X9TWWW{  ;   -),,,;;;V[;;;*<******0o0000000'1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1s   A8BB #B c                      dS r0   r2   r3   s    r*   r5   r5      r6   r7   c                    t          j        d          5 }t          |           | d| d| d| }t          j        d|d|g           d| d| j        v sJ | j                    	 d d d            d S # 1 swxY w Y   d S 	NFr   r:   r;   r   removezSpec z succesfully removedr>   )r%   r&   r@   rB   rA   rC   r)   rD   s           r*   test_delete_channel_packagere      s     
	e	D	D	D 46mm,mmmm[kmm	4x1ABCCC ;$:::fkIII; JIII                    AA55A9<A9c                      dS r0   r2   r3   s    r*   r5   r5     r6   r7   c                    t          j        d          5 }t          |           | d| d| d| }t          j        d|d|g           d| d| j        v sJ | j                    	 d d d            d S # 1 swxY w Y   d S rc   r>   )r%   r&   rL   rB   rA   rC   r)   rD   s           r*   test_delete_subchannel_packageri     s     
	e	D	D	D 49pp\ppOpp^npp	4x1ABCCC ;$:::fkIII; JIII                 rf   zCBR-1544c                     t          j        d          5 }t          |           |}|}t          j        dddd|d|dd	g	           d
| | j        v sJ | j                    	 d d d            d S # 1 swxY w Y   d S )NFr   mirror--createtest_mirrorr   -s--modeactive3Mirror test_mirror successfully created on channel r>   )r%   r'   r@   r)   destination_channelsources         r*   (test_active_mirror_channel_from_internalrt   !  s    
	e	D	D	D 4))	#
	
 	
 	
 XBUWW{  ;   '                 s   AA00A47A4c                 V    |}|}t          j         dddd|d|ddg	           d| sJ d S )	Nrk   rl   test_mirror_namer   rn   ro   passiverq   r   )r%   r'   r@   rr   source_channels        r*   )test_passive_mirror_channel_from_internalry   =  sa     &-NI
	
   WATVVVVVVVr7   zCBR-1594c                     |                     t          j        dt                     |}t          }t          j        dddd|d|ddg	           d	| | j        v sJ | j                    d S )
Nrunrk   rl   rm   r   rn   ro   rp   rq   setattrr   RepoCommandr
   test_external_mirror_urlr$   r%   monkeypatchr'   rr   rs   s        r*   (test_active_mirror_channel_from_externalr   T  s    (%===%%FI
	
   	T>QSS;	 	 	{	 	 	 	 	r7   c                     |                     t          j        dt                     |}t          }t          j        dddd|d|ddg	           d	| | j        v sJ | j                    d S )
Nr{   rk   rl   rm   r   rn   ro   rw   rq   r|   r   s        r*   )test_passive_mirror_channel_from_externalr   n  s    (%===%%FI
	
   	T>QSS;	 	 	{	 	 	 	 	r7   c                 j    t          j         dd|g           d| | j        v sJ | j                    d S Nrk   z--deletez3Mirror test_mirror successfully deleted on channel r   r$   )r%   #channel_with_active_external_mirrors     r*   "test_delete_active_mirror_externalr     ]     	Ix%HIJJJ 	d>acc;	 	 	{	 	 	 	 	r7   c                 j    t          j         dd|g           d| | j        v sJ | j                    d S r   r   )r%   $channel_with_passive_external_mirrors     r*   #test_delete_passive_mirror_externalr     s]     	Ix%IJKKK 	e>bdd;	 	 	{	 	 	 	 	r7   c                 j    t          j         dd|g           d| | j        v sJ | j                    d S r   r   )r%   #channel_with_active_internal_mirrors     r*   "test_delete_active_mirror_internalr     r   r7   c                 j    t          j         dd|g           d| | j        v sJ | j                    d S r   r   )r%   $channel_with_passive_internal_mirrors     r*   0test_delete_passive_channel_mirror_from_internalr     s]    
 	Ix%IJKKK 	e>bdd;	 	 	{	 	 	 	 	r7   c                 j    t          j         dd|g           d| | j        v sJ | j                    d S r   r   )r%   &subchannel_with_active_external_mirrors     r*   -test_delete_active_subchannel_mirror_externalr     ]    
 	Ix%KLMMM 	g>dff;	 	 	{	 	 	 	 	r7   c                 j    t          j         dd|g           d| | j        v sJ | j                    d S r   r   )r%   'subchannel_with_passive_external_mirrors     r*   .test_delete_passive_subchannel_mirror_externalr     ]    
 	Ix%LMNNN 	h>egg;	 	 	{	 	 	 	 	r7   c                 j    t          j         dd|g           d| | j        v sJ | j                    d S r   r   )r%   &subchannel_with_active_internal_mirrors     r*   -test_delete_active_subchannel_mirror_internalr     r   r7   c                 j    t          j         dd|g           d| | j        v sJ | j                    d S r   r   )r%   'subchannel_with_passive_internal_mirrors     r*   .test_delete_passive_subchannel_mirror_internalr     r   r7   z+CBR-2029, cve service in intermediary statec                 n    t          j         d|ddg           t          d| j                  D ]}|sJ d S )Nr   cvesz--listzCVE-\d{4}-\d{4})r   r   r$   )r%   r&   CVEs      r*   test_list_CVEsr     sN     	It\684555)6;77  



 r7   c                 ~    |d         }t          j         d|dd|g           d| | j        v sJ | j                    d S )Nr   r   r   z--showzCve: r   )r%   r&   CVE_idsCVE_ids       r*   test_show_CVEr     sS     QZFIt\68V<===6v{***FK*****r7   )8pathlibr   rer   unittest.mockr   pytestr!   repo_clir   repo_cli.tests.conftestr   r	   r
   repo_cli.utilsr   testcaser   __file__parenthere
get_configdefault_configget	test_sitejoinpath	FILES_DIRsite_configr#   r   markskipr+   r.   rE   rM   rR   rU   r^   r`   re   ri   rt   ry   r   r   r   r   r   r   r   r   r   r   r   r   r2   r7   r*   <module>r      s\                                O N N N N N N N N N ! ! ! ! ! !            tH~~""$$~v66	K  ((	fY///??5">??B  $$  %$ $$  %$0 **++$$D D %$ ,+D6 **++$$D D %$ ,+D6 **,<kJJ$$D D %$ KJD6 **,<kJJ$$@ @ %$ KJ@6 $$B B %$B> $$1 1 %$1< **++$$  %$ ,+$ **++$$  %$ ,+$ $$  %$6 $$W W %$W, $$  %$2 $$  %$2 $$  %$ $$  %$ $$  %$ $$	 	 %$	 $$	 	 %$	 $$	 	 %$	 $$	 	 %$	 $$	 	 %$	 FGG  HG FGG8 8 HG8 8 8r7   