B
    \Y                 @   s   d 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 ddl	m
Z
 ddlmZ dZyddlZdZW n ek
r   d	ZY nX G d
d dejejejejZdd Zedkree  dS )z'Tests for distutils.command.bdist_dumb.    N)run_unittest)Distribution)
bdist_dumb)supportzfrom 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__ 0lib/python3.7/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   tearDown)r   )r   r   r   r   '   s    zBuildDumbTestCase.tearDownzNeed zlib support to runc       
      C   sj  |   }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 d |  X ttd ttjj|}dt
jd d  dg}	t
jsV|	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_modulesZurlZauthorZauthor_emailzipdistz	%s.%s.zipzfoo-0.1-py%s.%s.egg-info   z
foo.%s.pyc)!Zmkdtempr	   pathjoinmkdirZ
write_fileSETUP_PYr   script_namer   r   r   r   formatZensure_finalizedrunlistdirZget_fullnameZ	plat_nameZassertEqualzipfileZ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_SUPPORTr4   __classcell__r   r   )r   r   r      s   r   c               C   s
   t tS )N)r8   Z	makeSuiter   r   r   r   r   
test_suite]   s    r;   __main__)__doc__r	   r   r%   r8   Ztest.supportr   Zdistutils.corer   Zdistutils.command.bdist_dumbr   Zdistutils.testsr   r    zlibr9   ImportErrorZTempdirManagerZLoggingSilencerZEnvironGuardZTestCaser   r;   r5   r   r   r   r   <module>   s*   	
=