o
    JAfY  ã                   @   s¾   	 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 d dlm	Z	 d dl
mZ dZzd dlZdZW n ey>   dZY nw G d	d
„ d
ejejejejƒZdd„ Zedkr]eeƒ ƒ dS dS )é    N)Úrun_unittest)ÚDistribution)Ú
bdist_dumb)Úsupportz–from distutils.core import setup
import foo

setup(name='foo', version='0.1', py_modules=['foo'],
      url='xxx', author='xxx', author_email='xxx')

TFc                       s<   e Zd Z‡ fdd„Z‡ fdd„Ze ed¡dd„ ƒZ‡  Z	S )ÚBuildDumbTestCasec                    s2   t t| ƒ ¡  t ¡ | _tjtjd d … f| _d S ©N)	Úsuperr   ÚsetUpÚosÚgetcwdÚold_locationÚsysÚargvÚold_sys_argv©Úself©Ú	__class__© ú6/usr/lib/python3.10/distutils/tests/test_bdist_dumb.pyr	   "   s   
zBuildDumbTestCase.setUpc                    s>   t  | j¡ | jd t_| jd tjd d …< tt| ƒ ¡  d S )Nr   é   )	r
   Úchdirr   r   r   r   r   r   ÚtearDownr   r   r   r   r   '   s   zBuildDumbTestCase.tearDownzNeed zlib support to runc           
      C   sp  |   ¡ }tj |d¡}t |¡ |  |dft¡ |  |dfd¡ |  |dfd¡ |  |dfd¡ tdd	dgd
d
d
dœƒ}d|_t 	|¡ dgt
_t|ƒ}d|_| ¡  | ¡  t tj |d¡¡}d| ¡ |jf }|  ||g¡ t tj d|¡¡}z
| ¡ }W | ¡  n| ¡  w ttd ttjj|ƒƒƒ}dt
jd d…  dg}	t
js®|	 dt
jj  ¡ |  |t|	ƒ¡ d S )NZfoozsetup.pyzfoo.pyú#zMANIFEST.inzinclude foo.pyZREADMEÚ z0.1Zxxx)ÚnameÚversionZ
py_modulesÚurlZauthorZauthor_emailÚzipÚdistz	%s.%s.zipzfoo-0.1-py%s.%s.egg-infoé   z
foo.%s.pyc)!Úmkdtempr
   ÚpathÚjoinÚmkdirZ
write_fileÚSETUP_PYr   Zscript_namer   r   r   r   ÚformatZensure_finalizedÚrunÚlistdirZget_fullnameZ	plat_nameZassertEqualÚzipfileÚZipFileZnamelistÚcloseÚsortedÚfilterÚmapÚbasenameÚversion_infoÚdont_write_bytecodeÚappendÚimplementationÚ	cache_tag)
r   Ztmp_dirZpkg_dirr   ÚcmdZdist_createdÚbaseÚfpÚcontentsZwantedr   r   r   Útest_simple_built-   s>   
ý

z#BuildDumbTestCase.test_simple_built)
Ú__name__Ú
__module__Ú__qualname__r	   r   ÚunittestZ
skipUnlessÚZLIB_SUPPORTr9   Ú__classcell__r   r   r   r   r      s
    
r   c                   C   s
   t  t¡S r   )r=   Z	makeSuiter   r   r   r   r   Ú
test_suite]   s   
r@   Ú__main__)r
   r   r)   r=   Ztest.supportr   Zdistutils.corer   Zdistutils.command.bdist_dumbr   Zdistutils.testsr   r%   Úzlibr>   ÚImportErrorZTempdirManagerZLoggingSilencerZEnvironGuardZTestCaser   r@   r:   r   r   r   r   Ú<module>   s2    	ÿý@ÿ