Skip to content

Commit

Permalink
gh-120801: Update fixtures.
Browse files Browse the repository at this point in the history
Removed unused fixtures relating to cwd. Rely on os_helper.temp_dir where relevant. Renamed to tmp_path to reflect pathlib behavior.
  • Loading branch information
jaraco committed Jun 20, 2024
1 parent 5eee2ff commit 963f643
Show file tree
Hide file tree
Showing 5 changed files with 11 additions and 29 deletions.
1 change: 1 addition & 0 deletions newsfragments/+76d2542b.feature.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Updated fixtures for python/cpython#120801.
2 changes: 1 addition & 1 deletion tests/compat/py39.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@


os_helper = try_import('os_helper') or from_test_support(
'FS_NONASCII', 'skip_unless_symlink'
'FS_NONASCII', 'skip_unless_symlink', 'temp_dir'
)
import_helper = try_import('import_helper') or from_test_support(
'modules_setup', 'modules_cleanup'
Expand Down
33 changes: 7 additions & 26 deletions tests/fixtures.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
import os
import sys
import copy
import json
import shutil
import pathlib
import tempfile
import textwrap
import functools
import contextlib
Expand All @@ -26,29 +24,12 @@


@contextlib.contextmanager
def tempdir():
tmpdir = tempfile.mkdtemp()
try:
yield pathlib.Path(tmpdir)
finally:
shutil.rmtree(tmpdir)


@contextlib.contextmanager
def save_cwd():
orig = os.getcwd()
try:
yield
finally:
os.chdir(orig)


@contextlib.contextmanager
def tempdir_as_cwd():
with tempdir() as tmp:
with save_cwd():
os.chdir(str(tmp))
yield tmp
def tmp_path():
"""
Like os_helper.temp_dir, but yields a pathlib.Path.
"""
with os_helper.temp_dir() as path:
yield pathlib.Path(path)


@contextlib.contextmanager
Expand All @@ -69,7 +50,7 @@ def setUp(self):
class SiteDir(Fixtures):
def setUp(self):
super().setUp()
self.site_dir = self.fixtures.enter_context(tempdir())
self.site_dir = self.fixtures.enter_context(tmp_path())


class OnSysPath(Fixtures):
Expand Down
2 changes: 1 addition & 1 deletion tests/test_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ def test_entry_points_unique_packages_normalized(self):
Entry points should only be exposed for the first package
on sys.path with a given name (even when normalized).
"""
alt_site_dir = self.fixtures.enter_context(fixtures.tempdir())
alt_site_dir = self.fixtures.enter_context(fixtures.tmp_path())
self.fixtures.enter_context(self.add_sys_path(alt_site_dir))
alt_pkg = {
"DistInfo_pkg-1.1.0.dist-info": {
Expand Down
2 changes: 1 addition & 1 deletion tests/test_main.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ def test_unique_distributions(self):
fixtures.build_files(self.make_pkg('abc'), self.site_dir)
before = list(_unique(distributions()))

alt_site_dir = self.fixtures.enter_context(fixtures.tempdir())
alt_site_dir = self.fixtures.enter_context(fixtures.tmp_path())
self.fixtures.enter_context(self.add_sys_path(alt_site_dir))
fixtures.build_files(self.make_pkg('ABC'), alt_site_dir)
after = list(_unique(distributions()))
Expand Down

0 comments on commit 963f643

Please sign in to comment.