Drop unused test requirement of python-wheel-wheel
- Run more tests The motivation for this is the need to drop python-wheel-wheel in wheel 0.46+. Due to newly gained runtime dependencies of wheel, such wheel cannot be used as is. I realized that when the explicit BuildRequires is removed, the package is brought in by python3-virtualenv. But even when python3-virtualenv drops the dependency, the tests still passed without python-wheel-wheel. Because the tests that require packaged wheels were all --ignored for obsolete reasons. When unignored, they errored due to missing coverage.whl. As a result of this change, the unused dependencies on packaged wheels are dropped, but the tests are collected and only those that require wheels are skipped (still the most). This change enables some tests, but skips most of them :/ Before: 1567 passed, 28 skipped, 12 deselected, 8 xfailed After: 1602 passed, 893 skipped, 173 deselected, 8 xfailed The added comment assumes python-wheel-wheel no longer exists.
This commit is contained in:
parent
2fbd290be0
commit
5183a7da7b
1 changed files with 11 additions and 12 deletions
|
|
@ -51,8 +51,6 @@ BuildRequires: /usr/bin/git
|
|||
BuildRequires: /usr/bin/hg
|
||||
BuildRequires: /usr/bin/bzr
|
||||
BuildRequires: /usr/bin/svn
|
||||
BuildRequires: python-setuptools-wheel
|
||||
BuildRequires: python-wheel-wheel
|
||||
%endif
|
||||
|
||||
%if %{with man}
|
||||
|
|
@ -192,9 +190,6 @@ A Python wheel of pip to use with venv.
|
|||
# this goes together with patch4
|
||||
rm src/pip/_vendor/certifi/*.pem
|
||||
|
||||
# tests expect wheels in here
|
||||
ln -s %{python_wheel_dir} tests/data/common_wheels
|
||||
|
||||
# Remove windows executable binaries
|
||||
rm -v src/pip/_vendor/distlib/*.exe
|
||||
sed -i '/\.exe/d' pyproject.toml
|
||||
|
|
@ -202,6 +197,16 @@ sed -i '/\.exe/d' pyproject.toml
|
|||
# Remove unused test requirements
|
||||
sed -Ei '/(pytest-(cov|xdist|rerunfailures)|proxy\.py)/d' tests/requirements.txt
|
||||
|
||||
# Skip tests requiring common_wheels
|
||||
# Upstream fetches wheels of setuptools+wheel+coverage from PyPI to tests/data/common_wheels before running tests.
|
||||
# We don't have enough packaged wheels in Fedora to replace this with %%{python_wheel_dir}.
|
||||
# To enable such tests we would need to:
|
||||
# - supply setuptools.whl from python-setuptools-wheel, e.g. by
|
||||
# ln -s %%{python_wheel_dir} tests/data/common_wheels
|
||||
# - drop the requirement for wheel.whl -- https://github.com/pypa/pip/pull/13382
|
||||
# - patch out the coverage.whl installation, as it is only used for pytest-cov
|
||||
sed -i 's/assert len(wheel_candidates) == 1/pytest.skip("no common_wheels")/' tests/conftest.py
|
||||
|
||||
|
||||
%if %{with tests}
|
||||
%generate_buildrequires
|
||||
|
|
@ -275,14 +280,8 @@ grep "pem$" %{pyproject_files} && exit 1 || true
|
|||
# bash completion tests only work from installed package
|
||||
pytest_k='not completion'
|
||||
|
||||
# --ignore'd tests are not compatible with the latest virtualenv
|
||||
# These files contain almost 500 tests so we should enable them back
|
||||
# as soon as pip will be compatible upstream
|
||||
# https://github.com/pypa/pip/pull/8441
|
||||
# among them, tests/functional/test_proxy.py needs proxy.py which is not
|
||||
# yet packaged in Fedora
|
||||
%pytest -m 'not network' -k "$(echo $pytest_k)" \
|
||||
--ignore tests/functional --ignore tests/lib/test_lib.py
|
||||
--ignore tests/functional/test_proxy.py # no proxy.py in Fedora
|
||||
%endif
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue