summaryrefslogtreecommitdiff
path: root/setuptools/_distutils/tests
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2022-07-31 14:51:14 -0400
committerJason R. Coombs <jaraco@jaraco.com>2022-07-31 14:51:14 -0400
commit224defdd470ae9a987f4eca7da2a84da47f08c4d (patch)
treedad02f6525fc1fe35eb5e3ac207ba921c9fd60ce /setuptools/_distutils/tests
parent5cef9ab648c49c891f434bc0914b5738d81db270 (diff)
parent129480b92212c4821329caaa626ad3379478e001 (diff)
downloadpython-setuptools-git-224defdd470ae9a987f4eca7da2a84da47f08c4d.tar.gz
Merge https://github.com/pypa/distutils into distutils-129480b
Diffstat (limited to 'setuptools/_distutils/tests')
-rw-r--r--setuptools/_distutils/tests/__init__.py38
-rw-r--r--setuptools/_distutils/tests/py38compat.py16
-rw-r--r--setuptools/_distutils/tests/support.py18
-rw-r--r--setuptools/_distutils/tests/test_archive_util.py39
-rw-r--r--setuptools/_distutils/tests/test_bdist.py11
-rw-r--r--setuptools/_distutils/tests/test_bdist_dumb.py22
-rw-r--r--setuptools/_distutils/tests/test_bdist_msi.py9
-rw-r--r--setuptools/_distutils/tests/test_bdist_rpm.py13
-rw-r--r--setuptools/_distutils/tests/test_bdist_wininst.py9
-rw-r--r--setuptools/_distutils/tests/test_build.py9
-rw-r--r--setuptools/_distutils/tests/test_build_clib.py10
-rw-r--r--setuptools/_distutils/tests/test_build_ext.py13
-rw-r--r--setuptools/_distutils/tests/test_build_py.py9
-rw-r--r--setuptools/_distutils/tests/test_build_scripts.py9
-rw-r--r--setuptools/_distutils/tests/test_check.py11
-rw-r--r--setuptools/_distutils/tests/test_clean.py9
-rw-r--r--setuptools/_distutils/tests/test_cmd.py10
-rw-r--r--setuptools/_distutils/tests/test_config.py13
-rw-r--r--setuptools/_distutils/tests/test_config_cmd.py10
-rw-r--r--setuptools/_distutils/tests/test_core.py17
-rw-r--r--setuptools/_distutils/tests/test_cygwinccompiler.py15
-rw-r--r--setuptools/_distutils/tests/test_dep_util.py9
-rw-r--r--setuptools/_distutils/tests/test_dir_util.py9
-rw-r--r--setuptools/_distutils/tests/test_dist.py24
-rw-r--r--setuptools/_distutils/tests/test_extension.py9
-rw-r--r--setuptools/_distutils/tests/test_file_util.py9
-rw-r--r--setuptools/_distutils/tests/test_filelist.py15
-rw-r--r--setuptools/_distutils/tests/test_install.py16
-rw-r--r--setuptools/_distutils/tests/test_install_data.py14
-rw-r--r--setuptools/_distutils/tests/test_install_headers.py13
-rw-r--r--setuptools/_distutils/tests/test_install_lib.py13
-rw-r--r--setuptools/_distutils/tests/test_install_scripts.py9
-rw-r--r--setuptools/_distutils/tests/test_log.py10
-rw-r--r--setuptools/_distutils/tests/test_msvc9compiler.py9
-rw-r--r--setuptools/_distutils/tests/test_msvccompiler.py29
-rw-r--r--setuptools/_distutils/tests/test_register.py9
-rw-r--r--setuptools/_distutils/tests/test_sdist.py37
-rw-r--r--setuptools/_distutils/tests/test_spawn.py10
-rw-r--r--setuptools/_distutils/tests/test_sysconfig.py17
-rw-r--r--setuptools/_distutils/tests/test_text_file.py9
-rw-r--r--setuptools/_distutils/tests/test_unixccompiler.py11
-rw-r--r--setuptools/_distutils/tests/test_upload.py10
-rw-r--r--setuptools/_distutils/tests/test_util.py17
-rw-r--r--setuptools/_distutils/tests/test_version.py9
-rw-r--r--setuptools/_distutils/tests/test_versionpredicate.py15
45 files changed, 94 insertions, 548 deletions
diff --git a/setuptools/_distutils/tests/__init__.py b/setuptools/_distutils/tests/__init__.py
index c7dcc7ec..27e73393 100644
--- a/setuptools/_distutils/tests/__init__.py
+++ b/setuptools/_distutils/tests/__init__.py
@@ -1,42 +1,8 @@
-"""Test suite for distutils.
-
-This test suite consists of a collection of test modules in the
-distutils.tests package. Each test module has a name starting with
-'test' and contains a function test_suite(). The function is expected
-to return an initialized unittest.TestSuite instance.
+"""
+Test suite for distutils.
Tests for the command classes in the distutils.command package are
included in distutils.tests as well, instead of using a separate
distutils.command.tests package, since command identification is done
by import rather than matching pre-defined names.
-
"""
-
-import os
-import sys
-import unittest
-from test.support import run_unittest
-
-from .py38compat import save_restore_warnings_filters
-
-
-here = os.path.dirname(__file__) or os.curdir
-
-
-def test_suite():
- suite = unittest.TestSuite()
- for fn in os.listdir(here):
- if fn.startswith("test") and fn.endswith(".py"):
- modname = "distutils.tests." + fn[:-3]
- # bpo-40055: Save/restore warnings filters to leave them unchanged.
- # Importing tests imports docutils which imports pkg_resources
- # which adds a warnings filter.
- with save_restore_warnings_filters():
- __import__(modname)
- module = sys.modules[modname]
- suite.addTest(module.test_suite())
- return suite
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/py38compat.py b/setuptools/_distutils/tests/py38compat.py
index c949f58e..96f93a31 100644
--- a/setuptools/_distutils/tests/py38compat.py
+++ b/setuptools/_distutils/tests/py38compat.py
@@ -42,21 +42,5 @@ except (ModuleNotFoundError, ImportError):
)
-# From Python 3.9
-@contextlib.contextmanager
-def _save_restore_warnings_filters():
- old_filters = warnings.filters[:]
- try:
- yield
- finally:
- warnings.filters[:] = old_filters
-
-
-try:
- from test.support.warnings_helper import save_restore_warnings_filters
-except (ModuleNotFoundError, ImportError):
- save_restore_warnings_filters = _save_restore_warnings_filters
-
-
if sys.version_info < (3, 9):
requires_zlib = lambda: test.support.requires_zlib
diff --git a/setuptools/_distutils/tests/support.py b/setuptools/_distutils/tests/support.py
index 3085468a..2e9d66b7 100644
--- a/setuptools/_distutils/tests/support.py
+++ b/setuptools/_distutils/tests/support.py
@@ -5,7 +5,6 @@ import shutil
import tempfile
import unittest
import sysconfig
-from copy import deepcopy
from . import py38compat as os_helper
@@ -116,23 +115,6 @@ class DummyCommand:
pass
-class EnvironGuard(object):
- def setUp(self):
- super(EnvironGuard, self).setUp()
- self.old_environ = deepcopy(os.environ)
-
- def tearDown(self):
- for key, value in self.old_environ.items():
- if os.environ.get(key) != value:
- os.environ[key] = value
-
- for key in tuple(os.environ.keys()):
- if key not in self.old_environ:
- del os.environ[key]
-
- super(EnvironGuard, self).tearDown()
-
-
def copy_xxmodule_c(directory):
"""Helper for tests that need the xxmodule.c source file.
diff --git a/setuptools/_distutils/tests/test_archive_util.py b/setuptools/_distutils/tests/test_archive_util.py
index 8fb95744..7a324c45 100644
--- a/setuptools/_distutils/tests/test_archive_util.py
+++ b/setuptools/_distutils/tests/test_archive_util.py
@@ -7,6 +7,8 @@ import tarfile
from os.path import splitdrive
import warnings
+import pytest
+
from distutils import archive_util
from distutils.archive_util import (
check_archive_formats,
@@ -17,7 +19,7 @@ from distutils.archive_util import (
)
from distutils.spawn import find_executable, spawn
from distutils.tests import support
-from test.support import run_unittest, patch
+from test.support import patch
from .unix_compat import require_unix_id, require_uid_0, grp, pwd, UID_0_SUPPORT
from .py38compat import change_cwd
@@ -32,13 +34,6 @@ except ImportError:
ZIP_SUPPORT = find_executable('zip')
try:
- import zlib
-
- ZLIB_SUPPORT = True
-except ImportError:
- ZLIB_SUPPORT = False
-
-try:
import bz2
except ImportError:
bz2 = None
@@ -65,7 +60,7 @@ def can_fs_encode(filename):
class ArchiveUtilTestCase(
support.TempdirManager, support.LoggingSilencer, unittest.TestCase
):
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
def test_make_tarball(self, name='archive'):
# creating something to tar
tmpdir = self._create_files()
@@ -73,7 +68,7 @@ class ArchiveUtilTestCase(
# trying an uncompressed one
self._make_tarball(tmpdir, name, '.tar', compress=None)
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
def test_make_tarball_gzip(self):
tmpdir = self._create_files()
self._make_tarball(tmpdir, 'archive', '.tar.gz', compress='gzip')
@@ -156,9 +151,10 @@ class ArchiveUtilTestCase(
os.mkdir(os.path.join(dist, 'sub2'))
return tmpdir
+ @pytest.mark.usefixtures('needs_zlib')
@unittest.skipUnless(
- find_executable('tar') and find_executable('gzip') and ZLIB_SUPPORT,
- 'Need the tar, gzip and zlib command to run',
+ find_executable('tar') and find_executable('gzip'),
+ 'Need the tar and gzip commands to run',
)
def test_tarfile_vs_tar(self):
tmpdir = self._create_files()
@@ -247,9 +243,8 @@ class ArchiveUtilTestCase(
self.assertFalse(os.path.exists(tarball))
self.assertEqual(len(w.warnings), 1)
- @unittest.skipUnless(
- ZIP_SUPPORT and ZLIB_SUPPORT, 'Need zip and zlib support to run'
- )
+ @pytest.mark.usefixtures('needs_zlib')
+ @unittest.skipUnless(ZIP_SUPPORT, 'Need zip support to run')
def test_make_zipfile(self):
# creating something to tar
tmpdir = self._create_files()
@@ -312,7 +307,7 @@ class ArchiveUtilTestCase(
try:
try:
make_archive('xxx', 'xxx', root_dir=self.mkdtemp())
- except:
+ except Exception:
pass
self.assertEqual(os.getcwd(), current_dir)
finally:
@@ -326,7 +321,7 @@ class ArchiveUtilTestCase(
self.assertEqual(os.path.basename(res), 'archive.tar')
self.assertEqual(self._tarinfo(res), self._created_files)
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
def test_make_archive_gztar(self):
base_dir = self._create_files()
base_name = os.path.join(self.mkdtemp(), 'archive')
@@ -383,7 +378,7 @@ class ArchiveUtilTestCase(
)
self.assertTrue(os.path.exists(res))
- @unittest.skipUnless(ZLIB_SUPPORT, "Requires zlib")
+ @pytest.mark.usefixtures('needs_zlib')
@require_unix_id
@require_uid_0
def test_tarfile_root_owner(self):
@@ -411,11 +406,3 @@ class ArchiveUtilTestCase(
self.assertEqual(member.gid, 0)
finally:
archive.close()
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(ArchiveUtilTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_bdist.py b/setuptools/_distutils/tests/test_bdist.py
index 2d0bb95b..8dbb829b 100644
--- a/setuptools/_distutils/tests/test_bdist.py
+++ b/setuptools/_distutils/tests/test_bdist.py
@@ -1,7 +1,6 @@
"""Tests for distutils.command.bdist."""
import os
import unittest
-from test.support import run_unittest
import warnings
from distutils.command.bdist import bdist
@@ -30,7 +29,7 @@ class BuildTestCase(support.TempdirManager, unittest.TestCase):
'zip',
'ztar',
]
- found = sorted(cmd.format_command)
+ found = sorted(cmd.format_commands)
self.assertEqual(found, formats)
def test_skip_build(self):
@@ -60,11 +59,3 @@ class BuildTestCase(support.TempdirManager, unittest.TestCase):
self.assertTrue(
subcmd.skip_build, '%s should take --skip-build from bdist' % name
)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(BuildTestCase)
-
-
-if __name__ == '__main__':
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_bdist_dumb.py b/setuptools/_distutils/tests/test_bdist_dumb.py
index 83ab217d..7c4d5964 100644
--- a/setuptools/_distutils/tests/test_bdist_dumb.py
+++ b/setuptools/_distutils/tests/test_bdist_dumb.py
@@ -4,7 +4,8 @@ import os
import sys
import zipfile
import unittest
-from test.support import run_unittest
+
+import pytest
from distutils.core import Distribution
from distutils.command.bdist_dumb import bdist_dumb
@@ -19,18 +20,11 @@ setup(name='foo', version='0.1', py_modules=['foo'],
"""
-try:
- import zlib
-
- ZLIB_SUPPORT = True
-except ImportError:
- ZLIB_SUPPORT = False
-
+@pytest.mark.usefixtures('save_env')
class BuildDumbTestCase(
support.TempdirManager,
support.LoggingSilencer,
- support.EnvironGuard,
unittest.TestCase,
):
def setUp(self):
@@ -44,7 +38,7 @@ class BuildDumbTestCase(
sys.argv[:] = self.old_sys_argv[1]
super(BuildDumbTestCase, self).tearDown()
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
def test_simple_built(self):
# let's create a simple package
@@ -97,11 +91,3 @@ class BuildDumbTestCase(
if not sys.dont_write_bytecode:
wanted.append('foo.%s.pyc' % sys.implementation.cache_tag)
self.assertEqual(contents, sorted(wanted))
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(BuildDumbTestCase)
-
-
-if __name__ == '__main__':
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_bdist_msi.py b/setuptools/_distutils/tests/test_bdist_msi.py
index a9f3dbb5..3bfb7df1 100644
--- a/setuptools/_distutils/tests/test_bdist_msi.py
+++ b/setuptools/_distutils/tests/test_bdist_msi.py
@@ -1,7 +1,6 @@
"""Tests for distutils.command.bdist_msi."""
import sys
import unittest
-from test.support import run_unittest
from distutils.tests import support
from .py38compat import check_warnings
@@ -19,11 +18,3 @@ class BDistMSITestCase(
with check_warnings(("", DeprecationWarning)):
cmd = bdist_msi(dist)
cmd.ensure_finalized()
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(BDistMSITestCase)
-
-
-if __name__ == '__main__':
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_bdist_rpm.py b/setuptools/_distutils/tests/test_bdist_rpm.py
index f60a582a..ba809392 100644
--- a/setuptools/_distutils/tests/test_bdist_rpm.py
+++ b/setuptools/_distutils/tests/test_bdist_rpm.py
@@ -3,7 +3,8 @@
import unittest
import sys
import os
-from test.support import run_unittest
+
+import pytest
from distutils.core import Distribution
from distutils.command.bdist_rpm import bdist_rpm
@@ -23,9 +24,9 @@ setup(name='foo', version='0.1', py_modules=['foo'],
"""
+@pytest.mark.usefixtures('save_env')
class BuildRpmTestCase(
support.TempdirManager,
- support.EnvironGuard,
support.LoggingSilencer,
unittest.TestCase,
):
@@ -150,11 +151,3 @@ class BuildRpmTestCase(
)
os.remove(os.path.join(pkg_dir, 'dist', 'foo-0.1-1.noarch.rpm'))
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(BuildRpmTestCase)
-
-
-if __name__ == '__main__':
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_bdist_wininst.py b/setuptools/_distutils/tests/test_bdist_wininst.py
index c103a63b..4e4fcc5b 100644
--- a/setuptools/_distutils/tests/test_bdist_wininst.py
+++ b/setuptools/_distutils/tests/test_bdist_wininst.py
@@ -2,7 +2,6 @@
import sys
import platform
import unittest
-from test.support import run_unittest
from .py38compat import check_warnings
@@ -36,11 +35,3 @@ class BuildWinInstTestCase(
# no matter what platform we have
exe_file = cmd.get_exe_bytes()
self.assertGreater(len(exe_file), 10)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(BuildWinInstTestCase)
-
-
-if __name__ == '__main__':
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_build.py b/setuptools/_distutils/tests/test_build.py
index 190bbdfd..712b0d53 100644
--- a/setuptools/_distutils/tests/test_build.py
+++ b/setuptools/_distutils/tests/test_build.py
@@ -2,7 +2,6 @@
import unittest
import os
import sys
-from test.support import run_unittest
from distutils.command.build import build
from distutils.tests import support
@@ -45,11 +44,3 @@ class BuildTestCase(support.TempdirManager, support.LoggingSilencer, unittest.Te
# executable is os.path.normpath(sys.executable)
self.assertEqual(cmd.executable, os.path.normpath(sys.executable))
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(BuildTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_build_clib.py b/setuptools/_distutils/tests/test_build_clib.py
index 24c74787..c8fbb5c2 100644
--- a/setuptools/_distutils/tests/test_build_clib.py
+++ b/setuptools/_distutils/tests/test_build_clib.py
@@ -3,7 +3,7 @@ import unittest
import os
import sys
-from test.support import run_unittest, missing_compiler_executable
+from test.support import missing_compiler_executable
from distutils.command.build_clib import build_clib
from distutils.errors import DistutilsSetupError
@@ -134,11 +134,3 @@ class BuildCLibTestCase(
# let's check the result
self.assertIn('libfoo.a', os.listdir(build_temp))
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(BuildCLibTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_build_ext.py b/setuptools/_distutils/tests/test_build_ext.py
index c42ceabd..39d7920a 100644
--- a/setuptools/_distutils/tests/test_build_ext.py
+++ b/setuptools/_distutils/tests/test_build_ext.py
@@ -270,7 +270,7 @@ class BuildExtTestCase(TempdirManager, LoggingSilencer, unittest.TestCase):
cmd = self.build_ext(dist)
cmd.finalize_options()
- #'extensions' option must be a list of Extension instances
+ # 'extensions' option must be a list of Extension instances
self.assertRaises(DistutilsSetupError, cmd.check_extensions_list, 'foo')
# each element of 'ext_modules' option must be an
@@ -559,14 +559,3 @@ class ParallelBuildExtTestCase(BuildExtTestCase):
build_ext = super().build_ext(*args, **kwargs)
build_ext.parallel = True
return build_ext
-
-
-def test_suite():
- suite = unittest.TestSuite()
- suite.addTest(unittest.TestLoader().loadTestsFromTestCase(BuildExtTestCase))
- suite.addTest(unittest.TestLoader().loadTestsFromTestCase(ParallelBuildExtTestCase))
- return suite
-
-
-if __name__ == '__main__':
- support.run_unittest(__name__)
diff --git a/setuptools/_distutils/tests/test_build_py.py b/setuptools/_distutils/tests/test_build_py.py
index eb01d81a..4a8582e4 100644
--- a/setuptools/_distutils/tests/test_build_py.py
+++ b/setuptools/_distutils/tests/test_build_py.py
@@ -10,7 +10,6 @@ from distutils.errors import DistutilsFileError
from unittest.mock import patch
from distutils.tests import support
-from test.support import run_unittest
class BuildPyTestCase(
@@ -208,11 +207,3 @@ class BuildPyTestCase(
cmd.run()
# Test should complete successfully with no exception
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(BuildPyTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_build_scripts.py b/setuptools/_distutils/tests/test_build_scripts.py
index 8c7061d7..6ef9dd61 100644
--- a/setuptools/_distutils/tests/test_build_scripts.py
+++ b/setuptools/_distutils/tests/test_build_scripts.py
@@ -8,7 +8,6 @@ from distutils.core import Distribution
from distutils import sysconfig
from distutils.tests import support
-from test.support import run_unittest
class BuildScriptsTestCase(
@@ -108,11 +107,3 @@ class BuildScriptsTestCase(
built = os.listdir(target)
for name in expected:
self.assertIn(name, built)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(BuildScriptsTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_check.py b/setuptools/_distutils/tests/test_check.py
index 424c5e08..21035f5d 100644
--- a/setuptools/_distutils/tests/test_check.py
+++ b/setuptools/_distutils/tests/test_check.py
@@ -2,7 +2,6 @@
import os
import textwrap
import unittest
-from test.support import run_unittest
from distutils.command.check import check, HAS_DOCUTILS
from distutils.tests import support
@@ -194,16 +193,6 @@ class CheckTestCase(support.LoggingSilencer, support.TempdirManager, unittest.Te
)
def test_check_all(self):
-
- metadata = {'url': 'xxx', 'author': 'xxx'}
self.assertRaises(
DistutilsSetupError, self._run, {}, **{'strict': 1, 'restructuredtext': 1}
)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(CheckTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_clean.py b/setuptools/_distutils/tests/test_clean.py
index 92e58f78..796ca0fc 100644
--- a/setuptools/_distutils/tests/test_clean.py
+++ b/setuptools/_distutils/tests/test_clean.py
@@ -4,7 +4,6 @@ import unittest
from distutils.command.clean import clean
from distutils.tests import support
-from test.support import run_unittest
class cleanTestCase(support.TempdirManager, support.LoggingSilencer, unittest.TestCase):
@@ -45,11 +44,3 @@ class cleanTestCase(support.TempdirManager, support.LoggingSilencer, unittest.Te
cmd.all = 1
cmd.ensure_finalized()
cmd.run()
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(cleanTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_cmd.py b/setuptools/_distutils/tests/test_cmd.py
index 12a8a20c..6a771a11 100644
--- a/setuptools/_distutils/tests/test_cmd.py
+++ b/setuptools/_distutils/tests/test_cmd.py
@@ -1,7 +1,7 @@
"""Tests for distutils.cmd."""
import unittest
import os
-from test.support import captured_stdout, run_unittest
+from test.support import captured_stdout
from distutils.cmd import Command
from distutils.dist import Distribution
@@ -122,11 +122,3 @@ class CommandTestCase(unittest.TestCase):
self.assertEqual(stdout.read(), 'xxx\n')
finally:
debug.DEBUG = False
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(CommandTestCase)
-
-
-if __name__ == '__main__':
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_config.py b/setuptools/_distutils/tests/test_config.py
index a4b48509..5bca4da8 100644
--- a/setuptools/_distutils/tests/test_config.py
+++ b/setuptools/_distutils/tests/test_config.py
@@ -2,13 +2,14 @@
import os
import unittest
+import pytest
+
from distutils.core import PyPIRCCommand
from distutils.core import Distribution
from distutils.log import set_threshold
from distutils.log import WARN
from distutils.tests import support
-from test.support import run_unittest
PYPIRC = """\
[distutils]
@@ -50,10 +51,10 @@ password:xxx
"""
+@pytest.mark.usefixtures('save_env')
class BasePyPIRCCommandTestCase(
support.TempdirManager,
support.LoggingSilencer,
- support.EnvironGuard,
unittest.TestCase,
):
def setUp(self):
@@ -146,11 +147,3 @@ class PyPIRCCommandTestCase(BasePyPIRCCommandTestCase):
('username', 'cbiggles'),
]
self.assertEqual(config, waited)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(PyPIRCCommandTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_config_cmd.py b/setuptools/_distutils/tests/test_config_cmd.py
index 0c1a9d25..3c0879b5 100644
--- a/setuptools/_distutils/tests/test_config_cmd.py
+++ b/setuptools/_distutils/tests/test_config_cmd.py
@@ -2,7 +2,7 @@
import unittest
import os
import sys
-from test.support import run_unittest, missing_compiler_executable
+from test.support import missing_compiler_executable
from distutils.command.config import dump_file, config
from distutils.tests import support
@@ -90,11 +90,3 @@ class ConfigTestCase(
for f in (f1, f2):
self.assertFalse(os.path.exists(f))
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(ConfigTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_core.py b/setuptools/_distutils/tests/test_core.py
index 23402fb8..c3943866 100644
--- a/setuptools/_distutils/tests/test_core.py
+++ b/setuptools/_distutils/tests/test_core.py
@@ -5,10 +5,12 @@ import distutils.core
import os
import shutil
import sys
-from test.support import captured_stdout, run_unittest
+from test.support import captured_stdout
+
+import pytest
+
from . import py38compat as os_helper
import unittest
-from distutils.tests import support
from distutils import log
from distutils.dist import Distribution
@@ -57,7 +59,8 @@ if __name__ == "__main__":
"""
-class CoreTestCase(support.EnvironGuard, unittest.TestCase):
+@pytest.mark.usefixtures('save_env')
+class CoreTestCase(unittest.TestCase):
def setUp(self):
super(CoreTestCase, self).setUp()
self.old_stdout = sys.stdout
@@ -155,11 +158,3 @@ class CoreTestCase(support.EnvironGuard, unittest.TestCase):
stdout.seek(0)
wanted = "options (after parsing config files):\n"
self.assertEqual(stdout.readlines()[0], wanted)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(CoreTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_cygwinccompiler.py b/setuptools/_distutils/tests/test_cygwinccompiler.py
index 7760436a..da73adc6 100644
--- a/setuptools/_distutils/tests/test_cygwinccompiler.py
+++ b/setuptools/_distutils/tests/test_cygwinccompiler.py
@@ -2,7 +2,6 @@
import unittest
import sys
import os
-from test.support import run_unittest
from distutils.cygwinccompiler import (
check_config_h,
@@ -51,6 +50,7 @@ class CygwinCCompilerTestCase(support.TempdirManager, unittest.TestCase):
@unittest.skipIf(sys.platform != "cygwin", "Not running on Cygwin")
def test_runtime_library_dir_option(self):
from distutils.cygwinccompiler import CygwinCCompiler
+
compiler = CygwinCCompiler()
self.assertEqual(compiler.runtime_library_dir_option('/foo'), [])
@@ -112,7 +112,10 @@ class CygwinCCompilerTestCase(support.TempdirManager, unittest.TestCase):
)
self.assertEqual(get_msvcr(), ['msvcr90'])
- sys.version = '3.10.0 (tags/v3.10.0:b494f59, Oct 4 2021, 18:46:30) [MSC v.1929 32 bit (Intel)]'
+ sys.version = (
+ '3.10.0 (tags/v3.10.0:b494f59, Oct 4 2021, 18:46:30) '
+ '[MSC v.1929 32 bit (Intel)]'
+ )
self.assertEqual(get_msvcr(), ['ucrt', 'vcruntime140'])
# unknown
@@ -120,11 +123,3 @@ class CygwinCCompilerTestCase(support.TempdirManager, unittest.TestCase):
'2.5.1 (r251:54863, Apr 18 2007, 08:51:08) ' '[MSC v.2000 32 bits (Intel)]'
)
self.assertRaises(ValueError, get_msvcr)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(CygwinCCompilerTestCase)
-
-
-if __name__ == '__main__':
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_dep_util.py b/setuptools/_distutils/tests/test_dep_util.py
index 89ae05d1..fb170c6f 100644
--- a/setuptools/_distutils/tests/test_dep_util.py
+++ b/setuptools/_distutils/tests/test_dep_util.py
@@ -5,7 +5,6 @@ import os
from distutils.dep_util import newer, newer_pairwise, newer_group
from distutils.errors import DistutilsFileError
from distutils.tests import support
-from test.support import run_unittest
class DepUtilTestCase(support.TempdirManager, unittest.TestCase):
@@ -68,11 +67,3 @@ class DepUtilTestCase(support.TempdirManager, unittest.TestCase):
self.assertFalse(newer_group([one, two, old_file], three, missing='ignore'))
self.assertTrue(newer_group([one, two, old_file], three, missing='newer'))
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(DepUtilTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_dir_util.py b/setuptools/_distutils/tests/test_dir_util.py
index a1f9a240..8231df69 100644
--- a/setuptools/_distutils/tests/test_dir_util.py
+++ b/setuptools/_distutils/tests/test_dir_util.py
@@ -16,7 +16,6 @@ from distutils.dir_util import (
from distutils import log
from distutils.tests import support
-from test.support import run_unittest
class DirUtilTestCase(support.TempdirManager, unittest.TestCase):
@@ -134,11 +133,3 @@ class DirUtilTestCase(support.TempdirManager, unittest.TestCase):
):
src = self.tempdirs[-1]
dir_util.copy_tree(src, None)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(DirUtilTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_dist.py b/setuptools/_distutils/tests/test_dist.py
index 6520a46d..59d165a4 100644
--- a/setuptools/_distutils/tests/test_dist.py
+++ b/setuptools/_distutils/tests/test_dist.py
@@ -8,10 +8,12 @@ import textwrap
from unittest import mock
+import pytest
+
from distutils.dist import Distribution, fix_help_options
from distutils.cmd import Command
-from test.support import captured_stdout, captured_stderr, run_unittest
+from test.support import captured_stdout, captured_stderr
from .py38compat import TESTFN
from distutils.tests import support
from distutils import log
@@ -40,10 +42,10 @@ class TestDistribution(Distribution):
return self._config_files
+@pytest.mark.usefixtures('save_env')
class DistributionTestCase(
support.LoggingSilencer,
support.TempdirManager,
- support.EnvironGuard,
unittest.TestCase,
):
def setUp(self):
@@ -121,7 +123,7 @@ class DistributionTestCase(
)
# Base case: Not in a Virtual Environment
- with mock.patch.multiple(sys, prefix='/a', base_prefix='/a') as values:
+ with mock.patch.multiple(sys, prefix='/a', base_prefix='/a'):
d = self.create_distribution([TESTFN])
option_tuple = (TESTFN, fakepath)
@@ -150,7 +152,7 @@ class DistributionTestCase(
self.assertEqual(value, result_dict[key])
# Test case: In a Virtual Environment
- with mock.patch.multiple(sys, prefix='/a', base_prefix='/b') as values:
+ with mock.patch.multiple(sys, prefix='/a', base_prefix='/b'):
d = self.create_distribution([TESTFN])
for key in result_dict.keys():
@@ -270,7 +272,8 @@ class DistributionTestCase(
self.assertEqual(len(all_files) - 1, len(files))
-class MetadataTestCase(support.TempdirManager, support.EnvironGuard, unittest.TestCase):
+@pytest.mark.usefixtures('save_env')
+class MetadataTestCase(support.TempdirManager, unittest.TestCase):
def setUp(self):
super(MetadataTestCase, self).setUp()
self.argv = sys.argv, sys.argv[:]
@@ -552,14 +555,3 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, unittest.Te
self.assertEqual(metadata.platforms, None)
self.assertEqual(metadata.obsoletes, None)
self.assertEqual(metadata.requires, ['foo'])
-
-
-def test_suite():
- suite = unittest.TestSuite()
- suite.addTest(unittest.TestLoader().loadTestsFromTestCase(DistributionTestCase))
- suite.addTest(unittest.TestLoader().loadTestsFromTestCase(MetadataTestCase))
- return suite
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_extension.py b/setuptools/_distutils/tests/test_extension.py
index 77fe3f82..bf573930 100644
--- a/setuptools/_distutils/tests/test_extension.py
+++ b/setuptools/_distutils/tests/test_extension.py
@@ -3,7 +3,6 @@ import unittest
import os
import warnings
-from test.support import run_unittest
from distutils.extension import read_setup_file, Extension
from .py38compat import check_warnings
@@ -102,11 +101,3 @@ class ExtensionTestCase(unittest.TestCase):
self.assertEqual(
str(w.warnings[0].message), "Unknown Extension options: 'chic'"
)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(ExtensionTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_file_util.py b/setuptools/_distutils/tests/test_file_util.py
index 22898b95..6b333d5e 100644
--- a/setuptools/_distutils/tests/test_file_util.py
+++ b/setuptools/_distutils/tests/test_file_util.py
@@ -8,7 +8,6 @@ from distutils.file_util import move_file, copy_file
from distutils import log
from distutils.tests import support
from distutils.errors import DistutilsFileError
-from test.support import run_unittest
from .py38compat import unlink
@@ -115,11 +114,3 @@ class FileUtilTestCase(support.TempdirManager, unittest.TestCase):
for fn in (self.source, self.target):
with open(fn, 'r') as f:
self.assertEqual(f.read(), 'some content')
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(FileUtilTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_filelist.py b/setuptools/_distutils/tests/test_filelist.py
index 71718a86..0673139e 100644
--- a/setuptools/_distutils/tests/test_filelist.py
+++ b/setuptools/_distutils/tests/test_filelist.py
@@ -8,7 +8,7 @@ from distutils.errors import DistutilsTemplateError
from distutils.filelist import glob_to_re, translate_pattern, FileList
from distutils import filelist
-from test.support import captured_stdout, run_unittest
+from test.support import captured_stdout
from distutils.tests import support
from . import py38compat as os_helper
@@ -349,16 +349,3 @@ class FindAllTestCase(unittest.TestCase):
os.symlink('.', link)
files = filelist.findall(temp_dir)
assert len(files) == 1
-
-
-def test_suite():
- return unittest.TestSuite(
- [
- unittest.TestLoader().loadTestsFromTestCase(FileListTestCase),
- unittest.TestLoader().loadTestsFromTestCase(FindAllTestCase),
- ]
- )
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_install.py b/setuptools/_distutils/tests/test_install.py
index 5f0a64db..32ee02c7 100644
--- a/setuptools/_distutils/tests/test_install.py
+++ b/setuptools/_distutils/tests/test_install.py
@@ -5,7 +5,9 @@ import sys
import unittest
import site
-from test.support import captured_stdout, run_unittest
+from test.support import captured_stdout
+
+import pytest
from distutils import sysconfig
from distutils.command.install import install
@@ -19,16 +21,14 @@ from distutils.extension import Extension
from distutils.tests import support
from test import support as test_support
-import pytest
-
def _make_ext_name(modname):
return modname + sysconfig.get_config_var('EXT_SUFFIX')
+@pytest.mark.usefixtures('save_env')
class InstallTestCase(
support.TempdirManager,
- support.EnvironGuard,
support.LoggingSilencer,
unittest.TestCase,
):
@@ -272,11 +272,3 @@ class InstallTestCase(
finally:
install_module.DEBUG = False
self.assertGreater(len(self.logs), old_logs_len)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(InstallTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_install_data.py b/setuptools/_distutils/tests/test_install_data.py
index a08168b2..a66e5d40 100644
--- a/setuptools/_distutils/tests/test_install_data.py
+++ b/setuptools/_distutils/tests/test_install_data.py
@@ -2,15 +2,16 @@
import os
import unittest
+import pytest
+
from distutils.command.install_data import install_data
from distutils.tests import support
-from test.support import run_unittest
+@pytest.mark.usefixtures('save_env')
class InstallDataTestCase(
support.TempdirManager,
support.LoggingSilencer,
- support.EnvironGuard,
unittest.TestCase,
):
def test_simple_run(self):
@@ -55,7 +56,6 @@ class InstallDataTestCase(
# now using root and empty dir
cmd.root = os.path.join(pkg_dir, 'root')
- inst3 = os.path.join(cmd.install_dir, 'inst3')
inst4 = os.path.join(pkg_dir, 'inst4')
three = os.path.join(cmd.install_dir, 'three')
self.write_file(three, 'xx')
@@ -67,11 +67,3 @@ class InstallDataTestCase(
self.assertEqual(len(cmd.get_outputs()), 4)
self.assertTrue(os.path.exists(os.path.join(inst2, rtwo)))
self.assertTrue(os.path.exists(os.path.join(inst, rone)))
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(InstallDataTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_install_headers.py b/setuptools/_distutils/tests/test_install_headers.py
index db4f4dbb..9029f7e4 100644
--- a/setuptools/_distutils/tests/test_install_headers.py
+++ b/setuptools/_distutils/tests/test_install_headers.py
@@ -2,15 +2,16 @@
import os
import unittest
+import pytest
+
from distutils.command.install_headers import install_headers
from distutils.tests import support
-from test.support import run_unittest
+@pytest.mark.usefixtures('save_env')
class InstallHeadersTestCase(
support.TempdirManager,
support.LoggingSilencer,
- support.EnvironGuard,
unittest.TestCase,
):
def test_simple_run(self):
@@ -33,11 +34,3 @@ class InstallHeadersTestCase(
# let's check the results
self.assertEqual(len(cmd.get_outputs()), 2)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(InstallHeadersTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_install_lib.py b/setuptools/_distutils/tests/test_install_lib.py
index 1ef233a7..cebc88e7 100644
--- a/setuptools/_distutils/tests/test_install_lib.py
+++ b/setuptools/_distutils/tests/test_install_lib.py
@@ -4,17 +4,18 @@ import os
import importlib.util
import unittest
+import pytest
+
from distutils.command.install_lib import install_lib
from distutils.extension import Extension
from distutils.tests import support
from distutils.errors import DistutilsOptionError
-from test.support import run_unittest
+@pytest.mark.usefixtures('save_env')
class InstallLibTestCase(
support.TempdirManager,
support.LoggingSilencer,
- support.EnvironGuard,
unittest.TestCase,
):
def test_finalize_options(self):
@@ -107,11 +108,3 @@ class InstallLibTestCase(
sys.dont_write_bytecode = old_dont_write_bytecode
self.assertIn('byte-compiling is disabled', self.logs[0][1] % self.logs[0][2])
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(InstallLibTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_install_scripts.py b/setuptools/_distutils/tests/test_install_scripts.py
index bac78801..2b19d736 100644
--- a/setuptools/_distutils/tests/test_install_scripts.py
+++ b/setuptools/_distutils/tests/test_install_scripts.py
@@ -7,7 +7,6 @@ from distutils.command.install_scripts import install_scripts
from distutils.core import Distribution
from distutils.tests import support
-from test.support import run_unittest
class InstallScriptsTestCase(
@@ -77,11 +76,3 @@ class InstallScriptsTestCase(
installed = os.listdir(target)
for name in expected:
self.assertIn(name, installed)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(InstallScriptsTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_log.py b/setuptools/_distutils/tests/test_log.py
index 33f7f96c..4a5c5a05 100644
--- a/setuptools/_distutils/tests/test_log.py
+++ b/setuptools/_distutils/tests/test_log.py
@@ -3,7 +3,7 @@
import io
import sys
import unittest
-from test.support import swap_attr, run_unittest
+from test.support import swap_attr
from distutils import log
@@ -51,11 +51,3 @@ class TestLog(unittest.TestCase):
if errors == 'ignore'
else 'Fαtal\t\\xc8rr\\u014dr',
)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(TestLog)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_msvc9compiler.py b/setuptools/_distutils/tests/test_msvc9compiler.py
index ec4781af..11a45557 100644
--- a/setuptools/_distutils/tests/test_msvc9compiler.py
+++ b/setuptools/_distutils/tests/test_msvc9compiler.py
@@ -5,7 +5,6 @@ import os
from distutils.errors import DistutilsPlatformError
from distutils.tests import support
-from test.support import run_unittest
# A manifest with the only assembly reference being the msvcrt assembly, so
# should have the assembly completely stripped. Note that although the
@@ -182,11 +181,3 @@ class msvc9compilerTestCase(support.TempdirManager, unittest.TestCase):
compiler = MSVCCompiler()
got = compiler._remove_visual_c_ref(manifest)
self.assertIsNone(got)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(msvc9compilerTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_msvccompiler.py b/setuptools/_distutils/tests/test_msvccompiler.py
index 21fe57f8..9357a223 100644
--- a/setuptools/_distutils/tests/test_msvccompiler.py
+++ b/setuptools/_distutils/tests/test_msvccompiler.py
@@ -4,19 +4,18 @@ import unittest
import os
import threading
+import pytest
+
from distutils.errors import DistutilsPlatformError
from distutils.tests import support
-from test.support import run_unittest
+from distutils import _msvccompiler
-SKIP_MESSAGE = None if sys.platform == "win32" else "These tests are only for win32"
+needs_winreg = pytest.mark.skipif('not hasattr(_msvccompiler, "winreg")')
-@unittest.skipUnless(SKIP_MESSAGE is None, SKIP_MESSAGE)
class msvccompilerTestCase(support.TempdirManager, unittest.TestCase):
def test_no_compiler(self):
- import distutils._msvccompiler as _msvccompiler
-
# makes sure query_vcvarsall raises
# a DistutilsPlatformError if the compiler
# is not found
@@ -34,9 +33,8 @@ class msvccompilerTestCase(support.TempdirManager, unittest.TestCase):
finally:
_msvccompiler._find_vcvarsall = old_find_vcvarsall
+ @needs_winreg
def test_get_vc_env_unicode(self):
- import distutils._msvccompiler as _msvccompiler
-
test_var = 'ṰḖṤṪ┅ṼẨṜ'
test_value = '₃⁴₅'
@@ -52,9 +50,8 @@ class msvccompilerTestCase(support.TempdirManager, unittest.TestCase):
if old_distutils_use_sdk:
os.environ['DISTUTILS_USE_SDK'] = old_distutils_use_sdk
+ @needs_winreg
def test_get_vc2017(self):
- import distutils._msvccompiler as _msvccompiler
-
# This function cannot be mocked, so pass it if we find VS 2017
# and mark it skipped if we do not.
version, path = _msvccompiler._find_vc2017()
@@ -64,9 +61,8 @@ class msvccompilerTestCase(support.TempdirManager, unittest.TestCase):
else:
raise unittest.SkipTest("VS 2017 is not installed")
+ @needs_winreg
def test_get_vc2015(self):
- import distutils._msvccompiler as _msvccompiler
-
# This function cannot be mocked, so pass it if we find VS 2015
# and mark it skipped if we do not.
version, path = _msvccompiler._find_vc2015()
@@ -95,8 +91,6 @@ class TestSpawn(unittest.TestCase):
"""
Concurrent calls to spawn should have consistent results.
"""
- import distutils._msvccompiler as _msvccompiler
-
compiler = _msvccompiler.MSVCCompiler()
compiler._paths = "expected"
inner_cmd = 'import os; assert os.environ["PATH"] == "expected"'
@@ -116,7 +110,6 @@ class TestSpawn(unittest.TestCase):
If CCompiler.spawn has been monkey-patched without support
for an env, it should still execute.
"""
- import distutils._msvccompiler as _msvccompiler
from distutils import ccompiler
compiler = _msvccompiler.MSVCCompiler()
@@ -130,11 +123,3 @@ class TestSpawn(unittest.TestCase):
compiler.spawn(["n/a"])
assert os.environ.get("PATH") != "expected"
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(msvccompilerTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_register.py b/setuptools/_distutils/tests/test_register.py
index 0f91ad36..76fec685 100644
--- a/setuptools/_distutils/tests/test_register.py
+++ b/setuptools/_distutils/tests/test_register.py
@@ -5,7 +5,6 @@ import getpass
import urllib
import warnings
-from test.support import run_unittest
from .py38compat import check_warnings
@@ -338,11 +337,3 @@ class RegisterTestCase(BasePyPIRCCommandTestCase):
results = self.get_logs(INFO)
self.assertEqual(results[3], 75 * '-' + '\nxxx\n' + 75 * '-')
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(RegisterTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_sdist.py b/setuptools/_distutils/tests/test_sdist.py
index 3a6aea23..f0ca8295 100644
--- a/setuptools/_distutils/tests/test_sdist.py
+++ b/setuptools/_distutils/tests/test_sdist.py
@@ -6,17 +6,12 @@ import warnings
import zipfile
from os.path import join
from textwrap import dedent
-from test.support import captured_stdout, run_unittest
+from test.support import captured_stdout
from .unix_compat import require_unix_id, require_uid_0, pwd, grp
-from .py38compat import check_warnings
-
-try:
- import zlib
+import pytest
- ZLIB_SUPPORT = True
-except ImportError:
- ZLIB_SUPPORT = False
+from .py38compat import check_warnings
from distutils.command.sdist import sdist, show_formats
from distutils.core import Distribution
@@ -88,7 +83,7 @@ class SDistTestCase(BasePyPIRCCommandTestCase):
cmd.dist_dir = 'dist'
return dist, cmd
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
def test_prune_file_list(self):
# this test creates a project with some VCS dirs and an NFS rename
# file, then launches sdist to check they get pruned on all systems
@@ -137,7 +132,7 @@ class SDistTestCase(BasePyPIRCCommandTestCase):
]
self.assertEqual(sorted(content), ['fake-1.0/' + x for x in expected])
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
@unittest.skipIf(find_executable('tar') is None, "The tar command is not found")
@unittest.skipIf(find_executable('gzip') is None, "The gzip command is not found")
def test_make_distribution(self):
@@ -168,7 +163,7 @@ class SDistTestCase(BasePyPIRCCommandTestCase):
result.sort()
self.assertEqual(result, ['fake-1.0.tar', 'fake-1.0.tar.gz'])
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
def test_add_defaults(self):
# http://bugs.python.org/issue2279
@@ -258,7 +253,7 @@ class SDistTestCase(BasePyPIRCCommandTestCase):
f.close()
self.assertEqual(manifest, MANIFEST % {'sep': os.sep})
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
def test_metadata_check_option(self):
# testing the `medata-check` option
dist, cmd = self.get_cmd(metadata={})
@@ -350,7 +345,7 @@ class SDistTestCase(BasePyPIRCCommandTestCase):
# this used to crash instead of raising a warning: #8286
self._check_template('include examples/')
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
def test_get_file_list(self):
# make sure MANIFEST is recalculated
dist, cmd = self.get_cmd()
@@ -394,7 +389,7 @@ class SDistTestCase(BasePyPIRCCommandTestCase):
self.assertEqual(len(manifest2), 6)
self.assertIn('doc2.txt', manifest2[-1])
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
def test_manifest_marker(self):
# check that autogenerated MANIFESTs have a marker
dist, cmd = self.get_cmd()
@@ -411,7 +406,7 @@ class SDistTestCase(BasePyPIRCCommandTestCase):
self.assertEqual(manifest[0], '# file GENERATED by distutils, do NOT edit')
- @unittest.skipUnless(ZLIB_SUPPORT, "Need zlib support to run")
+ @pytest.mark.usefixtures('needs_zlib')
def test_manifest_comments(self):
# make sure comments don't cause exceptions or wrong includes
contents = dedent(
@@ -430,7 +425,7 @@ class SDistTestCase(BasePyPIRCCommandTestCase):
cmd.run()
self.assertEqual(cmd.filelist.files, ['good.py'])
- @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run')
+ @pytest.mark.usefixtures('needs_zlib')
def test_manual_manifest(self):
# check that a MANIFEST without a marker is left alone
dist, cmd = self.get_cmd()
@@ -465,7 +460,7 @@ class SDistTestCase(BasePyPIRCCommandTestCase):
['fake-1.0', 'fake-1.0/PKG-INFO', 'fake-1.0/README.manual'],
)
- @unittest.skipUnless(ZLIB_SUPPORT, "requires zlib")
+ @pytest.mark.usefixtures('needs_zlib')
@require_unix_id
@require_uid_0
@unittest.skipIf(find_executable('tar') is None, "The tar command is not found")
@@ -511,11 +506,3 @@ class SDistTestCase(BasePyPIRCCommandTestCase):
self.assertEqual(member.uid, os.getuid())
finally:
archive.close()
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(SDistTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_spawn.py b/setuptools/_distutils/tests/test_spawn.py
index a7732562..b86c157f 100644
--- a/setuptools/_distutils/tests/test_spawn.py
+++ b/setuptools/_distutils/tests/test_spawn.py
@@ -3,7 +3,7 @@ import os
import stat
import sys
import unittest.mock
-from test.support import run_unittest, unix_shell
+from test.support import unix_shell
from . import py38compat as os_helper
@@ -123,11 +123,3 @@ class SpawnTestCase(support.TempdirManager, support.LoggingSilencer, unittest.Te
with self.assertRaises(DistutilsExecError) as ctx:
spawn(['does-not-exist'])
self.assertIn("command 'does-not-exist' failed", str(ctx.exception))
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(SpawnTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_sysconfig.py b/setuptools/_distutils/tests/test_sysconfig.py
index a033e075..2d68b5a3 100644
--- a/setuptools/_distutils/tests/test_sysconfig.py
+++ b/setuptools/_distutils/tests/test_sysconfig.py
@@ -7,19 +7,20 @@ import sys
import textwrap
import unittest
+import pytest
import jaraco.envs
import distutils
from distutils import sysconfig
from distutils.ccompiler import get_default_compiler
from distutils.unixccompiler import UnixCCompiler
-from distutils.tests import support
-from test.support import run_unittest, swap_item
+from test.support import swap_item
from .py38compat import TESTFN
-class SysconfigTestCase(support.EnvironGuard, unittest.TestCase):
+@pytest.mark.usefixtures('save_env')
+class SysconfigTestCase(unittest.TestCase):
def setUp(self):
super(SysconfigTestCase, self).setUp()
self.makefile = None
@@ -331,13 +332,3 @@ class SysconfigTestCase(support.EnvironGuard, unittest.TestCase):
cmd, env={**os.environ, "PYTHONPATH": distutils_path}
)
assert out == "True"
-
-
-def test_suite():
- suite = unittest.TestSuite()
- suite.addTest(unittest.TestLoader().loadTestsFromTestCase(SysconfigTestCase))
- return suite
-
-
-if __name__ == '__main__':
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_text_file.py b/setuptools/_distutils/tests/test_text_file.py
index 16de9caa..ad10b6d5 100644
--- a/setuptools/_distutils/tests/test_text_file.py
+++ b/setuptools/_distutils/tests/test_text_file.py
@@ -3,7 +3,6 @@ import os
import unittest
from distutils.text_file import TextFile
from distutils.tests import support
-from test.support import run_unittest
TEST_DATA = """# test file
@@ -112,11 +111,3 @@ class TextFileTestCase(support.TempdirManager, unittest.TestCase):
test_input(6, "join lines with collapsing", in_file, result6)
finally:
in_file.close()
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(TextFileTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_unixccompiler.py b/setuptools/_distutils/tests/test_unixccompiler.py
index 879769fc..3cd7c6ca 100644
--- a/setuptools/_distutils/tests/test_unixccompiler.py
+++ b/setuptools/_distutils/tests/test_unixccompiler.py
@@ -2,7 +2,6 @@
import os
import sys
import unittest
-from test.support import run_unittest
from unittest.mock import patch
from .py38compat import EnvironmentVarGuard
@@ -35,7 +34,7 @@ class UnixCCompilerTestCase(support.TempdirManager, unittest.TestCase):
sysconfig.get_config_vars = self._backup_get_config_vars
@unittest.skipIf(sys.platform == 'win32', "can't test on Windows")
- def test_runtime_libdir_option(self):
+ def test_runtime_libdir_option(self): # noqa: C901
# Issue #5900; GitHub Issue #37
#
# Ensure RUNPATH is added to extension modules with RPATH if
@@ -307,11 +306,3 @@ class UnixCCompilerTestCase(support.TempdirManager, unittest.TestCase):
self.cc.output_dir = 'scratch'
os.chdir(self.mkdtemp())
self.cc.has_function('abort', includes=['stdlib.h'])
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(UnixCCompilerTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_upload.py b/setuptools/_distutils/tests/test_upload.py
index afba2fae..a1d37306 100644
--- a/setuptools/_distutils/tests/test_upload.py
+++ b/setuptools/_distutils/tests/test_upload.py
@@ -1,10 +1,8 @@
"""Tests for distutils.command.upload."""
import os
-import unittest
import unittest.mock as mock
from urllib.request import HTTPError
-from test.support import run_unittest
from distutils.command import upload as upload_mod
from distutils.command.upload import upload
@@ -219,11 +217,3 @@ class uploadTestCase(BasePyPIRCCommandTestCase):
results = self.get_logs(ERROR)
self.assertIn(expected, results[-1])
self.clear_logs()
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(uploadTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_util.py b/setuptools/_distutils/tests/test_util.py
index cebd61cc..5a44f10a 100644
--- a/setuptools/_distutils/tests/test_util.py
+++ b/setuptools/_distutils/tests/test_util.py
@@ -4,10 +4,10 @@ import sys
import unittest
import sysconfig as stdlib_sysconfig
from copy import copy
-from test.support import run_unittest
from unittest import mock
-from distutils.errors import DistutilsPlatformError, DistutilsByteCompileError
+import pytest
+
from distutils.util import (
get_platform,
convert_path,
@@ -22,10 +22,11 @@ from distutils.util import (
)
from distutils import util # used to patch _environ_checked
from distutils import sysconfig
-from distutils.tests import support
+from distutils.errors import DistutilsPlatformError, DistutilsByteCompileError
-class UtilTestCase(support.EnvironGuard, unittest.TestCase):
+@pytest.mark.usefixtures('save_env')
+class UtilTestCase(unittest.TestCase):
def setUp(self):
super(UtilTestCase, self).setUp()
# saving the environment
@@ -237,11 +238,3 @@ class UtilTestCase(support.EnvironGuard, unittest.TestCase):
exc = IOError("Unable to find batch file")
msg = grok_environment_error(exc)
self.assertEqual(msg, "error: Unable to find batch file")
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(UtilTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_version.py b/setuptools/_distutils/tests/test_version.py
index cecb279f..3727bac8 100644
--- a/setuptools/_distutils/tests/test_version.py
+++ b/setuptools/_distutils/tests/test_version.py
@@ -3,7 +3,6 @@ import unittest
import distutils
from distutils.version import LooseVersion
from distutils.version import StrictVersion
-from test.support import run_unittest
class VersionTestCase(unittest.TestCase):
@@ -93,11 +92,3 @@ class VersionTestCase(unittest.TestCase):
NotImplemented,
'cmp(%s, %s) should be NotImplemented, got %s' % (v1, v2, res),
)
-
-
-def test_suite():
- return unittest.TestLoader().loadTestsFromTestCase(VersionTestCase)
-
-
-if __name__ == "__main__":
- run_unittest(test_suite())
diff --git a/setuptools/_distutils/tests/test_versionpredicate.py b/setuptools/_distutils/tests/test_versionpredicate.py
index ce3d0f46..e69de29b 100644
--- a/setuptools/_distutils/tests/test_versionpredicate.py
+++ b/setuptools/_distutils/tests/test_versionpredicate.py
@@ -1,15 +0,0 @@
-"""Tests harness for distutils.versionpredicate.
-
-"""
-
-import distutils.versionpredicate
-import doctest
-from test.support import run_unittest
-
-
-def test_suite():
- return doctest.DocTestSuite(distutils.versionpredicate)
-
-
-if __name__ == '__main__':
- run_unittest(test_suite())