
    ϶vg                         d Z ddlZddlZddlmZ ddlmZ ddlmZ ddl	m
Z
 ddlZddlZe
j         G d de
j                              ZdS )	z%Tests for distutils.command.build_py.    N)build_py)Distribution)DistutilsFileError)supportc                       e Zd Zd Zd Zej                            d          d             Zej                            d          d             Z	d Z
d Zd Zd	S )
TestBuildPyc                    |                                  }t          j                            ddd|           |                                  }t	          dgd|id          }t
          j                            |d          |_        t          j	        d|          |j
        d	<   dg|_        dd
gi|_        d|i|_        t          |          }d|_        |                                 |j        |j        k    sJ |                                 t%          |                                          dk    sJ t
          j                            |d          }t          j        |          }t
          j                            |d          }d|v sJ d
|v sJ t*          j        r#t
          j                            |          rJ d S t          j        |          }dt*          j        j         d|v sJ d S )Nz# Pretend this is a package.zInfo about this package)__init__.py
README.txtpkg)packagespackage_dirsetup.pyF)force	build_libbuildr   T   __pycache__r
   z	__init__..pyc)mkdtempjaracopathr   r   osjoinscript_namer   DummyCommandcommand_objr   package_datar   r   compileensure_finalizedrunlenget_outputslistdirsysdont_write_bytecodeexistsimplementation	cache_tag)	selfsourcesdestinationdistcmdpkgdestfilespycache_dir	pyc_filess	            f/var/www/pixelcanvas.ch/venv/lib/python3.11/site-packages/setuptools/_distutils/tests/test_build_py.pytest_package_datazTestBuildPy.test_package_data   s   ,,..=7  	
 	
 	
 llnn%%AQRRSS7<<<<$+$8;%
 %
 %
! "\N3!7+tnn4#44444			
 3??$$%%****',,{E22
7##gll7M::%%%%u$$$$" 	Ow~~k2222222
;//IAs1;AAAYNNNNNN    c                    |                                  }t          j                            dddid|           t	          j        |           t          dgddiddgid          }t          j                            |d          |_        dg|_	        |
                                 	 |                                 d S # t          $ r |                     d	           Y d S w xY w)
N testfiler
   docr   doc/*)r   r   r   r   r   z/failed package_data test when package_dir is ''r   r   r   r   r   chdirr   r   r   script_argsparse_command_linerun_commandsr   failr*   r+   r-   s      r3   test_empty_package_dirz"TestBuildPy.test_empty_package_dir<   s   ,,.."j"5EFFPPP
!2;"WI.
 
   7<<<<#9!!!	I! 	I 	I 	IIIGHHHHHH	I   )B? ?C"!C"zsys.dont_write_bytecodec                    |                      dg          \  }}t          j        |           |                     dd           t	          |          }d|_        d|_        |                                 |                                 t          j	        |j                  }t          |          ddgk    sJ t          j	        t          j                            |j        d                    }|dt          j        j         d	gk    sJ d S )
N
boiledeggs
py_modulesboiledeggs.pyimport antigravityTherer   boiledeggs.r   )create_distr   r=   
write_filer   r   r   finalize_optionsr!   r$   sortedr   r   r%   r(   r)   )r*   project_dirr-   r.   founds        r3   test_byte_compilezTestBuildPy.test_byte_compileQ   s     ,,,GGT
)=>>>tnn			
3=))e}} @@@@@
27<<}EEFFIs'9'CIIIJJJJJJJr5   c                 J   |                      dg          \  }}t          j        |           |                     dd           t	          |          }d|_        d|_        d|_        |                                 |	                                 t          j
        |j                  }t          |          ddgk    sJ t          j
        t          j                            |j        d                    }d	t          j        j         d
}t          |          |gk    sJ d S )NrF   rG   rI   rJ   F   rK   r   rL   z
.opt-1.pyc)rM   r   r=   rN   r   r   optimizer   rO   r!   r$   rP   r   r   r%   r(   r)   )r*   rQ   r-   r.   rR   expects         r3   test_byte_compile_optimizedz'TestBuildPy.test_byte_compile_optimizeda   s    ,,,GGT
)=>>>tnn			
3=))e}} @@@@@
27<<}EEFFGs1;GGGe}}((((((r5   c                    |                                  }t          j                            dddi ddi|           t	          j        |           t          dgddgid          }t          j                            |d          |_        dg|_	        |
                                 	 |                                 d
S # t          $ r |                     d	           Y d
S w xY w)zR
        A directory in package_data should not be added to the filelist.
        r   r7   )r8   otherdirr9   r;   )r   r   r   r   z0failed package_data when data dir includes a dirNr<   rB   s      r3   test_dir_in_package_dataz$TestBuildPy.test_dir_in_package_datas   s   
 ,,..#%$&$&  	 	
 	
 	
 	%57)BTUUVV7<<<<#9!!!	J! 	J 	J 	JIIHIIIIII	JrD   c                 8   |                                  d         }t          |          }d|_        d|_        t          j        }dt          _        	 |                    g            |t          _        n# |t          _        w xY wd|j        d         j        v sJ d S )NrU   Tzbyte-compiling is disabledr   )	rM   r   r   rV   r%   r&   byte_compilerecordsmessage)r*   caplogr-   r.   old_dont_write_bytecodes        r3   test_dont_write_bytecodez$TestBuildPy.test_dont_write_bytecode   s    !!!$tnn"%"9"&	>R   &=C##&=C#====+v~a/@/HHHHHHHs   A3 3Bc                 D   |                                  }t          j                            ddddiii|           t	          j        |           dddgdd}t          |          }|                    d          }|                                 |	                                }t          |          d	k    sJ |d
         d         }|                    t          j        d          dk    sJ |                                 t          d |j        D                       rJ dS )aU  
        Originally distutils implementation did not account for PEP 420
        and included warns for package directories that did not contain
        ``__init__.py`` files.
        After the acceptance of PEP 420, these warnings don't make more sense
        so we want to ensure there are not displayed to not confuse the users.
        nsr   z	module.pyr7   zns.pkgr   )namer   r   r   rU   r   /zns/pkg/module.pyc              3   &   K   | ]}d |v od|v V  dS )zpackage init filez	not foundN ).0msgs     r3   	<genexpr>zCTestBuildPy.test_namespace_package_does_not_warn.<locals>.<genexpr>   sC       
 
BE3&=;#+=
 
 
 
 
 
r5   N)r   r   r   r   r   r=   r   get_command_objrO   find_all_modulesr"   replacesepr!   anymessages)r*   r`   tmpattrsr-   r.   modulesmodule_paths           r3   $test_namespace_package_does_not_warnz0TestBuildPy.test_namespace_package_does_not_warn   sA    llnn4%+r):!;<cBBB
 x(%
 

 E"" "":..&&((7||q    ajn""263//3EEEEE			 
 
IO
 
 
 
 
 	
 	
 	
 	
 	
r5   N)__name__
__module____qualname__r4   rC   pytestmarkskipifrS   rX   r[   rb   rw   ri   r5   r3   r   r      s        *O *O *OXI I I* [122K K 32K [122) ) 32)"J J J@I I I !
 !
 !
 !
 !
r5   r   )__doc__r   r%   distutils.command.build_pyr   distutils.corer   distutils.errorsr   distutils.testsr   jaraco.pathr   r{   combine_markersTempdirManagerr   ri   r5   r3   <module>r      s    + + 				 



 / / / / / / ' ' ' ' ' ' / / / / / / # # # # # #      	u
 u
 u
 u
 u
'( u
 u
 u
 u
 u
r5   