diff --git a/test/11_dependency_versions/cibuildwheel_test.py b/test/11_dependency_versions/cibuildwheel_test.py index 7013ee37..05f9e359 100644 --- a/test/11_dependency_versions/cibuildwheel_test.py +++ b/test/11_dependency_versions/cibuildwheel_test.py @@ -96,6 +96,7 @@ def test_dependency_constraints_file(tmp_path): 'pip': '19.2.3', 'setuptools': '43.0.0', 'wheel': '0.33.6', + 'virtualenv': '16.7.8', } constraints_file = tmp_path / 'constraints.txt' @@ -104,6 +105,7 @@ def test_dependency_constraints_file(tmp_path): pip=={pip} setuptools=={setuptools} wheel=={wheel} + virtualenv=={virtualenv} '''.format(**tool_versions) )) diff --git a/test/11_dependency_versions/setup.py b/test/11_dependency_versions/setup.py index 209f45b0..bf0b1864 100644 --- a/test/11_dependency_versions/setup.py +++ b/test/11_dependency_versions/setup.py @@ -1,8 +1,25 @@ +import os +import subprocess from setuptools import ( Extension, setup, ) +versions_output_text = subprocess.check_output( + ['pip', 'freeze', '--all', '-qq'], + universal_newlines=True, +) +versions = versions_output_text.strip().splitlines() + +# `versions` now looks like: +# ['pip==x.x.x', 'setuptools==x.x.x', 'wheel==x.x.x'] + +for package_name in ['pip', 'setuptools', 'wheel']: + env_name = 'EXPECTED_{}_VERSION'.format(package_name.upper()) + expected_version = os.environ[env_name] + + assert '{}}=={}'.format(package_name, expected_version) in versions + setup( name="spam", ext_modules=[Extension('spam', sources=['spam.c'])],