summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTarek Ziade <tarek@ziade.org>2011-05-21 13:12:10 (GMT)
committerTarek Ziade <tarek@ziade.org>2011-05-21 13:12:10 (GMT)
commit4bdd9f36a0c1ad8ec0cb95f3a4e014df1e6046a4 (patch)
treef3aefa411c7813ee4c901f5ba77a980eb704ff33
parent2db5674a95fe1a65a3594c3bb5431beced22e240 (diff)
downloadcpython-4bdd9f36a0c1ad8ec0cb95f3a4e014df1e6046a4.zip
cpython-4bdd9f36a0c1ad8ec0cb95f3a4e014df1e6046a4.tar.gz
cpython-4bdd9f36a0c1ad8ec0cb95f3a4e014df1e6046a4.tar.bz2
fixed the move api in packaging.install, and closing the handle left by mkstemp() in its test module
-rw-r--r--Lib/packaging/install.py6
-rw-r--r--Lib/packaging/tests/test_install.py16
2 files changed, 12 insertions, 10 deletions
diff --git a/Lib/packaging/install.py b/Lib/packaging/install.py
index 3904727..92657ea 100644
--- a/Lib/packaging/install.py
+++ b/Lib/packaging/install.py
@@ -47,10 +47,8 @@ def _move_files(files, destination):
destination = tempfile.mkdtemp()
for old in files:
- # not using os.path.join() because basename() might not be
- # unique in destination
- new = "%s%s" % (destination, old)
-
+ filename = os.path.split(old)[-1]
+ new = os.path.join(destination, filename)
# try to make the paths.
try:
os.makedirs(os.path.dirname(new))
diff --git a/Lib/packaging/tests/test_install.py b/Lib/packaging/tests/test_install.py
index 7bdee94..01c3dcf 100644
--- a/Lib/packaging/tests/test_install.py
+++ b/Lib/packaging/tests/test_install.py
@@ -43,16 +43,18 @@ class ToInstallDist:
self.version = "fake"
if files:
for f in range(0, 3):
- self._real_files.append(mkstemp())
+ fp, fn = mkstemp()
+ os.close(fp)
+ self._real_files.append(fn)
def _unlink_installed_files(self):
if self._files:
- for f in self._real_files:
- os.unlink(f[1])
+ for fn in self._real_files:
+ os.unlink(fn)
def list_installed_files(self, **args):
if self._files:
- return [f[1] for f in self._real_files]
+ return self._real_files
def get_install(self, **args):
return self.list_installed_files()
@@ -231,8 +233,10 @@ class TestInstall(LoggingCatcher, TempdirManager, unittest.TestCase):
output = [o for o in install._move_files(files, newpath)]
# check that output return the list of old/new places
- for f in files:
- self.assertIn((f, '%s%s' % (newpath, f)), output)
+ for file_ in files:
+ name = os.path.split(file_)[-1]
+ newloc = os.path.join(newpath, name)
+ self.assertIn((file_, newloc), output)
# remove the files
for f in [o[1] for o in output]: # o[1] is the new place