mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
Merged revisions 69609 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r69609 | tarek.ziade | 2009-02-14 15:10:23 +0100 (Sat, 14 Feb 2009) | 1 line Fix for #5257: refactored all tests in distutils, so they use a temporary directory. ........
This commit is contained in:
parent
9e8dbbcdcd
commit
c1375d5e01
8 changed files with 59 additions and 62 deletions
|
@ -5,6 +5,7 @@ import shutil
|
|||
import zipfile
|
||||
from os.path import join
|
||||
import sys
|
||||
import tempfile
|
||||
|
||||
from distutils.command.sdist import sdist
|
||||
from distutils.core import Distribution
|
||||
|
@ -12,9 +13,6 @@ from distutils.tests.test_config import PyPIRCCommandTestCase
|
|||
from distutils.errors import DistutilsExecError
|
||||
from distutils.spawn import find_executable
|
||||
|
||||
CURDIR = os.path.dirname(__file__)
|
||||
TEMP_PKG = join(CURDIR, 'temppkg')
|
||||
|
||||
SETUP_PY = """
|
||||
from distutils.core import setup
|
||||
import somecode
|
||||
|
@ -29,28 +27,25 @@ recursive-include somecode *
|
|||
class sdistTestCase(PyPIRCCommandTestCase):
|
||||
|
||||
def setUp(self):
|
||||
# PyPIRCCommandTestCase creates a temp dir already
|
||||
# and put it in self.tmp_dir
|
||||
PyPIRCCommandTestCase.setUp(self)
|
||||
# setting up an environment
|
||||
self.old_path = os.getcwd()
|
||||
os.mkdir(join(self.tmp_dir, 'somecode'))
|
||||
os.mkdir(join(self.tmp_dir, 'dist'))
|
||||
# creating a MANIFEST, a package, and a README
|
||||
self._write(join(self.tmp_dir, 'MANIFEST.in'), MANIFEST_IN)
|
||||
self._write(join(self.tmp_dir, 'README'), 'xxx')
|
||||
self._write(join(self.tmp_dir, 'somecode', '__init__.py'), '#')
|
||||
self._write(join(self.tmp_dir, 'setup.py'), SETUP_PY)
|
||||
os.chdir(self.tmp_dir)
|
||||
|
||||
def tearDown(self):
|
||||
# back to normal
|
||||
os.chdir(self.old_path)
|
||||
if os.path.exists(TEMP_PKG):
|
||||
shutil.rmtree(TEMP_PKG)
|
||||
PyPIRCCommandTestCase.tearDown(self)
|
||||
|
||||
def _init_tmp_pkg(self):
|
||||
if os.path.exists(TEMP_PKG):
|
||||
shutil.rmtree(TEMP_PKG)
|
||||
os.mkdir(TEMP_PKG)
|
||||
os.mkdir(join(TEMP_PKG, 'somecode'))
|
||||
os.mkdir(join(TEMP_PKG, 'dist'))
|
||||
# creating a MANIFEST, a package, and a README
|
||||
self._write(join(TEMP_PKG, 'MANIFEST.in'), MANIFEST_IN)
|
||||
self._write(join(TEMP_PKG, 'README'), 'xxx')
|
||||
self._write(join(TEMP_PKG, 'somecode', '__init__.py'), '#')
|
||||
self._write(join(TEMP_PKG, 'setup.py'), SETUP_PY)
|
||||
os.chdir(TEMP_PKG)
|
||||
|
||||
def _write(self, path, content):
|
||||
f = open(path, 'w')
|
||||
try:
|
||||
|
@ -62,18 +57,17 @@ class sdistTestCase(PyPIRCCommandTestCase):
|
|||
# this test creates a package with some vcs dirs in it
|
||||
# and launch sdist to make sure they get pruned
|
||||
# on all systems
|
||||
self._init_tmp_pkg()
|
||||
|
||||
# creating VCS directories with some files in them
|
||||
os.mkdir(join(TEMP_PKG, 'somecode', '.svn'))
|
||||
self._write(join(TEMP_PKG, 'somecode', '.svn', 'ok.py'), 'xxx')
|
||||
os.mkdir(join(self.tmp_dir, 'somecode', '.svn'))
|
||||
self._write(join(self.tmp_dir, 'somecode', '.svn', 'ok.py'), 'xxx')
|
||||
|
||||
os.mkdir(join(TEMP_PKG, 'somecode', '.hg'))
|
||||
self._write(join(TEMP_PKG, 'somecode', '.hg',
|
||||
os.mkdir(join(self.tmp_dir, 'somecode', '.hg'))
|
||||
self._write(join(self.tmp_dir, 'somecode', '.hg',
|
||||
'ok'), 'xxx')
|
||||
|
||||
os.mkdir(join(TEMP_PKG, 'somecode', '.git'))
|
||||
self._write(join(TEMP_PKG, 'somecode', '.git',
|
||||
os.mkdir(join(self.tmp_dir, 'somecode', '.git'))
|
||||
self._write(join(self.tmp_dir, 'somecode', '.git',
|
||||
'ok'), 'xxx')
|
||||
|
||||
# now building a sdist
|
||||
|
@ -96,7 +90,7 @@ class sdistTestCase(PyPIRCCommandTestCase):
|
|||
cmd.run()
|
||||
|
||||
# now let's check what we have
|
||||
dist_folder = join(TEMP_PKG, 'dist')
|
||||
dist_folder = join(self.tmp_dir, 'dist')
|
||||
files = os.listdir(dist_folder)
|
||||
self.assertEquals(files, ['fake-1.0.zip'])
|
||||
|
||||
|
@ -116,8 +110,6 @@ class sdistTestCase(PyPIRCCommandTestCase):
|
|||
find_executable('gzip') is None):
|
||||
return
|
||||
|
||||
self._init_tmp_pkg()
|
||||
|
||||
# now building a sdist
|
||||
dist = Distribution()
|
||||
dist.script_name = 'setup.py'
|
||||
|
@ -137,7 +129,7 @@ class sdistTestCase(PyPIRCCommandTestCase):
|
|||
cmd.run()
|
||||
|
||||
# making sure we have two files
|
||||
dist_folder = join(TEMP_PKG, 'dist')
|
||||
dist_folder = join(self.tmp_dir, 'dist')
|
||||
result = os.listdir(dist_folder)
|
||||
result.sort()
|
||||
self.assertEquals(result,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue