OXIESEC PANEL
- Current Dir:
/
/
snap
/
certbot
/
4730
/
lib
/
python3.12
/
site-packages
/
setuptools
/
_distutils
/
tests
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
06/10/2025 09:51:14 PM
rwxr-xr-x
📄
__init__.py
1.45 KB
06/10/2025 09:50:49 PM
rw-r--r--
📁
__pycache__
-
06/10/2025 09:51:14 PM
rwxr-xr-x
📁
compat
-
06/10/2025 09:51:14 PM
rwxr-xr-x
📄
support.py
4 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_archive_util.py
11.51 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_bdist.py
1.36 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_bdist_dumb.py
2.19 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_bdist_rpm.py
3.84 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_build.py
1.7 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_build_clib.py
4.23 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_build_ext.py
22.02 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_build_py.py
6.72 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_build_scripts.py
2.81 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_check.py
6.08 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_clean.py
1.21 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_cmd.py
3.18 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_config_cmd.py
2.6 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_core.py
3.74 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_dir_util.py
4.39 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_dist.py
18.35 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_extension.py
3.58 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_file_util.py
3.44 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_filelist.py
10.51 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_install.py
8.42 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_install_data.py
2.41 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_install_headers.py
936 bytes
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_install_lib.py
3.53 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_install_scripts.py
1.56 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_log.py
323 bytes
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_modified.py
4.12 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_sdist.py
14.71 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_spawn.py
4.69 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_sysconfig.py
11.71 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_text_file.py
3.38 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_util.py
7.8 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_version.py
2.69 KB
06/10/2025 09:50:49 PM
rw-r--r--
📄
test_versionpredicate.py
0 bytes
06/10/2025 09:50:49 PM
rw-r--r--
📄
unix_compat.py
386 bytes
06/10/2025 09:50:49 PM
rw-r--r--
Editing: test_extension.py
Close
"""Tests for distutils.extension.""" import os import pathlib import warnings from distutils.extension import Extension, read_setup_file import pytest from test.support.warnings_helper import check_warnings class TestExtension: def test_read_setup_file(self): # trying to read a Setup file # (sample extracted from the PyGame project) setup = os.path.join(os.path.dirname(__file__), 'Setup.sample') exts = read_setup_file(setup) names = [ext.name for ext in exts] names.sort() # here are the extensions read_setup_file should have created # out of the file wanted = [ '_arraysurfarray', '_camera', '_numericsndarray', '_numericsurfarray', 'base', 'bufferproxy', 'cdrom', 'color', 'constants', 'display', 'draw', 'event', 'fastevent', 'font', 'gfxdraw', 'image', 'imageext', 'joystick', 'key', 'mask', 'mixer', 'mixer_music', 'mouse', 'movie', 'overlay', 'pixelarray', 'pypm', 'rect', 'rwobject', 'scrap', 'surface', 'surflock', 'time', 'transform', ] assert names == wanted def test_extension_init(self): # the first argument, which is the name, must be a string with pytest.raises(TypeError): Extension(1, []) ext = Extension('name', []) assert ext.name == 'name' # the second argument, which is the list of files, must # be an iterable of strings or PathLike objects, and not a string with pytest.raises(TypeError): Extension('name', 'file') with pytest.raises(TypeError): Extension('name', ['file', 1]) ext = Extension('name', ['file1', 'file2']) assert ext.sources == ['file1', 'file2'] ext = Extension('name', [pathlib.Path('file1'), pathlib.Path('file2')]) assert ext.sources == ['file1', 'file2'] # any non-string iterable of strings or PathLike objects should work ext = Extension('name', ('file1', 'file2')) # tuple assert ext.sources == ['file1', 'file2'] ext = Extension('name', {'file1', 'file2'}) # set assert sorted(ext.sources) == ['file1', 'file2'] ext = Extension('name', iter(['file1', 'file2'])) # iterator assert ext.sources == ['file1', 'file2'] ext = Extension('name', [pathlib.Path('file1'), 'file2']) # mixed types assert ext.sources == ['file1', 'file2'] # others arguments have defaults for attr in ( 'include_dirs', 'define_macros', 'undef_macros', 'library_dirs', 'libraries', 'runtime_library_dirs', 'extra_objects', 'extra_compile_args', 'extra_link_args', 'export_symbols', 'swig_opts', 'depends', ): assert getattr(ext, attr) == [] assert ext.language is None assert ext.optional is None # if there are unknown keyword options, warn about them with check_warnings() as w: warnings.simplefilter('always') ext = Extension('name', ['file1', 'file2'], chic=True) assert len(w.warnings) == 1 assert str(w.warnings[0].message) == "Unknown Extension options: 'chic'"