@@ -49,6 +49,13 @@ def count_meta_path(venv, env=None):
49
49
return int (popen_text (venv .run )(cmd , env = win_sr (env )))
50
50
51
51
52
+ skip_without_stdlib_distutils = pytest .mark .skipif (
53
+ sys .version_info >= (3 , 12 ),
54
+ reason = 'stdlib distutils is removed from Python 3.12+' ,
55
+ )
56
+
57
+
58
+ @skip_without_stdlib_distutils
52
59
def test_distutils_stdlib (venv ):
53
60
"""
54
61
Ensure stdlib distutils is used when appropriate.
@@ -119,9 +126,9 @@ def test_distutils_has_origin():
119
126
@pytest .mark .parametrize (
120
127
"distutils_version, imported_module" ,
121
128
[
122
- ("stdlib" , "dir_util" ),
123
- ("stdlib" , "file_util" ),
124
- ("stdlib" , "archive_util" ),
129
+ pytest . param ("stdlib" , "dir_util" , marks = skip_without_stdlib_distutils ),
130
+ pytest . param ("stdlib" , "file_util" , marks = skip_without_stdlib_distutils ),
131
+ pytest . param ("stdlib" , "archive_util" , marks = skip_without_stdlib_distutils ),
125
132
("local" , "dir_util" ),
126
133
("local" , "file_util" ),
127
134
("local" , "archive_util" ),
@@ -147,7 +154,13 @@ def test_modules_are_not_duplicated_on_import(
147
154
"""
148
155
149
156
150
- @pytest .mark .parametrize ("distutils_version" , "local stdlib" .split ())
157
+ @pytest .mark .parametrize (
158
+ "distutils_version" ,
159
+ [
160
+ "local" ,
161
+ pytest .param ("stdlib" , marks = skip_without_stdlib_distutils ),
162
+ ]
163
+ )
151
164
def test_log_module_is_not_duplicated_on_import (distutils_version , tmpdir_cwd , venv ):
152
165
env = dict (SETUPTOOLS_USE_DISTUTILS = distutils_version )
153
166
cmd = ['python' , '-c' , ENSURE_LOG_IMPORT_IS_NOT_DUPLICATED ]
0 commit comments