summaryrefslogtreecommitdiff
path: root/src/test_setup.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/test_setup.py')
-rw-r--r--src/test_setup.py35
1 files changed, 20 insertions, 15 deletions
diff --git a/src/test_setup.py b/src/test_setup.py
index 2726465..b540ab2 100644
--- a/src/test_setup.py
+++ b/src/test_setup.py
@@ -23,7 +23,7 @@
#
from __future__ import print_function
-__revision__ = "src/test_setup.py 103260fce95bf5db1c35fb2371983087d85dd611 2019-07-13 18:25:30 bdbaddog"
+__revision__ = "src/test_setup.py e724ae812eb96f4858a132f5b8c769724744faf6 2019-07-21 00:04:47 bdeegan"
"""
Test how the setup.py script installs SCons.
@@ -176,21 +176,26 @@ tar_gz = os.path.join(cwd, 'build', 'dist', '%s.tar.gz' % scons_version)
zip = os.path.join(cwd, 'build', 'dist', '%s.zip' % scons_version)
if os.path.isfile(zip):
- try: import zipfile
- except ImportError: pass
+ try:
+ import zipfile
+ except ImportError:
+ pass
else:
- zf = zipfile.ZipFile(zip, 'r')
-
- for name in zf.namelist():
- dir = os.path.dirname(name)
- try: os.makedirs(dir)
- except: pass
- # if the file exists, then delete it before writing
- # to it so that we don't end up trying to write to a symlink:
- if os.path.isfile(name) or os.path.islink(name):
- os.unlink(name)
- if not os.path.isdir(name):
- open(name, 'w').write(zf.read(name))
+ with zipfile.ZipFile(zip, 'r') as zf:
+
+ for name in zf.namelist():
+ dname = os.path.dirname(name)
+ try:
+ os.makedirs(dname)
+ except FileExistsError:
+ pass
+ # if the file exists, then delete it before writing
+ # to it so that we don't end up trying to write to a symlink:
+ if os.path.isfile(name) or os.path.islink(name):
+ os.unlink(name)
+ if not os.path.isdir(name):
+ with open(name, 'w') as ofp:
+ ofp.write(zf.read(name))
if not os.path.isdir(scons_version) and os.path.isfile(tar_gz):
# Unpack the .tar.gz file. This should create the scons_version/