Use support.change_cwd() in tests.
diff --git a/Lib/test/test_shutil.py b/Lib/test/test_shutil.py
index ca2bfc4..f2548dc 100644
--- a/Lib/test/test_shutil.py
+++ b/Lib/test/test_shutil.py
@@ -12,8 +12,6 @@
import functools
import subprocess
from contextlib import ExitStack
-from test import support
-from test.support import TESTFN
from os.path import splitdrive
from distutils.spawn import find_executable, spawn
from shutil import (_make_tarball, _make_zipfile, make_archive,
@@ -968,12 +966,8 @@
base_name = os.path.join(tmpdir2, 'archive')
# working with relative paths to avoid tar warnings
- old_dir = os.getcwd()
- os.chdir(tmpdir)
- try:
+ with support.change_cwd(tmpdir):
_make_tarball(splitdrive(base_name)[1], '.')
- finally:
- os.chdir(old_dir)
# check if the compressed tarball was created
tarball = base_name + '.tar.gz'
@@ -981,12 +975,8 @@
# trying an uncompressed one
base_name = os.path.join(tmpdir2, 'archive')
- old_dir = os.getcwd()
- os.chdir(tmpdir)
- try:
+ with support.change_cwd(tmpdir):
_make_tarball(splitdrive(base_name)[1], '.', compress=None)
- finally:
- os.chdir(old_dir)
tarball = base_name + '.tar'
self.assertTrue(os.path.exists(tarball))
@@ -1018,12 +1008,8 @@
'Need the tar command to run')
def test_tarfile_vs_tar(self):
tmpdir, tmpdir2, base_name = self._create_files()
- old_dir = os.getcwd()
- os.chdir(tmpdir)
- try:
+ with support.change_cwd(tmpdir):
_make_tarball(base_name, 'dist')
- finally:
- os.chdir(old_dir)
# check if the compressed tarball was created
tarball = base_name + '.tar.gz'
@@ -1033,14 +1019,10 @@
tarball2 = os.path.join(tmpdir, 'archive2.tar.gz')
tar_cmd = ['tar', '-cf', 'archive2.tar', 'dist']
gzip_cmd = ['gzip', '-f9', 'archive2.tar']
- old_dir = os.getcwd()
- os.chdir(tmpdir)
- try:
+ with support.change_cwd(tmpdir):
with captured_stdout() as s:
spawn(tar_cmd)
spawn(gzip_cmd)
- finally:
- os.chdir(old_dir)
self.assertTrue(os.path.exists(tarball2))
# let's compare both tarballs
@@ -1048,23 +1030,15 @@
# trying an uncompressed one
base_name = os.path.join(tmpdir2, 'archive')
- old_dir = os.getcwd()
- os.chdir(tmpdir)
- try:
+ with support.change_cwd(tmpdir):
_make_tarball(base_name, 'dist', compress=None)
- finally:
- os.chdir(old_dir)
tarball = base_name + '.tar'
self.assertTrue(os.path.exists(tarball))
# now for a dry_run
base_name = os.path.join(tmpdir2, 'archive')
- old_dir = os.getcwd()
- os.chdir(tmpdir)
- try:
+ with support.change_cwd(tmpdir):
_make_tarball(base_name, 'dist', compress=None, dry_run=True)
- finally:
- os.chdir(old_dir)
tarball = base_name + '.tar'
self.assertTrue(os.path.exists(tarball))
@@ -1124,15 +1098,11 @@
@unittest.skipUnless(UID_GID_SUPPORT, "Requires grp and pwd support")
def test_tarfile_root_owner(self):
tmpdir, tmpdir2, base_name = self._create_files()
- old_dir = os.getcwd()
- os.chdir(tmpdir)
group = grp.getgrgid(0)[0]
owner = pwd.getpwuid(0)[0]
- try:
+ with support.change_cwd(tmpdir):
archive_name = _make_tarball(base_name, 'dist', compress=None,
owner=owner, group=group)
- finally:
- os.chdir(old_dir)
# check if the compressed tarball was created
self.assertTrue(os.path.exists(archive_name))