diff --git a/tests/data/src/pep518_invalid_build_system/MANIFEST.in b/tests/data/src/pep518_invalid_build_system/MANIFEST.in new file mode 100644 index 000000000..bec201fc8 --- /dev/null +++ b/tests/data/src/pep518_invalid_build_system/MANIFEST.in @@ -0,0 +1 @@ +include pyproject.toml diff --git a/tests/data/src/pep518_invalid_build_system/pep518.py b/tests/data/src/pep518_invalid_build_system/pep518.py new file mode 100644 index 000000000..7986d1137 --- /dev/null +++ b/tests/data/src/pep518_invalid_build_system/pep518.py @@ -0,0 +1 @@ +#dummy diff --git a/tests/data/src/pep518_invalid_build_system/pyproject.toml b/tests/data/src/pep518_invalid_build_system/pyproject.toml new file mode 100644 index 000000000..86fcebfa8 --- /dev/null +++ b/tests/data/src/pep518_invalid_build_system/pyproject.toml @@ -0,0 +1,2 @@ +[build-system] +# This table is intentionally empty. diff --git a/tests/data/src/pep518_invalid_build_system/setup.py b/tests/data/src/pep518_invalid_build_system/setup.py new file mode 100644 index 000000000..ba23cf24a --- /dev/null +++ b/tests/data/src/pep518_invalid_build_system/setup.py @@ -0,0 +1,8 @@ +#!/usr/bin/env python +from setuptools import setup + +setup( + name='pep518_invalid_build_system', + version='1.0.0', + py_modules=['pep518'], +) diff --git a/tests/functional/test_install.py b/tests/functional/test_install.py index 9ccaf9e8c..5767cdd37 100644 --- a/tests/functional/test_install.py +++ b/tests/functional/test_install.py @@ -47,6 +47,16 @@ def test_pep518_refuses_invalid_requires(script, data, common_wheels): assert "does not comply with PEP 518" in result.stderr +def test_pep518_refuses_invalid_build_system(script, data, common_wheels): + result = script.pip( + 'install', '-f', common_wheels, + data.src.join("pep518_invalid_build_system"), + expect_error=True + ) + assert result.returncode == 1 + assert "does not comply with PEP 518" in result.stderr + + def test_pep518_allows_missing_requires(script, data, common_wheels): result = script.pip( 'install', '-f', common_wheels,