D: [iurt_root_command] chroot Building target platforms: noarch Building for target noarch sh: line 4: [: -j8: integer expression expected sh: line 4: [: -j8: integer expression expected sh: line 4: [: -j8: integer expression expected Installing /home/pterjan/rpmbuild/SRPMS/python-pytest-7.4.4-1.mga10.src.rpm Executing(%mkbuilddir): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.Ix1ZRK + umask 022 + cd /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + test -d /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + /usr/bin/rm -rf /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + /usr/bin/mkdir -p /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + /usr/bin/mkdir -p /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/SPECPARTS + RPM_EC=0 ++ jobs -p + exit 0 sh: line 4: [: -j8: integer expression expected Executing(%prep): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.oNZDtV + umask 022 + cd /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + '[' 1 -eq 1 ']' + '[' 1 -eq 1 ']' + '[' 1 -eq 1 ']' + cd /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + rm -rf pytest-7.4.4 + /usr/lib/rpm/rpmuncompress -x /home/pterjan/rpmbuild/SOURCES/pytest-7.4.4.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd pytest-7.4.4 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + /usr/lib/rpm/rpmuncompress /home/pterjan/rpmbuild/SOURCES/0001-tox-turn-off-PYTHONWARNDEFAULTENCODING-for-pre-commi.patch + /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f + /usr/lib/rpm/rpmuncompress /home/pterjan/rpmbuild/SOURCES/pytest-doc-reqs.patch + /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f + RPM_EC=0 ++ jobs -p + exit 0 sh: line 4: [: -j8: integer expression expected Executing(%generate_buildrequires): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.kJyOfR + umask 022 + cd /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + cd pytest-7.4.4 + '[' 1 -eq 1 ']' + '[' 1 -eq 1 ']' + : + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(pip) >= 19' + echo 'python3dist(packaging)' + '[' -f pyproject.toml ']' + true + for f in pyproject.toml setup.py setup.cfg + '[' -f pyproject.toml ']' + sed -i -E -e '/^requires/s/(['\''"]\s*flit_core\s*>=\s*[0-9]+(\.[0-9]+)+)\s*,\s*<\s*[0-9]+(\.[0-9]+)*(\s*['\''"])/\1\4/' pyproject.toml + sed -i -E -e '/python_requires/s/(['\''"]?\s*\S*\s*>=\s*[0-9]+(\.[0-9]+)*)\s*(,\s*(<|!=)\s*[0-9]+(\.[0-9]+)*(\.\*)*)+(\s*['\''"]?)/\1\7/' pyproject.toml + sed -i -E -e 's/(['\''"]?\s*\S*\s*>=\s*[0-9]+(\.[0-9a-z]+)*)\s*,\s*(<|!=|<=)\s*[0-9]+(\.[0-9a-z]+)*(-?dev[0-9]*)?(\.\*)*(\s*['\''"]?)/\1\7/g' pyproject.toml + sed -i -E -e 's/(['\''"]\w+\s*)!=(\s*([0-9])+(\.[0-9]+)*\s*['\''"])/\1>\2/g' pyproject.toml + sed -i -E -e 's/(['\''"]\s*>=\s*[0-9]+(\.[0-9]+)*)\s*,\s*(<|!=)\s*[0-9]+(\.[0-9]+)*(\s*['\''"])/\1\5/g' pyproject.toml + sed -i -E -e 's/(['\''"]?\s*\S*\s*>=\s*[0-9]+(\.[0-9]+)*)\s*(,\s*(<|!=)\s*[0-9]+(\.[0-9]+)*(\.\*)*)+(\s*['\''"]?)/\1\7/g' pyproject.toml + sed -i -E -e 's/(['\''"]\s*)\^(\s*[0-9]+(\.[0-9]+)*\s*['\''"])/\1>=\2/g' pyproject.toml + sed -i -e 's/~=/>=/g' pyproject.toml + sed -i -E -e 's/(['\''"]\s*\S*\s*)==(\s*[0-9]+(\.[0-9]+)*)\.\*(\s*['\''"])/\1>=\2\4/g' pyproject.toml + sed -i -E -e 's/(['\''"]?\w*\s*>=\s*[0-9]+(\.[0-9]+)*)\s*,\s*(<|!=)[0-9]+(\.[0-9]+)*\s*(['\''"]?)/\1\5/g' pyproject.toml + for f in pyproject.toml setup.py setup.cfg + '[' -f setup.py ']' + sed -i -E -e '/^requires/s/(['\''"]\s*flit_core\s*>=\s*[0-9]+(\.[0-9]+)+)\s*,\s*<\s*[0-9]+(\.[0-9]+)*(\s*['\''"])/\1\4/' setup.py + sed -i -E -e '/python_requires/s/(['\''"]?\s*\S*\s*>=\s*[0-9]+(\.[0-9]+)*)\s*(,\s*(<|!=)\s*[0-9]+(\.[0-9]+)*(\.\*)*)+(\s*['\''"]?)/\1\7/' setup.py + sed -i -E -e 's/(['\''"]?\s*\S*\s*>=\s*[0-9]+(\.[0-9a-z]+)*)\s*,\s*(<|!=|<=)\s*[0-9]+(\.[0-9a-z]+)*(-?dev[0-9]*)?(\.\*)*(\s*['\''"]?)/\1\7/g' setup.py + sed -i -E -e 's/(['\''"]\w+\s*)!=(\s*([0-9])+(\.[0-9]+)*\s*['\''"])/\1>\2/g' setup.py + sed -i -E -e 's/(['\''"]\s*>=\s*[0-9]+(\.[0-9]+)*)\s*,\s*(<|!=)\s*[0-9]+(\.[0-9]+)*(\s*['\''"])/\1\5/g' setup.py + sed -i -E -e 's/(['\''"]?\s*\S*\s*>=\s*[0-9]+(\.[0-9]+)*)\s*(,\s*(<|!=)\s*[0-9]+(\.[0-9]+)*(\.\*)*)+(\s*['\''"]?)/\1\7/g' setup.py + sed -i -E -e 's/(['\''"]\s*)\^(\s*[0-9]+(\.[0-9]+)*\s*['\''"])/\1>=\2/g' setup.py + sed -i -e 's/~=/>=/g' setup.py + sed -i -E -e 's/(['\''"]\s*\S*\s*)==(\s*[0-9]+(\.[0-9]+)*)\.\*(\s*['\''"])/\1>=\2\4/g' setup.py + sed -i -E -e 's/(['\''"]?\w*\s*>=\s*[0-9]+(\.[0-9]+)*)\s*,\s*(<|!=)[0-9]+(\.[0-9]+)*\s*(['\''"]?)/\1\5/g' setup.py + for f in pyproject.toml setup.py setup.cfg + '[' -f setup.cfg ']' + sed -i -E -e '/^requires/s/(['\''"]\s*flit_core\s*>=\s*[0-9]+(\.[0-9]+)+)\s*,\s*<\s*[0-9]+(\.[0-9]+)*(\s*['\''"])/\1\4/' setup.cfg + sed -i -E -e '/python_requires/s/(['\''"]?\s*\S*\s*>=\s*[0-9]+(\.[0-9]+)*)\s*(,\s*(<|!=)\s*[0-9]+(\.[0-9]+)*(\.\*)*)+(\s*['\''"]?)/\1\7/' setup.cfg + sed -i -E -e 's/(['\''"]?\s*\S*\s*>=\s*[0-9]+(\.[0-9a-z]+)*)\s*,\s*(<|!=|<=)\s*[0-9]+(\.[0-9a-z]+)*(-?dev[0-9]*)?(\.\*)*(\s*['\''"]?)/\1\7/g' setup.cfg + sed -i -E -e 's/(['\''"]\w+\s*)!=(\s*([0-9])+(\.[0-9]+)*\s*['\''"])/\1>\2/g' setup.cfg + sed -i -E -e 's/(['\''"]\s*>=\s*[0-9]+(\.[0-9]+)*)\s*,\s*(<|!=)\s*[0-9]+(\.[0-9]+)*(\s*['\''"])/\1\5/g' setup.cfg + sed -i -E -e 's/(['\''"]?\s*\S*\s*>=\s*[0-9]+(\.[0-9]+)*)\s*(,\s*(<|!=)\s*[0-9]+(\.[0-9]+)*(\.\*)*)+(\s*['\''"]?)/\1\7/g' setup.cfg + sed -i -E -e 's/(['\''"]\s*)\^(\s*[0-9]+(\.[0-9]+)*\s*['\''"])/\1>=\2/g' setup.cfg + sed -i -e 's/~=/>=/g' setup.cfg + sed -i -E -e 's/(['\''"]\s*\S*\s*)==(\s*[0-9]+(\.[0-9]+)*)\.\*(\s*['\''"])/\1>=\2\4/g' setup.cfg + sed -i -E -e 's/(['\''"]?\w*\s*>=\s*[0-9]+(\.[0-9]+)*)\s*,\s*(<|!=)[0-9]+(\.[0-9]+)*\s*(['\''"]?)/\1\5/g' setup.cfg + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + mkdir -p /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir + echo -n + CFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full' + LDFLAGS='-Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--build-id=sha1 -Wl,--enable-new-dtags -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + TMPDIR=/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir + RPM_TOXENV=py312 + HOSTNAME=rpmbuild + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 --wheeldir /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/pyproject-wheeldir --output /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/python-pytest-7.4.4-1.mga10.noarch-pyproject-buildrequires doc/en/requirements.txt -t -x tests Handling pallets-sphinx-themes from requirements file doc/en/requirements.txt Requirement satisfied: pallets-sphinx-themes (installed: pallets-sphinx-themes 2.1.3) Handling pluggy>=1.0 from requirements file doc/en/requirements.txt Requirement satisfied: pluggy>=1.0 (installed: pluggy 1.5.0) Handling pygments-pytest>=2.3.0 from requirements file doc/en/requirements.txt Requirement satisfied: pygments-pytest>=2.3.0 (installed: pygments-pytest 2.4.0) Handling sphinx-removed-in>=0.2.0 from requirements file doc/en/requirements.txt Requirement satisfied: sphinx-removed-in>=0.2.0 (installed: sphinx-removed-in 0.2.1) Handling sphinx from requirements file doc/en/requirements.txt Requirement satisfied: sphinx (installed: sphinx 7.3.7) Handling sphinxcontrib-trio from requirements file doc/en/requirements.txt Requirement satisfied: sphinxcontrib-trio (installed: sphinxcontrib-trio 1.1.2) Handling sphinxcontrib-svg2pdfconverter from requirements file doc/en/requirements.txt Requirement satisfied: sphinxcontrib-svg2pdfconverter (installed: sphinxcontrib-svg2pdfconverter 1.2.1) Handling packaging from requirements file doc/en/requirements.txt Requirement satisfied: packaging (installed: packaging 24.0) Handling setuptools>=45.0 from build-system.requires Requirement satisfied: setuptools>=45.0 (installed: setuptools 69.0.2) Handling setuptools-scm[toml]>=6.2.3 from build-system.requires Requirement satisfied: setuptools-scm[toml]>=6.2.3 (installed: setuptools-scm 8.0.4) (extras are currently not checked) Handling wheel from get_requires_for_build_wheel Requirement satisfied: wheel (installed: wheel 0.43.0) Handling setuptools from get_requires_for_build_wheel Requirement satisfied: setuptools (installed: setuptools 69.0.2) Handling setuptools-scm>=6.0 from get_requires_for_build_wheel Requirement satisfied: setuptools-scm>=6.0 (installed: setuptools-scm 8.0.4) Handling tox-current-env >= 0.0.6 from tox itself Requirement satisfied: tox-current-env >= 0.0.6 (installed: tox-current-env 0.0.11) py312: OK (0.01 seconds) congratulations :) (0.07 seconds) Handling tox>=3.20.0 from tox --print-deps-only: py312 Requirement satisfied: tox>=3.20.0 (installed: tox 4.11.1) running dist_info creating pytest.egg-info writing pytest.egg-info/PKG-INFO writing dependency_links to pytest.egg-info/dependency_links.txt writing entry points to pytest.egg-info/entry_points.txt writing requirements to pytest.egg-info/requires.txt writing top-level names to pytest.egg-info/top_level.txt writing manifest file 'pytest.egg-info/SOURCES.txt' reading manifest file 'pytest.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file 'pytest.egg-info/SOURCES.txt' creating '/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/pytest-7.4.4.dist-info' Handling iniconfig from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: iniconfig (installed: iniconfig 2.0.0) Handling packaging from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: packaging (installed: packaging 24.0) Handling pluggy >=0.12 from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: pluggy >=0.12 (installed: pluggy 1.5.0) Handling exceptiongroup >=1.0.0rc8 ; python_version < "3.11" from hook generated metadata: Requires-Dist (pytest) Ignoring alien requirement: exceptiongroup >=1.0.0rc8 ; python_version < "3.11" Handling tomli >=1.0.0 ; python_version < "3.11" from hook generated metadata: Requires-Dist (pytest) Ignoring alien requirement: tomli >=1.0.0 ; python_version < "3.11" Handling importlib-metadata >=0.12 ; python_version < "3.8" from hook generated metadata: Requires-Dist (pytest) Ignoring alien requirement: importlib-metadata >=0.12 ; python_version < "3.8" Handling colorama ; sys_platform == "win32" from hook generated metadata: Requires-Dist (pytest) Ignoring alien requirement: colorama ; sys_platform == "win32" Handling argcomplete ; extra == 'testing' from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: argcomplete ; extra == 'testing' (installed: argcomplete 3.5.0) Handling attrs >=19.2.0 ; extra == 'testing' from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: attrs >=19.2.0 ; extra == 'testing' (installed: attrs 24.2.0) Handling hypothesis >=3.56 ; extra == 'testing' from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: hypothesis >=3.56 ; extra == 'testing' (installed: hypothesis 6.98.8) Handling mock ; extra == 'testing' from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: mock ; extra == 'testing' (installed: mock 5.1.0) Handling nose ; extra == 'testing' from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: nose ; extra == 'testing' (installed: nose 1.3.7) Handling pygments >=2.7.2 ; extra == 'testing' from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: pygments >=2.7.2 ; extra == 'testing' (installed: pygments 2.17.2) Handling requests ; extra == 'testing' from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: requests ; extra == 'testing' (installed: requests 2.32.3) Handling setuptools ; extra == 'testing' from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: setuptools ; extra == 'testing' (installed: setuptools 69.0.2) Handling xmlschema ; extra == 'testing' from hook generated metadata: Requires-Dist (pytest) Requirement satisfied: xmlschema ; extra == 'testing' (installed: xmlschema 3.3.1) + cat /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/python-pytest-7.4.4-1.mga10.noarch-pyproject-buildrequires + rm -rfv pytest-7.4.4.dist-info/ removed 'pytest-7.4.4.dist-info/entry_points.txt' removed 'pytest-7.4.4.dist-info/top_level.txt' removed 'pytest-7.4.4.dist-info/METADATA' removed 'pytest-7.4.4.dist-info/LICENSE' removed directory 'pytest-7.4.4.dist-info/' + RPM_EC=0 ++ jobs -p + exit 0 sh: line 4: [: -j8: integer expression expected Executing(%build): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.xtDijq + umask 022 + cd /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + cd pytest-7.4.4 + '[' 1 -eq 1 ']' + '[' 1 -eq 1 ']' + mkdir -p /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir + CFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full' + LDFLAGS='-Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--build-id=sha1 -Wl,--enable-new-dtags -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + TMPDIR=/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_wheel.py /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/pyproject-wheeldir Processing /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4 Preparing metadata (pyproject.toml): started Running command Preparing metadata (pyproject.toml) running dist_info creating /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-modern-metadata-ddsxvoum/pytest.egg-info writing /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-modern-metadata-ddsxvoum/pytest.egg-info/PKG-INFO writing dependency_links to /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-modern-metadata-ddsxvoum/pytest.egg-info/dependency_links.txt writing entry points to /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-modern-metadata-ddsxvoum/pytest.egg-info/entry_points.txt writing requirements to /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-modern-metadata-ddsxvoum/pytest.egg-info/requires.txt writing top-level names to /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-modern-metadata-ddsxvoum/pytest.egg-info/top_level.txt writing manifest file '/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-modern-metadata-ddsxvoum/pytest.egg-info/SOURCES.txt' reading manifest file '/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-modern-metadata-ddsxvoum/pytest.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file '/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-modern-metadata-ddsxvoum/pytest.egg-info/SOURCES.txt' creating '/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-modern-metadata-ddsxvoum/pytest-7.4.4.dist-info' Preparing metadata (pyproject.toml): finished with status 'done' Building wheels for collected packages: pytest Building wheel for pytest (pyproject.toml): started Running command Building wheel for pytest (pyproject.toml) running bdist_wheel running build running build_py creating build creating build/lib copying src/py.py -> build/lib creating build/lib/_pytest copying src/_pytest/main.py -> build/lib/_pytest copying src/_pytest/pytester_assertions.py -> build/lib/_pytest copying src/_pytest/skipping.py -> build/lib/_pytest copying src/_pytest/faulthandler.py -> build/lib/_pytest copying src/_pytest/cacheprovider.py -> build/lib/_pytest copying src/_pytest/scope.py -> build/lib/_pytest copying src/_pytest/monkeypatch.py -> build/lib/_pytest copying src/_pytest/stash.py -> build/lib/_pytest copying src/_pytest/warning_types.py -> build/lib/_pytest copying src/_pytest/deprecated.py -> build/lib/_pytest copying src/_pytest/runner.py -> build/lib/_pytest copying src/_pytest/python.py -> build/lib/_pytest copying src/_pytest/debugging.py -> build/lib/_pytest copying src/_pytest/python_api.py -> build/lib/_pytest copying src/_pytest/unittest.py -> build/lib/_pytest copying src/_pytest/recwarn.py -> build/lib/_pytest copying src/_pytest/helpconfig.py -> build/lib/_pytest copying src/_pytest/unraisableexception.py -> build/lib/_pytest copying src/_pytest/compat.py -> build/lib/_pytest copying src/_pytest/stepwise.py -> build/lib/_pytest copying src/_pytest/hookspec.py -> build/lib/_pytest copying src/_pytest/nodes.py -> build/lib/_pytest copying src/_pytest/logging.py -> build/lib/_pytest copying src/_pytest/pastebin.py -> build/lib/_pytest copying src/_pytest/pytester.py -> build/lib/_pytest copying src/_pytest/doctest.py -> build/lib/_pytest copying src/_pytest/timing.py -> build/lib/_pytest copying src/_pytest/nose.py -> build/lib/_pytest copying src/_pytest/junitxml.py -> build/lib/_pytest copying src/_pytest/warnings.py -> build/lib/_pytest copying src/_pytest/setuponly.py -> build/lib/_pytest copying src/_pytest/tmpdir.py -> build/lib/_pytest copying src/_pytest/__init__.py -> build/lib/_pytest copying src/_pytest/fixtures.py -> build/lib/_pytest copying src/_pytest/capture.py -> build/lib/_pytest copying src/_pytest/setupplan.py -> build/lib/_pytest copying src/_pytest/threadexception.py -> build/lib/_pytest copying src/_pytest/pathlib.py -> build/lib/_pytest copying src/_pytest/freeze_support.py -> build/lib/_pytest copying src/_pytest/legacypath.py -> build/lib/_pytest copying src/_pytest/python_path.py -> build/lib/_pytest copying src/_pytest/outcomes.py -> build/lib/_pytest copying src/_pytest/_argcomplete.py -> build/lib/_pytest copying src/_pytest/_version.py -> build/lib/_pytest copying src/_pytest/terminal.py -> build/lib/_pytest copying src/_pytest/reports.py -> build/lib/_pytest creating build/lib/_pytest/_code copying src/_pytest/_code/code.py -> build/lib/_pytest/_code copying src/_pytest/_code/source.py -> build/lib/_pytest/_code copying src/_pytest/_code/__init__.py -> build/lib/_pytest/_code creating build/lib/_pytest/_io copying src/_pytest/_io/wcwidth.py -> build/lib/_pytest/_io copying src/_pytest/_io/terminalwriter.py -> build/lib/_pytest/_io copying src/_pytest/_io/saferepr.py -> build/lib/_pytest/_io copying src/_pytest/_io/__init__.py -> build/lib/_pytest/_io creating build/lib/_pytest/_py copying src/_pytest/_py/error.py -> build/lib/_pytest/_py copying src/_pytest/_py/__init__.py -> build/lib/_pytest/_py copying src/_pytest/_py/path.py -> build/lib/_pytest/_py creating build/lib/_pytest/assertion copying src/_pytest/assertion/truncate.py -> build/lib/_pytest/assertion copying src/_pytest/assertion/__init__.py -> build/lib/_pytest/assertion copying src/_pytest/assertion/util.py -> build/lib/_pytest/assertion copying src/_pytest/assertion/rewrite.py -> build/lib/_pytest/assertion creating build/lib/_pytest/config copying src/_pytest/config/exceptions.py -> build/lib/_pytest/config copying src/_pytest/config/compat.py -> build/lib/_pytest/config copying src/_pytest/config/argparsing.py -> build/lib/_pytest/config copying src/_pytest/config/findpaths.py -> build/lib/_pytest/config copying src/_pytest/config/__init__.py -> build/lib/_pytest/config creating build/lib/_pytest/mark copying src/_pytest/mark/expression.py -> build/lib/_pytest/mark copying src/_pytest/mark/structures.py -> build/lib/_pytest/mark copying src/_pytest/mark/__init__.py -> build/lib/_pytest/mark creating build/lib/pytest copying src/pytest/__main__.py -> build/lib/pytest copying src/pytest/__init__.py -> build/lib/pytest copying src/_pytest/py.typed -> build/lib/_pytest copying src/pytest/py.typed -> build/lib/pytest installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64 creating build/bdist.linux-x86_64/wheel copying build/lib/py.py -> build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/_pytest creating build/bdist.linux-x86_64/wheel/_pytest/assertion copying build/lib/_pytest/assertion/truncate.py -> build/bdist.linux-x86_64/wheel/_pytest/assertion copying build/lib/_pytest/assertion/__init__.py -> build/bdist.linux-x86_64/wheel/_pytest/assertion copying build/lib/_pytest/assertion/util.py -> build/bdist.linux-x86_64/wheel/_pytest/assertion copying build/lib/_pytest/assertion/rewrite.py -> build/bdist.linux-x86_64/wheel/_pytest/assertion copying build/lib/_pytest/main.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/pytester_assertions.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/skipping.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/faulthandler.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/cacheprovider.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/scope.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/monkeypatch.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/stash.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/warning_types.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/deprecated.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/runner.py -> build/bdist.linux-x86_64/wheel/_pytest creating build/bdist.linux-x86_64/wheel/_pytest/mark copying build/lib/_pytest/mark/expression.py -> build/bdist.linux-x86_64/wheel/_pytest/mark copying build/lib/_pytest/mark/structures.py -> build/bdist.linux-x86_64/wheel/_pytest/mark copying build/lib/_pytest/mark/__init__.py -> build/bdist.linux-x86_64/wheel/_pytest/mark copying build/lib/_pytest/python.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/debugging.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/python_api.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/unittest.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/recwarn.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/helpconfig.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/unraisableexception.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/compat.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/stepwise.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/hookspec.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/nodes.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/logging.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/pastebin.py -> build/bdist.linux-x86_64/wheel/_pytest creating build/bdist.linux-x86_64/wheel/_pytest/_py copying build/lib/_pytest/_py/error.py -> build/bdist.linux-x86_64/wheel/_pytest/_py copying build/lib/_pytest/_py/__init__.py -> build/bdist.linux-x86_64/wheel/_pytest/_py copying build/lib/_pytest/_py/path.py -> build/bdist.linux-x86_64/wheel/_pytest/_py copying build/lib/_pytest/pytester.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/doctest.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/timing.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/nose.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/junitxml.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/warnings.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/setuponly.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/tmpdir.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/__init__.py -> build/bdist.linux-x86_64/wheel/_pytest creating build/bdist.linux-x86_64/wheel/_pytest/config copying build/lib/_pytest/config/exceptions.py -> build/bdist.linux-x86_64/wheel/_pytest/config copying build/lib/_pytest/config/compat.py -> build/bdist.linux-x86_64/wheel/_pytest/config copying build/lib/_pytest/config/argparsing.py -> build/bdist.linux-x86_64/wheel/_pytest/config copying build/lib/_pytest/config/findpaths.py -> build/bdist.linux-x86_64/wheel/_pytest/config copying build/lib/_pytest/config/__init__.py -> build/bdist.linux-x86_64/wheel/_pytest/config copying build/lib/_pytest/fixtures.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/capture.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/setupplan.py -> build/bdist.linux-x86_64/wheel/_pytest creating build/bdist.linux-x86_64/wheel/_pytest/_io copying build/lib/_pytest/_io/wcwidth.py -> build/bdist.linux-x86_64/wheel/_pytest/_io copying build/lib/_pytest/_io/terminalwriter.py -> build/bdist.linux-x86_64/wheel/_pytest/_io copying build/lib/_pytest/_io/saferepr.py -> build/bdist.linux-x86_64/wheel/_pytest/_io copying build/lib/_pytest/_io/__init__.py -> build/bdist.linux-x86_64/wheel/_pytest/_io copying build/lib/_pytest/threadexception.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/pathlib.py -> build/bdist.linux-x86_64/wheel/_pytest creating build/bdist.linux-x86_64/wheel/_pytest/_code copying build/lib/_pytest/_code/code.py -> build/bdist.linux-x86_64/wheel/_pytest/_code copying build/lib/_pytest/_code/source.py -> build/bdist.linux-x86_64/wheel/_pytest/_code copying build/lib/_pytest/_code/__init__.py -> build/bdist.linux-x86_64/wheel/_pytest/_code copying build/lib/_pytest/freeze_support.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/legacypath.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/python_path.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/outcomes.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/_argcomplete.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/_version.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/terminal.py -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/py.typed -> build/bdist.linux-x86_64/wheel/_pytest copying build/lib/_pytest/reports.py -> build/bdist.linux-x86_64/wheel/_pytest creating build/bdist.linux-x86_64/wheel/pytest copying build/lib/pytest/__main__.py -> build/bdist.linux-x86_64/wheel/pytest copying build/lib/pytest/__init__.py -> build/bdist.linux-x86_64/wheel/pytest copying build/lib/pytest/py.typed -> build/bdist.linux-x86_64/wheel/pytest running install_egg_info running egg_info writing src/pytest.egg-info/PKG-INFO writing dependency_links to src/pytest.egg-info/dependency_links.txt writing entry points to src/pytest.egg-info/entry_points.txt writing requirements to src/pytest.egg-info/requires.txt writing top-level names to src/pytest.egg-info/top_level.txt reading manifest file 'src/pytest.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file 'src/pytest.egg-info/SOURCES.txt' Copying src/pytest.egg-info to build/bdist.linux-x86_64/wheel/pytest-7.4.4-py3.12.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/pytest-7.4.4.dist-info/WHEEL creating '/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir/pip-wheel-zrx_wzig/.tmp-q9zcuxib/pytest-7.4.4-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'py.py' adding '_pytest/__init__.py' adding '_pytest/_argcomplete.py' adding '_pytest/_version.py' adding '_pytest/cacheprovider.py' adding '_pytest/capture.py' adding '_pytest/compat.py' adding '_pytest/debugging.py' adding '_pytest/deprecated.py' adding '_pytest/doctest.py' adding '_pytest/faulthandler.py' adding '_pytest/fixtures.py' adding '_pytest/freeze_support.py' adding '_pytest/helpconfig.py' adding '_pytest/hookspec.py' adding '_pytest/junitxml.py' adding '_pytest/legacypath.py' adding '_pytest/logging.py' adding '_pytest/main.py' adding '_pytest/monkeypatch.py' adding '_pytest/nodes.py' adding '_pytest/nose.py' adding '_pytest/outcomes.py' adding '_pytest/pastebin.py' adding '_pytest/pathlib.py' adding '_pytest/py.typed' adding '_pytest/pytester.py' adding '_pytest/pytester_assertions.py' adding '_pytest/python.py' adding '_pytest/python_api.py' adding '_pytest/python_path.py' adding '_pytest/recwarn.py' adding '_pytest/reports.py' adding '_pytest/runner.py' adding '_pytest/scope.py' adding '_pytest/setuponly.py' adding '_pytest/setupplan.py' adding '_pytest/skipping.py' adding '_pytest/stash.py' adding '_pytest/stepwise.py' adding '_pytest/terminal.py' adding '_pytest/threadexception.py' adding '_pytest/timing.py' adding '_pytest/tmpdir.py' adding '_pytest/unittest.py' adding '_pytest/unraisableexception.py' adding '_pytest/warning_types.py' adding '_pytest/warnings.py' adding '_pytest/_code/__init__.py' adding '_pytest/_code/code.py' adding '_pytest/_code/source.py' adding '_pytest/_io/__init__.py' adding '_pytest/_io/saferepr.py' adding '_pytest/_io/terminalwriter.py' adding '_pytest/_io/wcwidth.py' adding '_pytest/_py/__init__.py' adding '_pytest/_py/error.py' adding '_pytest/_py/path.py' adding '_pytest/assertion/__init__.py' adding '_pytest/assertion/rewrite.py' adding '_pytest/assertion/truncate.py' adding '_pytest/assertion/util.py' adding '_pytest/config/__init__.py' adding '_pytest/config/argparsing.py' adding '_pytest/config/compat.py' adding '_pytest/config/exceptions.py' adding '_pytest/config/findpaths.py' adding '_pytest/mark/__init__.py' adding '_pytest/mark/expression.py' adding '_pytest/mark/structures.py' adding 'pytest/__init__.py' adding 'pytest/__main__.py' adding 'pytest/py.typed' adding 'pytest-7.4.4.dist-info/LICENSE' adding 'pytest-7.4.4.dist-info/METADATA' adding 'pytest-7.4.4.dist-info/WHEEL' adding 'pytest-7.4.4.dist-info/entry_points.txt' adding 'pytest-7.4.4.dist-info/top_level.txt' adding 'pytest-7.4.4.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel Building wheel for pytest (pyproject.toml): finished with status 'done' Created wheel for pytest: filename=pytest-7.4.4-py3-none-any.whl size=324197 sha256=915e00bf79e882003ce5f71dd74c44827a627ac3ce87fa3bce52ce482160983d Stored in directory: /home/pterjan/.cache/pip/wheels/9d/40/e7/3a13fa42ac6adda1440a5c1388097bd12353c83a1679123729 Successfully built pytest + for l in doc/* ++ pwd + make -C doc/en html PYTHONPATH=/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/src SPHINXBUILD=/usr/bin/sphinx-build-3.12 make: Entering directory '/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en' Running Sphinx v7.3.7 making output directory... done [autosummary] generating autosummary for: adopt.rst, announce/index.rst, announce/release-2.0.0.rst, announce/release-2.0.1.rst, announce/release-2.0.2.rst, announce/release-2.0.3.rst, announce/release-2.1.0.rst, announce/release-2.1.1.rst, announce/release-2.1.2.rst, announce/release-2.1.3.rst, ..., reference/customize.rst, reference/exit-codes.rst, reference/fixtures.rst, reference/index.rst, reference/plugin_list.rst, reference/reference.rst, sponsor.rst, talks.rst, tidelift.rst, yieldfixture.rst loading intersphinx inventory from https://pluggy.readthedocs.io/en/stable/objects.inv... loading intersphinx inventory from https://docs.python.org/3/objects.inv... loading intersphinx inventory from https://numpy.org/doc/stable/objects.inv... WARNING: failed to reach any of the inventories with the following issues: intersphinx inventory 'https://pluggy.readthedocs.io/en/stable/objects.inv' not fetchable due to : HTTPSConnectionPool(host='pluggy.readthedocs.io', port=443): Max retries exceeded with url: /en/stable/objects.inv (Caused by NameResolutionError(": Failed to resolve 'pluggy.readthedocs.io' ([Errno -2] Name or service not known)")) loading intersphinx inventory from https://pip.pypa.io/en/stable/objects.inv... loading intersphinx inventory from https://tox.wiki/en/stable/objects.inv... WARNING: failed to reach any of the inventories with the following issues: intersphinx inventory 'https://docs.python.org/3/objects.inv' not fetchable due to : HTTPSConnectionPool(host='docs.python.org', port=443): Max retries exceeded with url: /3/objects.inv (Caused by NameResolutionError(": Failed to resolve 'docs.python.org' ([Errno -2] Name or service not known)")) loading intersphinx inventory from https://virtualenv.pypa.io/en/stable/objects.inv... WARNING: failed to reach any of the inventories with the following issues: intersphinx inventory 'https://numpy.org/doc/stable/objects.inv' not fetchable due to : HTTPSConnectionPool(host='numpy.org', port=443): Max retries exceeded with url: /doc/stable/objects.inv (Caused by NameResolutionError(": Failed to resolve 'numpy.org' ([Errno -2] Name or service not known)")) WARNING: failed to reach any of the inventories with the following issues: intersphinx inventory 'https://pip.pypa.io/en/stable/objects.inv' not fetchable due to : HTTPSConnectionPool(host='pip.pypa.io', port=443): Max retries exceeded with url: /en/stable/objects.inv (Caused by NameResolutionError(": Failed to resolve 'pip.pypa.io' ([Errno -2] Name or service not known)")) loading intersphinx inventory from https://setuptools.pypa.io/en/stable/objects.inv... WARNING: failed to reach any of the inventories with the following issues: intersphinx inventory 'https://tox.wiki/en/stable/objects.inv' not fetchable due to : HTTPSConnectionPool(host='tox.wiki', port=443): Max retries exceeded with url: /en/stable/objects.inv (Caused by NameResolutionError(": Failed to resolve 'tox.wiki' ([Errno -2] Name or service not known)")) loading intersphinx inventory from https://packaging.python.org/en/latest/objects.inv... WARNING: failed to reach any of the inventories with the following issues: intersphinx inventory 'https://virtualenv.pypa.io/en/stable/objects.inv' not fetchable due to : HTTPSConnectionPool(host='virtualenv.pypa.io', port=443): Max retries exceeded with url: /en/stable/objects.inv (Caused by NameResolutionError(": Failed to resolve 'virtualenv.pypa.io' ([Errno -2] Name or service not known)")) WARNING: failed to reach any of the inventories with the following issues: intersphinx inventory 'https://setuptools.pypa.io/en/stable/objects.inv' not fetchable due to : HTTPSConnectionPool(host='setuptools.pypa.io', port=443): Max retries exceeded with url: /en/stable/objects.inv (Caused by NameResolutionError(": Failed to resolve 'setuptools.pypa.io' ([Errno -2] Name or service not known)")) WARNING: failed to reach any of the inventories with the following issues: intersphinx inventory 'https://packaging.python.org/en/latest/objects.inv' not fetchable due to : HTTPSConnectionPool(host='packaging.python.org', port=443): Max retries exceeded with url: /en/latest/objects.inv (Caused by NameResolutionError(": Failed to resolve 'packaging.python.org' ([Errno -2] Name or service not known)")) building [mo]: targets for 0 po files that are out of date writing output... building [html]: targets for 227 source files that are out of date updating environment: [new config] 227 added, 0 changed, 0 removed reading sources... [ 0%] adopt reading sources... [ 1%] announce/index reading sources... [ 1%] announce/release-2.0.0 reading sources... [ 2%] announce/release-2.0.1 reading sources... [ 2%] announce/release-2.0.2 reading sources... [ 3%] announce/release-2.0.3 reading sources... [ 3%] announce/release-2.1.0 reading sources... [ 4%] announce/release-2.1.1 reading sources... [ 4%] announce/release-2.1.2 reading sources... [ 4%] announce/release-2.1.3 reading sources... [ 5%] announce/release-2.2.0 reading sources... [ 5%] announce/release-2.2.1 reading sources... [ 6%] announce/release-2.2.2 reading sources... [ 6%] announce/release-2.2.4 reading sources... [ 7%] announce/release-2.3.0 reading sources... [ 7%] announce/release-2.3.1 reading sources... [ 7%] announce/release-2.3.2 reading sources... [ 8%] announce/release-2.3.3 reading sources... [ 8%] announce/release-2.3.4 reading sources... [ 9%] announce/release-2.3.5 reading sources... [ 9%] announce/release-2.4.0 reading sources... [ 10%] announce/release-2.4.1 reading sources... [ 10%] announce/release-2.4.2 reading sources... [ 11%] announce/release-2.5.0 reading sources... [ 11%] announce/release-2.5.1 reading sources... [ 11%] announce/release-2.5.2 reading sources... [ 12%] announce/release-2.6.0 reading sources... [ 12%] announce/release-2.6.1 reading sources... [ 13%] announce/release-2.6.2 reading sources... [ 13%] announce/release-2.6.3 reading sources... [ 14%] announce/release-2.7.0 reading sources... [ 14%] announce/release-2.7.1 reading sources... [ 15%] announce/release-2.7.2 reading sources... [ 15%] announce/release-2.8.2 reading sources... [ 15%] announce/release-2.8.3 reading sources... [ 16%] announce/release-2.8.4 reading sources... [ 16%] announce/release-2.8.5 reading sources... [ 17%] announce/release-2.8.6 reading sources... [ 17%] announce/release-2.8.7 reading sources... [ 18%] announce/release-2.9.0 reading sources... [ 18%] announce/release-2.9.1 reading sources... [ 19%] announce/release-2.9.2 reading sources... [ 19%] announce/release-3.0.0 reading sources... [ 19%] announce/release-3.0.1 reading sources... [ 20%] announce/release-3.0.2 reading sources... [ 20%] announce/release-3.0.3 reading sources... [ 21%] announce/release-3.0.4 reading sources... [ 21%] announce/release-3.0.5 reading sources... [ 22%] announce/release-3.0.6 reading sources... [ 22%] announce/release-3.0.7 reading sources... [ 22%] announce/release-3.1.0 reading sources... [ 23%] announce/release-3.1.1 reading sources... [ 23%] announce/release-3.1.2 reading sources... [ 24%] announce/release-3.1.3 reading sources... [ 24%] announce/release-3.10.0 reading sources... [ 25%] announce/release-3.10.1 reading sources... [ 25%] announce/release-3.2.0 reading sources... [ 26%] announce/release-3.2.1 reading sources... [ 26%] announce/release-3.2.2 reading sources... [ 26%] announce/release-3.2.3 reading sources... [ 27%] announce/release-3.2.4 reading sources... [ 27%] announce/release-3.2.5 reading sources... [ 28%] announce/release-3.3.0 reading sources... [ 28%] announce/release-3.3.1 reading sources... [ 29%] announce/release-3.3.2 reading sources... [ 29%] announce/release-3.4.0 reading sources... [ 30%] announce/release-3.4.1 reading sources... [ 30%] announce/release-3.4.2 reading sources... [ 30%] announce/release-3.5.0 reading sources... [ 31%] announce/release-3.5.1 reading sources... [ 31%] announce/release-3.6.0 reading sources... [ 32%] announce/release-3.6.1 reading sources... [ 32%] announce/release-3.6.2 reading sources... [ 33%] announce/release-3.6.3 reading sources... [ 33%] announce/release-3.6.4 reading sources... [ 33%] announce/release-3.7.0 reading sources... [ 34%] announce/release-3.7.1 reading sources... [ 34%] announce/release-3.7.2 reading sources... [ 35%] announce/release-3.7.3 reading sources... [ 35%] announce/release-3.7.4 reading sources... [ 36%] announce/release-3.8.0 reading sources... [ 36%] announce/release-3.8.1 reading sources... [ 37%] announce/release-3.8.2 reading sources... [ 37%] announce/release-3.9.0 reading sources... [ 37%] announce/release-3.9.1 reading sources... [ 38%] announce/release-3.9.2 reading sources... [ 38%] announce/release-3.9.3 reading sources... [ 39%] announce/release-4.0.0 reading sources... [ 39%] announce/release-4.0.1 reading sources... [ 40%] announce/release-4.0.2 reading sources... [ 40%] announce/release-4.1.0 reading sources... [ 41%] announce/release-4.1.1 reading sources... [ 41%] announce/release-4.2.0 reading sources... [ 41%] announce/release-4.2.1 reading sources... [ 42%] announce/release-4.3.0 reading sources... [ 42%] announce/release-4.3.1 reading sources... [ 43%] announce/release-4.4.0 reading sources... [ 43%] announce/release-4.4.1 reading sources... [ 44%] announce/release-4.4.2 reading sources... [ 44%] announce/release-4.5.0 reading sources... [ 44%] announce/release-4.6.0 reading sources... [ 45%] announce/release-4.6.1 reading sources... [ 45%] announce/release-4.6.2 reading sources... [ 46%] announce/release-4.6.3 reading sources... [ 46%] announce/release-4.6.4 reading sources... [ 47%] announce/release-4.6.5 reading sources... [ 47%] announce/release-4.6.6 reading sources... [ 48%] announce/release-4.6.7 reading sources... [ 48%] announce/release-4.6.8 reading sources... [ 48%] announce/release-4.6.9 reading sources... [ 49%] announce/release-5.0.0 reading sources... [ 49%] announce/release-5.0.1 reading sources... [ 50%] announce/release-5.1.0 reading sources... [ 50%] announce/release-5.1.1 reading sources... [ 51%] announce/release-5.1.2 reading sources... [ 51%] announce/release-5.1.3 reading sources... [ 52%] announce/release-5.2.0 reading sources... [ 52%] announce/release-5.2.1 reading sources... [ 52%] announce/release-5.2.2 reading sources... [ 53%] announce/release-5.2.3 reading sources... [ 53%] announce/release-5.2.4 reading sources... [ 54%] announce/release-5.3.0 reading sources... [ 54%] announce/release-5.3.1 reading sources... [ 55%] announce/release-5.3.2 reading sources... [ 55%] announce/release-5.3.3 reading sources... [ 56%] announce/release-5.3.4 reading sources... [ 56%] announce/release-5.3.5 reading sources... [ 56%] announce/release-5.4.0 reading sources... [ 57%] announce/release-5.4.1 reading sources... [ 57%] announce/release-5.4.2 reading sources... [ 58%] announce/release-5.4.3 reading sources... [ 58%] announce/release-6.0.0 reading sources... [ 59%] announce/release-6.0.0rc1 reading sources... [ 59%] announce/release-6.0.1 reading sources... [ 59%] announce/release-6.0.2 reading sources... [ 60%] announce/release-6.1.0 reading sources... [ 60%] announce/release-6.1.1 reading sources... [ 61%] announce/release-6.1.2 reading sources... [ 61%] announce/release-6.2.0 reading sources... [ 62%] announce/release-6.2.1 reading sources... [ 62%] announce/release-6.2.2 reading sources... [ 63%] announce/release-6.2.3 reading sources... [ 63%] announce/release-6.2.4 reading sources... [ 63%] announce/release-6.2.5 reading sources... [ 64%] announce/release-7.0.0 reading sources... [ 64%] announce/release-7.0.0rc1 reading sources... [ 65%] announce/release-7.0.1 reading sources... [ 65%] announce/release-7.1.0 reading sources... [ 66%] announce/release-7.1.1 reading sources... [ 66%] announce/release-7.1.2 reading sources... [ 67%] announce/release-7.1.3 reading sources... [ 67%] announce/release-7.2.0 reading sources... [ 67%] announce/release-7.2.1 reading sources... [ 68%] announce/release-7.2.2 reading sources... [ 68%] announce/release-7.3.0 reading sources... [ 69%] announce/release-7.3.1 reading sources... [ 69%] announce/release-7.3.2 reading sources... [ 70%] announce/release-7.4.0 reading sources... [ 70%] announce/release-7.4.1 reading sources... [ 70%] announce/release-7.4.2 reading sources... [ 71%] announce/release-7.4.3 reading sources... [ 71%] announce/release-7.4.4 reading sources... [ 72%] announce/sprint2016 reading sources... [ 72%] backwards-compatibility reading sources... [ 73%] builtin reading sources... [ 73%] changelog reading sources... [ 74%] contact reading sources... [ 74%] contents reading sources... [ 74%] contributing reading sources... [ 75%] deprecations reading sources... [ 75%] development_guide reading sources... [ 76%] example/index reading sources... [ 76%] example/markers reading sources... [ 77%] example/nonpython reading sources... [ 77%] example/parametrize reading sources... [ 78%] example/pythoncollection reading sources... [ 78%] example/reportingdemo reading sources... [ 78%] example/simple reading sources... [ 79%] example/special reading sources... [ 79%] explanation/anatomy reading sources... [ 80%] explanation/fixtures reading sources... [ 80%] explanation/flaky reading sources... [ 81%] explanation/goodpractices reading sources... [ 81%] explanation/index reading sources... [ 81%] explanation/pythonpath reading sources... [ 82%] funcarg_compare reading sources... [ 82%] getting-started reading sources... [ 83%] historical-notes reading sources... [ 83%] history reading sources... [ 84%] how-to/assert reading sources... [ 84%] how-to/bash-completion reading sources... [ 85%] how-to/cache reading sources... [ 85%] how-to/capture-stdout-stderr reading sources... [ 85%] how-to/capture-warnings reading sources... [ 86%] how-to/doctest reading sources... [ 86%] how-to/existingtestsuite reading sources... [ 87%] how-to/failures reading sources... [ 87%] how-to/fixtures reading sources... [ 88%] how-to/index reading sources... [ 88%] how-to/logging reading sources... [ 89%] how-to/mark reading sources... [ 89%] how-to/monkeypatch reading sources... [ 89%] how-to/nose reading sources... [ 90%] how-to/output reading sources... [ 90%] how-to/parametrize reading sources... [ 91%] how-to/plugins reading sources... [ 91%] how-to/skipping reading sources... [ 92%] how-to/tmp_path reading sources... [ 92%] how-to/unittest reading sources... [ 93%] how-to/usage reading sources... [ 93%] how-to/writing_hook_functions reading sources... [ 93%] how-to/writing_plugins reading sources... [ 94%] how-to/xunit_setup reading sources... [ 94%] index reading sources... [ 95%] license reading sources... [ 95%] proposals/parametrize_with_fixtures reading sources... [ 96%] recwarn reading sources... [ 96%] reference/customize reading sources... [ 96%] reference/exit-codes reading sources... [ 97%] reference/fixtures reading sources... [ 97%] reference/index reading sources... [ 98%] reference/plugin_list reading sources... [ 98%] reference/reference reading sources... [ 99%] sponsor reading sources... [ 99%] talks reading sources... [100%] tidelift reading sources... [100%] yieldfixture looking for now-outdated files... none found pickling environment... done checking consistency... done preparing documents... done copying assets... copying static files... done copying extra files... done done writing output... [ 0%] adopt writing output... [ 1%] announce/index writing output... [ 1%] announce/release-2.0.0 writing output... [ 2%] announce/release-2.0.1 writing output... [ 2%] announce/release-2.0.2 writing output... [ 3%] announce/release-2.0.3 writing output... [ 3%] announce/release-2.1.0 writing output... [ 4%] announce/release-2.1.1 writing output... [ 4%] announce/release-2.1.2 writing output... [ 4%] announce/release-2.1.3 writing output... [ 5%] announce/release-2.2.0 writing output... [ 5%] announce/release-2.2.1 writing output... [ 6%] announce/release-2.2.2 writing output... [ 6%] announce/release-2.2.4 writing output... [ 7%] announce/release-2.3.0 writing output... [ 7%] announce/release-2.3.1 writing output... [ 7%] announce/release-2.3.2 writing output... [ 8%] announce/release-2.3.3 writing output... [ 8%] announce/release-2.3.4 writing output... [ 9%] announce/release-2.3.5 writing output... [ 9%] announce/release-2.4.0 writing output... [ 10%] announce/release-2.4.1 writing output... [ 10%] announce/release-2.4.2 writing output... [ 11%] announce/release-2.5.0 writing output... [ 11%] announce/release-2.5.1 writing output... [ 11%] announce/release-2.5.2 writing output... [ 12%] announce/release-2.6.0 writing output... [ 12%] announce/release-2.6.1 writing output... [ 13%] announce/release-2.6.2 writing output... [ 13%] announce/release-2.6.3 writing output... [ 14%] announce/release-2.7.0 writing output... [ 14%] announce/release-2.7.1 writing output... [ 15%] announce/release-2.7.2 writing output... [ 15%] announce/release-2.8.2 writing output... [ 15%] announce/release-2.8.3 writing output... [ 16%] announce/release-2.8.4 writing output... [ 16%] announce/release-2.8.5 writing output... [ 17%] announce/release-2.8.6 writing output... [ 17%] announce/release-2.8.7 writing output... [ 18%] announce/release-2.9.0 writing output... [ 18%] announce/release-2.9.1 writing output... [ 19%] announce/release-2.9.2 writing output... [ 19%] announce/release-3.0.0 writing output... [ 19%] announce/release-3.0.1 writing output... [ 20%] announce/release-3.0.2 writing output... [ 20%] announce/release-3.0.3 writing output... [ 21%] announce/release-3.0.4 writing output... [ 21%] announce/release-3.0.5 writing output... [ 22%] announce/release-3.0.6 writing output... [ 22%] announce/release-3.0.7 writing output... [ 22%] announce/release-3.1.0 writing output... [ 23%] announce/release-3.1.1 writing output... [ 23%] announce/release-3.1.2 writing output... [ 24%] announce/release-3.1.3 writing output... [ 24%] announce/release-3.10.0 writing output... [ 25%] announce/release-3.10.1 writing output... [ 25%] announce/release-3.2.0 writing output... [ 26%] announce/release-3.2.1 writing output... [ 26%] announce/release-3.2.2 writing output... [ 26%] announce/release-3.2.3 writing output... [ 27%] announce/release-3.2.4 writing output... [ 27%] announce/release-3.2.5 writing output... [ 28%] announce/release-3.3.0 writing output... [ 28%] announce/release-3.3.1 writing output... [ 29%] announce/release-3.3.2 writing output... [ 29%] announce/release-3.4.0 writing output... [ 30%] announce/release-3.4.1 writing output... [ 30%] announce/release-3.4.2 writing output... [ 30%] announce/release-3.5.0 writing output... [ 31%] announce/release-3.5.1 writing output... [ 31%] announce/release-3.6.0 writing output... [ 32%] announce/release-3.6.1 writing output... [ 32%] announce/release-3.6.2 writing output... [ 33%] announce/release-3.6.3 writing output... [ 33%] announce/release-3.6.4 writing output... [ 33%] announce/release-3.7.0 writing output... [ 34%] announce/release-3.7.1 writing output... [ 34%] announce/release-3.7.2 writing output... [ 35%] announce/release-3.7.3 writing output... [ 35%] announce/release-3.7.4 writing output... [ 36%] announce/release-3.8.0 writing output... [ 36%] announce/release-3.8.1 writing output... [ 37%] announce/release-3.8.2 writing output... [ 37%] announce/release-3.9.0 writing output... [ 37%] announce/release-3.9.1 writing output... [ 38%] announce/release-3.9.2 writing output... [ 38%] announce/release-3.9.3 writing output... [ 39%] announce/release-4.0.0 writing output... [ 39%] announce/release-4.0.1 writing output... [ 40%] announce/release-4.0.2 writing output... [ 40%] announce/release-4.1.0 writing output... [ 41%] announce/release-4.1.1 writing output... [ 41%] announce/release-4.2.0 writing output... [ 41%] announce/release-4.2.1 writing output... [ 42%] announce/release-4.3.0 writing output... [ 42%] announce/release-4.3.1 writing output... [ 43%] announce/release-4.4.0 writing output... [ 43%] announce/release-4.4.1 writing output... [ 44%] announce/release-4.4.2 writing output... [ 44%] announce/release-4.5.0 writing output... [ 44%] announce/release-4.6.0 writing output... [ 45%] announce/release-4.6.1 writing output... [ 45%] announce/release-4.6.2 writing output... [ 46%] announce/release-4.6.3 writing output... [ 46%] announce/release-4.6.4 writing output... [ 47%] announce/release-4.6.5 writing output... [ 47%] announce/release-4.6.6 writing output... [ 48%] announce/release-4.6.7 writing output... [ 48%] announce/release-4.6.8 writing output... [ 48%] announce/release-4.6.9 writing output... [ 49%] announce/release-5.0.0 writing output... [ 49%] announce/release-5.0.1 writing output... [ 50%] announce/release-5.1.0 writing output... [ 50%] announce/release-5.1.1 writing output... [ 51%] announce/release-5.1.2 writing output... [ 51%] announce/release-5.1.3 writing output... [ 52%] announce/release-5.2.0 writing output... [ 52%] announce/release-5.2.1 writing output... [ 52%] announce/release-5.2.2 writing output... [ 53%] announce/release-5.2.3 writing output... [ 53%] announce/release-5.2.4 writing output... [ 54%] announce/release-5.3.0 writing output... [ 54%] announce/release-5.3.1 writing output... [ 55%] announce/release-5.3.2 writing output... [ 55%] announce/release-5.3.3 writing output... [ 56%] announce/release-5.3.4 writing output... [ 56%] announce/release-5.3.5 writing output... [ 56%] announce/release-5.4.0 writing output... [ 57%] announce/release-5.4.1 writing output... [ 57%] announce/release-5.4.2 writing output... [ 58%] announce/release-5.4.3 writing output... [ 58%] announce/release-6.0.0 writing output... [ 59%] announce/release-6.0.0rc1 writing output... [ 59%] announce/release-6.0.1 writing output... [ 59%] announce/release-6.0.2 writing output... [ 60%] announce/release-6.1.0 writing output... [ 60%] announce/release-6.1.1 writing output... [ 61%] announce/release-6.1.2 writing output... [ 61%] announce/release-6.2.0 writing output... [ 62%] announce/release-6.2.1 writing output... [ 62%] announce/release-6.2.2 writing output... [ 63%] announce/release-6.2.3 writing output... [ 63%] announce/release-6.2.4 writing output... [ 63%] announce/release-6.2.5 writing output... [ 64%] announce/release-7.0.0 writing output... [ 64%] announce/release-7.0.0rc1 writing output... [ 65%] announce/release-7.0.1 writing output... [ 65%] announce/release-7.1.0 writing output... [ 66%] announce/release-7.1.1 writing output... [ 66%] announce/release-7.1.2 writing output... [ 67%] announce/release-7.1.3 writing output... [ 67%] announce/release-7.2.0 writing output... [ 67%] announce/release-7.2.1 writing output... [ 68%] announce/release-7.2.2 writing output... [ 68%] announce/release-7.3.0 writing output... [ 69%] announce/release-7.3.1 writing output... [ 69%] announce/release-7.3.2 writing output... [ 70%] announce/release-7.4.0 writing output... [ 70%] announce/release-7.4.1 writing output... [ 70%] announce/release-7.4.2 writing output... [ 71%] announce/release-7.4.3 writing output... [ 71%] announce/release-7.4.4 writing output... [ 72%] announce/sprint2016 writing output... [ 72%] backwards-compatibility writing output... [ 73%] builtin writing output... [ 73%] changelog writing output... [ 74%] contact writing output... [ 74%] contents writing output... [ 74%] contributing writing output... [ 75%] deprecations writing output... [ 75%] development_guide writing output... [ 76%] example/index writing output... [ 76%] example/markers writing output... [ 77%] example/nonpython writing output... [ 77%] example/parametrize writing output... [ 78%] example/pythoncollection writing output... [ 78%] example/reportingdemo writing output... [ 78%] example/simple writing output... [ 79%] example/special writing output... [ 79%] explanation/anatomy writing output... [ 80%] explanation/fixtures writing output... [ 80%] explanation/flaky writing output... [ 81%] explanation/goodpractices writing output... [ 81%] explanation/index writing output... [ 81%] explanation/pythonpath writing output... [ 82%] funcarg_compare writing output... [ 82%] getting-started writing output... [ 83%] historical-notes writing output... [ 83%] history writing output... [ 84%] how-to/assert writing output... [ 84%] how-to/bash-completion writing output... [ 85%] how-to/cache writing output... [ 85%] how-to/capture-stdout-stderr writing output... [ 85%] how-to/capture-warnings writing output... [ 86%] how-to/doctest writing output... [ 86%] how-to/existingtestsuite writing output... [ 87%] how-to/failures writing output... [ 87%] how-to/fixtures writing output... [ 88%] how-to/index writing output... [ 88%] how-to/logging writing output... [ 89%] how-to/mark writing output... [ 89%] how-to/monkeypatch writing output... [ 89%] how-to/nose writing output... [ 90%] how-to/output writing output... [ 90%] how-to/parametrize writing output... [ 91%] how-to/plugins writing output... [ 91%] how-to/skipping writing output... [ 92%] how-to/tmp_path writing output... [ 92%] how-to/unittest writing output... [ 93%] how-to/usage writing output... [ 93%] how-to/writing_hook_functions writing output... [ 93%] how-to/writing_plugins writing output... [ 94%] how-to/xunit_setup writing output... [ 94%] index writing output... [ 95%] license writing output... [ 95%] proposals/parametrize_with_fixtures writing output... [ 96%] recwarn writing output... [ 96%] reference/customize writing output... [ 96%] reference/exit-codes writing output... [ 97%] reference/fixtures writing output... [ 97%] reference/index writing output... [ 98%] reference/plugin_list writing output... [ 98%] reference/reference writing output... [ 99%] sponsor writing output... [ 99%] talks writing output... [100%] tidelift writing output... [100%] yieldfixture /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/changelog.rst:4159: WARNING: unknown document: 'numpy:release/1.16.0-notes' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/explanation/goodpractices.rst:10: WARNING: unknown document: 'pip:index' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/explanation/goodpractices.rst:15: WARNING: unknown document: 'packaging:tutorials/packaging-projects' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/explanation/goodpractices.rst:272: WARNING: unknown document: 'tox:index' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/getting-started.rst:73: WARNING: undefined label: 'python:assert' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/getting-started.rst:73: WARNING: undefined label: 'testcase-objects' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/capture-warnings.rst:50: WARNING: unknown option: 'python:-W' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/doctest.rst:98: WARNING: undefined label: 'python:option-flags-and-directives' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/failures.rst:21: WARNING: unknown document: 'python:library/pdb' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/failures.rst:24: WARNING: unknown document: 'python:library/pdb' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/failures.rst:27: WARNING: unknown document: 'python:library/pdb' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/failures.rst:27: WARNING: unknown document: 'python:library/pdb' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/failures.rst:58: WARNING: unknown document: 'python:library/pdb' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/failures.rst:61: WARNING: unknown document: 'python:library/pdb' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/logging.rst:184: WARNING: undefined label: 'python:levels' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/logging.rst:207: WARNING: undefined label: 'python:levels' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/unittest.rst:33: WARNING: undefined label: 'python:subtests' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/writing_hook_functions.rst:102: WARNING: undefined label: 'pluggy:hookwrappers' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/how-to/writing_plugins.rst:148: WARNING: unknown document: 'setuptools:index' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/src/_pytest/python_api.py:docstring of _pytest.python_api.approx:4: WARNING: unknown document: 'python:tutorial/floatingpoint' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/src/_pytest/python_api.py:docstring of _pytest.python_api.approx:125: WARNING: unknown document: 'numpy:reference/generated/numpy.isclose' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/src/_pytest/python_api.py:docstring of _pytest.python_api.approx:149: WARNING: unknown document: 'numpy:reference/routines.testing' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/src/_pytest/python_api.py:docstring of _pytest.python_api.raises:11: WARNING: undefined label: 're-syntax' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/src/_pytest/python_api.py:docstring of _pytest.python_api.raises:103: WARNING: undefined label: 'python:try' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/reference/reference.rst:157: WARNING: undefined label: 'python:warning-filter' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/src/_pytest/monkeypatch.py:docstring of _pytest.monkeypatch.MonkeyPatch.setattr:31: WARNING: undefined label: 'python:where-to-patch' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/docstring of pytest.PytestPluginManager.hook:1: WARNING: undefined label: 'calling' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en/docstring of pytest.PytestPluginManager.trace:1: WARNING: undefined label: 'tracing' generating indices... py-modindex done highlighting module code... [ 3%] _pytest._code.code highlighting module code... [ 7%] _pytest.assertion highlighting module code... [ 10%] _pytest.cacheprovider highlighting module code... [ 13%] _pytest.capture highlighting module code... [ 17%] _pytest.config highlighting module code... [ 20%] _pytest.config.argparsing highlighting module code... [ 23%] _pytest.config.exceptions highlighting module code... [ 27%] _pytest.doctest highlighting module code... [ 30%] _pytest.fixtures highlighting module code... [ 33%] _pytest.freeze_support highlighting module code... [ 37%] _pytest.hookspec highlighting module code... [ 40%] _pytest.junitxml highlighting module code... [ 43%] _pytest.legacypath highlighting module code... [ 47%] _pytest.logging highlighting module code... [ 50%] _pytest.main highlighting module code... [ 53%] _pytest.mark highlighting module code... [ 57%] _pytest.mark.structures highlighting module code... [ 60%] _pytest.monkeypatch highlighting module code... [ 63%] _pytest.nodes highlighting module code... [ 67%] _pytest.outcomes highlighting module code... [ 70%] _pytest.pytester highlighting module code... [ 73%] _pytest.python highlighting module code... [ 77%] _pytest.python_api highlighting module code... [ 80%] _pytest.recwarn highlighting module code... [ 83%] _pytest.reports highlighting module code... [ 87%] _pytest.runner highlighting module code... [ 90%] _pytest.stash highlighting module code... [ 93%] _pytest.terminal highlighting module code... [ 97%] _pytest.tmpdir highlighting module code... [100%] builtins writing additional pages... search done copying images... [ 8%] img/freiburg2.jpg copying images... [ 17%] example/fixtures/test_fixtures_request_different_scope.svg copying images... [ 25%] example/fixtures/fixture_availability.svg copying images... [ 33%] example/fixtures/fixture_availability_plugins.svg copying images... [ 42%] example/fixtures/test_fixtures_order_scope.svg copying images... [ 50%] example/fixtures/test_fixtures_order_dependencies.svg copying images... [ 58%] example/fixtures/test_fixtures_order_dependencies_flat.svg copying images... [ 67%] example/fixtures/test_fixtures_order_dependencies_unclear.svg copying images... [ 75%] example/fixtures/test_fixtures_order_autouse.svg copying images... [ 83%] example/fixtures/test_fixtures_order_autouse_flat.svg copying images... [ 92%] example/fixtures/test_fixtures_order_autouse_multiple_scopes.svg copying images... [100%] example/fixtures/test_fixtures_order_autouse_temp_effects.svg dumping search index in English (code: en)... done dumping object inventory... done build succeeded, 36 warnings. The HTML pages are in _build/html. make: Leaving directory '/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/doc/en' + for f in README CHANGELOG CONTRIBUTING + rst2html README.rst + for f in README CHANGELOG CONTRIBUTING + rst2html CHANGELOG.rst + for f in README CHANGELOG CONTRIBUTING + rst2html CONTRIBUTING.rst CONTRIBUTING.rst:56: (ERROR/3) Unknown interpreted text role "ref". CONTRIBUTING.rst:68: (ERROR/3) Unknown interpreted text role "ref". + RPM_EC=0 ++ jobs -p + exit 0 sh: line 4: [: -j8: integer expression expected sh: line 4: [: -j8: integer expression expected Executing(%install): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.kKQ5GH + umask 022 + cd /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + '[' 1 -eq 1 ']' + '[' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT '!=' / ']' + rm -rf /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT ++ dirname /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT + mkdir -p /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + mkdir /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT + cd pytest-7.4.4 + '[' 1 -eq 1 ']' ++ ls /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/pyproject-wheeldir/pytest-7.4.4-py3-none-any.whl ++ xargs basename --multiple ++ sed -E 's/([^-]+)-([^-]+)-.+\.whl/\1==\2/' + specifier=pytest==7.4.4 + '[' -z pytest==7.4.4 ']' + TMPDIR=/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir + /usr/bin/python3 -m pip install --root /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT --prefix /usr --no-deps --disable-pip-version-check --progress-bar off --verbose --ignore-installed --no-warn-script-location --no-index --no-cache-dir --find-links /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/pyproject-wheeldir pytest==7.4.4 Using pip 24.2 from /usr/lib/python3.12/site-packages/pip (python 3.12) Looking in links: /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/pyproject-wheeldir Processing ./pyproject-wheeldir/pytest-7.4.4-py3-none-any.whl Installing collected packages: pytest Creating /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin changing mode of /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/py.test to 755 changing mode of /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/pytest to 755 Successfully installed pytest-7.4.4 + '[' -d /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin ']' + '[' -z sP ']' + shebang_flags=-kasP + /usr/bin/python3 -B /usr/lib/rpm/redhat/pathfix.py -pni /usr/bin/python3 -kasP /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/py.test /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/pytest /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/py.test: updating /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/pytest: updating + rm -rfv /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/__pycache__ + rm -f /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/python-pytest-7.4.4-1.mga10.noarch-pyproject-ghost-distinfo + site_dirs=() + '[' -d /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages ']' + site_dirs+=("/usr/lib/python3.12/site-packages") + '[' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib64/python3.12/site-packages '!=' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages ']' + '[' -d /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib64/python3.12/site-packages ']' + for site_dir in ${site_dirs[@]} + for distinfo in /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT$site_dir/*.dist-info + echo '%ghost /usr/lib/python3.12/site-packages/pytest-7.4.4.dist-info' + sed -i s/pip/rpm/ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/pytest-7.4.4.dist-info/INSTALLER + PYTHONPATH=/usr/lib/rpm/redhat + /usr/bin/python3 -B /usr/lib/rpm/redhat/pyproject_preprocess_record.py --buildroot /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT --record /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/pytest-7.4.4.dist-info/RECORD --output /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/python-pytest-7.4.4-1.mga10.noarch-pyproject-record + rm -fv /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/pytest-7.4.4.dist-info/RECORD removed '/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/pytest-7.4.4.dist-info/RECORD' + rm -fv /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/pytest-7.4.4.dist-info/REQUESTED removed '/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/pytest-7.4.4.dist-info/REQUESTED' ++ wc -l /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/python-pytest-7.4.4-1.mga10.noarch-pyproject-ghost-distinfo ++ cut -f1 '-d ' + lines=1 + '[' 1 -ne 1 ']' + RPM_FILES_ESCAPE=4.19 + /usr/bin/python3 /usr/lib/rpm/redhat/pyproject_save_files.py --output-files /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/python-pytest-7.4.4-1.mga10.noarch-pyproject-files --output-modules /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/python-pytest-7.4.4-1.mga10.noarch-pyproject-modules --buildroot /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT --sitelib /usr/lib/python3.12/site-packages --sitearch /usr/lib64/python3.12/site-packages --python-version 3.12 --pyproject-record /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/python-pytest-7.4.4-1.mga10.noarch-pyproject-record --prefix /usr pytest _pytest py + ln -snf pytest /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/pytest-3 + ln -snf pytest /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/pytest-3.12 + ln -snf py.test /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/py.test-3 + ln -snf py.test /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin/py.test-3.12 + mkdir -p _htmldocs/html + for l in doc/* + rm doc/en/_build/html/.buildinfo + mv doc/en/_build/html _htmldocs/html/en + find /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages -name '*.py' -exec sed -i -e '1{/^#!/d}' '{}' ';' + /usr/lib/rpm/check-buildroot + '[' -n '' ']' + /usr/share/spec-helper/clean_files + '[' -n '' ']' + /usr/share/spec-helper/compress_files .xz + '[' -n '' ']' + /usr/share/spec-helper/relink_symlinks + '[' -n '' ']' + /usr/share/spec-helper/clean_perl + '[' -n '' ']' + /usr/share/spec-helper/lib_symlinks + '[' -n '' ']' + /usr/share/spec-helper/gprintify + '[' -n '' ']' + /usr/share/spec-helper/fix_mo + '[' -n '' ']' + /usr/share/spec-helper/fix_pamd + '[' -n '' ']' + /usr/share/spec-helper/remove_info_dir + '[' -n '' ']' + /usr/share/spec-helper/fix_eol + '[' -n '' ']' + /usr/share/spec-helper/check_desktop_files + '[' -n '' ']' + /usr/share/spec-helper/check_elf_files + /usr/lib/rpm/brp-strip /usr/bin/strip + /usr/lib/rpm/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/brp-remove-la-files + /usr/lib/rpm/redhat/brp-mangle-shebangs + env -u SOURCE_DATE_EPOCH /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 -j48 Bytecompiling .py files below /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12 using python3.12 Not clamping source mtimes, $SOURCE_DATE_EPOCH not set + /usr/lib/rpm/redhat/brp-python-hardlink sh: line 4: [: -j8: integer expression expected Executing(%check): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.Ezhcfi + umask 022 + cd /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build + cd pytest-7.4.4 + '[' 1 -eq 1 ']' + TOX_TESTENV_PASSENV='*' + CFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full' + LDFLAGS='-Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--build-id=sha1 -Wl,--enable-new-dtags -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + PATH=/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/pterjan/.local/bin:/home/pterjan/bin + PYTHONPATH=/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib64/python3.12/site-packages:/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages + PYTHONDONTWRITEBYTECODE=1 + PYTEST_ADDOPTS=' --ignore=/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/.pyproject-builddir' + PYTEST_XDIST_AUTO_NUM_WORKERS=48 + HOSTNAME=rpmbuild + /usr/bin/python3 -m tox --current-env -q --recreate -e py312 ============================= test session starts ============================== platform linux -- Python 3.12.7, pytest-7.4.4, pluggy-1.5.0 cachedir: .tox/py312/.pytest_cache rootdir: /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4 configfile: pyproject.toml testpaths: testing plugins: hypothesis-6.98.8 collected 3471 items testing/acceptance_test.py ..... [ 0%] testing/deprecated_test.py ....... [ 0%] testing/test_argcomplete.py .. [ 0%] testing/test_assertion.py .............................................. [ 1%] ....................... [ 2%] testing/test_assertrewrite.py .......................................... [ 3%] .. [ 3%] testing/test_capture.py ................................................ [ 5%] ........s....s.. [ 5%] testing/test_collection.py . [ 5%] testing/test_compat.py ........... [ 5%] testing/test_config.py ................................................. [ 7%] ..... [ 7%] testing/test_conftest.py ........... [ 7%] testing/test_debugging.py . [ 7%] testing/test_doctest.py ............. [ 8%] testing/test_entry_points.py . [ 8%] testing/test_faulthandler.py ... [ 8%] testing/test_findpaths.py ..............s... [ 8%] testing/test_helpconfig.py . [ 8%] testing/test_junitxml.py .... [ 8%] testing/test_legacypath.py .... [ 9%] testing/test_main.py ..... [ 9%] testing/test_mark.py .............. [ 9%] testing/test_mark_expression.py ........................................ [ 10%] ............................................ [ 11%] testing/test_monkeypatch.py ............................... [ 12%] testing/test_nodes.py .............. [ 13%] testing/test_nose.py .. [ 13%] testing/test_parseopt.py ............................ [ 14%] testing/test_pastebin.py .... [ 14%] testing/test_pathlib.py .............................................s.. [ 15%] ...... [ 15%] testing/test_pluginmanager.py ......... [ 16%] testing/test_pytester.py ..................... [ 16%] testing/test_recwarn.py ........................................ [ 17%] testing/test_runner.py .............. [ 18%] testing/test_scope.py .... [ 18%] testing/test_skipping.py . [ 18%] testing/test_stash.py . [ 18%] testing/test_terminal.py ....................................... [ 19%] testing/test_tmpdir.py ...s............... [ 20%] testing/test_warning_types.py .............. [ 20%] testing/test_warnings.py . [ 20%] testing/_py/test_local.py .............................................. [ 21%] ...................ss..............s.................x.....Xs........... [ 23%] ..........................sssssss............................x... [ 25%] testing/code/test_code.py ................. [ 26%] testing/code/test_excinfo.py .................s......................... [ 27%] ........................................................................ [ 29%] .............. [ 29%] testing/code/test_source.py ............................................ [ 31%] ........... [ 31%] testing/freeze/tests/test_trivial.py .. [ 31%] testing/io/test_saferepr.py .............. [ 32%] testing/io/test_terminalwriter.py ...................................... [ 33%] ....... [ 33%] testing/io/test_wcwidth.py ................. [ 33%] testing/logging/test_fixture.py .................. [ 34%] testing/logging/test_formatter.py .... [ 34%] testing/logging/test_reporting.py .. [ 34%] testing/python/approx.py .sss..sssss.................................... [ 35%] ..ssssss................ss........ [ 36%] testing/python/collect.py .. [ 36%] testing/python/fixtures.py .......... [ 37%] testing/python/integration.py .... [ 37%] testing/python/metafunc.py ......................................... [ 38%] testing/python/raises.py ....................... [ 39%] testing/freeze/tests/test_doctest.txt . [ 39%] testing/acceptance_test.py ...................F......................... [ 40%] .....x...............F.... [ 41%] testing/deprecated_test.py ............. [ 41%] testing/test_assertion.py ................................... [ 42%] testing/test_assertrewrite.py .......................................... [ 43%] ....................... [ 44%] testing/test_cacheprovider.py .......................................... [ 45%] ............. [ 46%] testing/test_capture.py ......x........................s........... [ 47%] testing/test_collection.py ...........................x................. [ 48%] ........................s................. [ 49%] testing/test_compat.py .. [ 49%] testing/test_config.py ...........FF..x.......FF....FF.................. [ 51%] ........F..F......................F..F..FF............................FF [ 53%] ....... [ 53%] testing/test_conftest.py .............s.F........................F.. [ 54%] testing/test_debugging.py ............. [ 55%] testing/test_doctest.py ................................................ [ 56%] ...............x........................................................ [ 58%] .. [ 58%] testing/test_error_diffs.py ............ [ 59%] testing/test_faulthandler.py ... [ 59%] testing/test_helpconfig.py ........ [ 59%] testing/test_junitxml.py ............................................... [ 60%] ...................................................s...s................ [ 62%] ....... [ 62%] testing/test_legacypath.py .......... [ 63%] testing/test_link_resolve.py . [ 63%] testing/test_main.py ...FF......... [ 63%] testing/test_mark.py ................................................... [ 65%] ........x................. [ 65%] testing/test_monkeypatch.py .... [ 66%] testing/test_nodes.py .... [ 66%] testing/test_nose.py ...................... [ 66%] testing/test_parseopt.py . [ 66%] testing/test_pastebin.py ... [ 66%] testing/test_pathlib.py . [ 66%] testing/test_pluginmanager.py ................ [ 67%] testing/test_pytester.py x......................... [ 68%] testing/test_python_path.py ..... [ 68%] testing/test_recwarn.py .. [ 68%] testing/test_reports.py .................. [ 68%] testing/test_runner.py .......................x..................... [ 70%] testing/test_runner_xunit.py ............. [ 70%] testing/test_session.py .............F.......... [ 71%] testing/test_setuponly.py .......................... [ 71%] testing/test_setupplan.py ... [ 72%] testing/test_skipping.py ............................................... [ 73%] ............................................. [ 74%] testing/test_stepwise.py .............. [ 75%] testing/test_terminal.py ..............................................s [ 76%] .......................................................sss......s...... [ 78%] testing/test_threadexception.py .... [ 78%] testing/test_tmpdir.py .................... [ 79%] testing/test_unittest.py ......................sssssss.................. [ 80%] ...............s........ [ 81%] testing/test_unraisableexception.py .... [ 81%] testing/test_warning_types.py . [ 81%] testing/test_warnings.py ...................sss.......... [ 82%] testing/code/test_excinfo.py .............sssssssss...... [ 83%] testing/examples/test_issue519.py . [ 83%] testing/logging/test_fixture.py ........ [ 83%] testing/logging/test_reporting.py ...................................... [ 84%] ....... [ 84%] testing/python/approx.py . [ 84%] testing/python/collect.py .............................................. [ 86%] ............................. [ 86%] testing/python/fixtures.py ............................................. [ 88%] ..........................x............................................. [ 90%] ......................................................s.. [ 91%] testing/python/integration.py ............... [ 92%] testing/python/metafunc.py ............................................. [ 93%] ............... [ 94%] testing/python/raises.py ... [ 94%] testing/python/show_fixtures_per_test.py ........ [ 94%] testing/acceptance_test.py ..... [ 94%] testing/test_assertion.py ............ [ 94%] testing/test_assertrewrite.py ......... [ 95%] testing/test_capture.py ........................ [ 95%] testing/test_collection.py . [ 95%] testing/test_compat.py s [ 95%] testing/test_config.py .. [ 95%] testing/test_debugging.py sssssssssss.ssssssssssssssss.sss....ssss.sss [ 97%] testing/test_faulthandler.py ..s. [ 97%] testing/test_helpconfig.py .. [ 97%] testing/test_legacypath.py . [ 97%] testing/test_meta.py ................................................... [ 98%] ................ [ 99%] testing/test_pytester.py ....s [ 99%] testing/test_reports.py . [ 99%] testing/test_terminal.py ss.. [ 99%] testing/test_unittest.py s. [ 99%] testing/test_warnings.py ......... [ 99%] testing/python/collect.py . [ 99%] testing/python/fixtures.py .. [100%] =================================== FAILURES =================================== _________ TestGeneralUsage.test_issue109_sibling_conftests_not_loaded __________ self = pytester = def test_issue109_sibling_conftests_not_loaded(self, pytester: Pytester) -> None: sub1 = pytester.mkdir("sub1") sub2 = pytester.mkdir("sub2") sub1.joinpath("conftest.py").write_text("assert 0", encoding="utf-8") result = pytester.runpytest(sub2) assert result.ret == ExitCode.NO_TESTS_COLLECTED sub2.joinpath("__init__.py").touch() p = sub2.joinpath("test_hello.py") p.touch() result = pytester.runpytest(p) assert result.ret == ExitCode.NO_TESTS_COLLECTED result = pytester.runpytest(sub1) > assert result.ret == ExitCode.USAGE_ERROR E assert == E + where = .ret E + and = ExitCode.USAGE_ERROR /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/acceptance_test.py:279: AssertionError ----------------------------- Captured stdout call ----------------------------- ============================= test session starts ============================== platform linux -- Python 3.12.7, pytest-7.4.4, pluggy-1.5.0 rootdir: /tmp/pytest-of-pterjan/pytest-0/test_issue109_sibling_conftests_not_loaded0 collected 0 items ============================ no tests ran in 0.00s ============================= ============================= test session starts ============================== platform linux -- Python 3.12.7, pytest-7.4.4, pluggy-1.5.0 rootdir: /tmp/pytest-of-pterjan/pytest-0/test_issue109_sibling_conftests_not_loaded0 collected 0 items ============================ no tests ran in 0.02s ============================= ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 641, in _importconftest mod = import_path(conftestpath, mode=importmode, root=rootpath) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pathlib.py", line 567, in import_path importlib.import_module(module_name) File "/usr/lib64/python3.12/importlib/__init__.py", line 90, in import_module return _bootstrap._gcd_import(name[level:], package, level) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 1387, in _gcd_import File "", line 1360, in _find_and_load File "", line 1331, in _find_and_load_unlocked File "", line 935, in _load_unlocked File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/assertion/rewrite.py", line 186, in exec_module exec(co, module.__dict__) File "/tmp/pytest-of-pterjan/pytest-0/test_issue109_sibling_conftests_not_loaded0/sub1/conftest.py", line 1, in assert 0 AssertionError: assert 0 The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse self._preparse(args, addopts=addopts) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1327, in _preparse self.hook.pytest_load_initial_conftests( File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 182, in _multicall return outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1153, in pytest_load_initial_conftests self.pluginmanager._set_initial_conftests( File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 563, in _set_initial_conftests self._try_load_conftest(anchor, importmode, rootpath) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 580, in _try_load_conftest self._getconftestmodules(anchor, importmode, rootpath) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 609, in _getconftestmodules mod = self._importconftest(conftestpath, importmode, rootpath) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 645, in _importconftest raise ConftestImportFailure(conftestpath, exc_info) from e _pytest.config.ConftestImportFailure: AssertionError: assert 0 (from /tmp/pytest-of-pterjan/pytest-0/test_issue109_sibling_conftests_not_loaded0/sub1/conftest.py) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse ConftestImportFailure: AssertionError: assert 0 (from /tmp/pytest-of-pterjan/pytest-0/test_issue109_sibling_conftests_not_loaded0/sub1/conftest.py) For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning ____________________________ test_usage_error_code _____________________________ pytester = def test_usage_error_code(pytester: Pytester) -> None: result = pytester.runpytest("-unknown-option-") > assert result.ret == ExitCode.USAGE_ERROR E assert == E + where = .ret E + and = ExitCode.USAGE_ERROR /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/acceptance_test.py:1164: AssertionError ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1430, in parse args = self._parser.parse_setoption( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 143, in parse_setoption parsedoption = self.parse(args, namespace=namespace) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 116, in parse return self.optparser.parse_args(strargs, namespace=namespace) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 446, in parse_args self.error("\n".join(lines)) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 430, in error raise UsageError(self.format_usage() + msg) _pytest.config.exceptions.UsageError: usage: pytest [options] [file_or_dir] [file_or_dir] [...] pytest: error: unrecognized arguments: -unknown-option- inifile: None rootdir: /tmp/pytest-of-pterjan/pytest-0/test_usage_error_code0 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse UsageError: usage: pytest [options] [file_or_dir] [file_or_dir] [...] pytest: error: unrecognized arguments: -unknown-option- inifile: None rootdir: /tmp/pytest-of-pterjan/pytest-0/test_usage_error_code0 For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning ______________________ TestParseIni.test_ini_parse_error _______________________ self = pytester = def test_ini_parse_error(self, pytester: Pytester) -> None: pytester.path.joinpath("pytest.ini").write_text( "addopts = -x", encoding="utf-8" ) result = pytester.runpytest() assert result.ret != 0 > result.stderr.fnmatch_lines("ERROR: *pytest.ini:1: no section header defined") E Failed: nomatch: 'ERROR: *pytest.ini:1: no section header defined' E and: 'Traceback (most recent call last):' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 32, in _parse_ini_config' E and: ' return iniconfig.IniConfig(str(path))' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/iniconfig/__init__.py", line 128, in __init__' E and: ' raise ParseError(self.path, lineno, "no section header defined")' E and: 'iniconfig.exceptions.ParseError: /tmp/pytest-of-pterjan/pytest-0/test_ini_parse_error0/pytest.ini:1: no section header defined' E and: '' E and: 'The above exception was the direct cause of the following exception:' E and: '' E and: 'Traceback (most recent call last):' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall' E and: ' teardown[0].send(outcome)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse' E and: ' config: Config = outcome.get_result()' E and: ' ^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result' E and: ' raise exc.with_traceback(exc.__traceback__)' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall' E and: ' res = hook_impl.function(*args)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse' E and: ' self.parse(args)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse' E and: ' self._preparse(args, addopts=addopts)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1290, in _preparse' E and: ' self._initini(args)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1166, in _initini' E and: ' rootpath, inipath, inicfg = determine_setup(' E and: ' ^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 184, in determine_setup' E and: ' rootdir, inipath, inicfg = locate_config([ancestor])' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 114, in locate_config' E and: ' ini_config = load_config_dict_from_file(p)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 47, in load_config_dict_from_file' E and: ' iniconfig = _parse_ini_config(filepath)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 34, in _parse_ini_config' E and: ' raise UsageError(str(exc)) from exc' E and: '_pytest.config.exceptions.UsageError: /tmp/pytest-of-pterjan/pytest-0/test_ini_parse_error0/pytest.ini:1: no section header defined' E and: '' E and: 'During handling of the above exception, another exception occurred:' E and: '' E and: 'Traceback (most recent call last):' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess' E and: ' reprec = self.inline_run(*args, **kwargs)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run' E and: ' ret = main([str(x) for x in args], plugins=plugins)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main' E and: ' config = _prepareconfig(args, plugins)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig' E and: ' config = pluginmanager.hook.pytest_cmdline_parse(' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__' E and: ' return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec' E and: ' return self._inner_hookexec(hook_name, methods, kwargs, firstresult)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall' E and: ' _warn_teardown_exception(hook_name, teardown[1], e)' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception' E and: ' warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5)' E and: 'pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown.' E and: 'Plugin: helpconfig, Hook: pytest_cmdline_parse' E and: 'UsageError: /tmp/pytest-of-pterjan/pytest-0/test_ini_parse_error0/pytest.ini:1: no section header defined' E and: 'For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning' E remains unmatched: 'ERROR: *pytest.ini:1: no section header defined' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:176: Failed ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 32, in _parse_ini_config return iniconfig.IniConfig(str(path)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/iniconfig/__init__.py", line 128, in __init__ raise ParseError(self.path, lineno, "no section header defined") iniconfig.exceptions.ParseError: /tmp/pytest-of-pterjan/pytest-0/test_ini_parse_error0/pytest.ini:1: no section header defined The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse self._preparse(args, addopts=addopts) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1290, in _preparse self._initini(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1166, in _initini rootpath, inipath, inicfg = determine_setup( ^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 184, in determine_setup rootdir, inipath, inicfg = locate_config([ancestor]) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 114, in locate_config ini_config = load_config_dict_from_file(p) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 47, in load_config_dict_from_file iniconfig = _parse_ini_config(filepath) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 34, in _parse_ini_config raise UsageError(str(exc)) from exc _pytest.config.exceptions.UsageError: /tmp/pytest-of-pterjan/pytest-0/test_ini_parse_error0/pytest.ini:1: no section header defined During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse UsageError: /tmp/pytest-of-pterjan/pytest-0/test_ini_parse_error0/pytest.ini:1: no section header defined For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning ______________________ TestParseIni.test_toml_parse_error ______________________ self = pytester = def test_toml_parse_error(self, pytester: Pytester) -> None: pytester.makepyprojecttoml( """ \\" """ ) result = pytester.runpytest() assert result.ret != 0 > result.stderr.fnmatch_lines("ERROR: *pyproject.toml: Invalid statement*") E Failed: nomatch: 'ERROR: *pyproject.toml: Invalid statement*' E and: 'Traceback (most recent call last):' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 76, in load_config_dict_from_file' E and: ' config = tomllib.loads(toml_text)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib64/python3.12/tomllib/_parser.py", line 116, in loads' E and: ' raise suffixed_err(src, pos, "Invalid statement")' E and: 'tomllib.TOMLDecodeError: Invalid statement (at line 1, column 1)' E and: '' E and: 'The above exception was the direct cause of the following exception:' E and: '' E and: 'Traceback (most recent call last):' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall' E and: ' teardown[0].send(outcome)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse' E and: ' config: Config = outcome.get_result()' E and: ' ^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result' E and: ' raise exc.with_traceback(exc.__traceback__)' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall' E and: ' res = hook_impl.function(*args)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse' E and: ' self.parse(args)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse' E and: ' self._preparse(args, addopts=addopts)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1290, in _preparse' E and: ' self._initini(args)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1166, in _initini' E and: ' rootpath, inipath, inicfg = determine_setup(' E and: ' ^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 184, in determine_setup' E and: ' rootdir, inipath, inicfg = locate_config([ancestor])' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 114, in locate_config' E and: ' ini_config = load_config_dict_from_file(p)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 78, in load_config_dict_from_file' E and: ' raise UsageError(f"{filepath}: {exc}") from exc' E and: '_pytest.config.exceptions.UsageError: /tmp/pytest-of-pterjan/pytest-0/test_toml_parse_error0/pyproject.toml: Invalid statement (at line 1, column 1)' E and: '' E and: 'During handling of the above exception, another exception occurred:' E and: '' E and: 'Traceback (most recent call last):' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess' E and: ' reprec = self.inline_run(*args, **kwargs)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run' E and: ' ret = main([str(x) for x in args], plugins=plugins)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main' E and: ' config = _prepareconfig(args, plugins)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig' E and: ' config = pluginmanager.hook.pytest_cmdline_parse(' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__' E and: ' return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec' E and: ' return self._inner_hookexec(hook_name, methods, kwargs, firstresult)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall' E and: ' _warn_teardown_exception(hook_name, teardown[1], e)' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception' E and: ' warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5)' E and: 'pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown.' E and: 'Plugin: helpconfig, Hook: pytest_cmdline_parse' E and: 'UsageError: /tmp/pytest-of-pterjan/pytest-0/test_toml_parse_error0/pyproject.toml: Invalid statement (at line 1, column 1)' E and: 'For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning' E remains unmatched: 'ERROR: *pyproject.toml: Invalid statement*' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:186: Failed ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 76, in load_config_dict_from_file config = tomllib.loads(toml_text) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.12/tomllib/_parser.py", line 116, in loads raise suffixed_err(src, pos, "Invalid statement") tomllib.TOMLDecodeError: Invalid statement (at line 1, column 1) The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse self._preparse(args, addopts=addopts) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1290, in _preparse self._initini(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1166, in _initini rootpath, inipath, inicfg = determine_setup( ^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 184, in determine_setup rootdir, inipath, inicfg = locate_config([ancestor]) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 114, in locate_config ini_config = load_config_dict_from_file(p) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 78, in load_config_dict_from_file raise UsageError(f"{filepath}: {exc}") from exc _pytest.config.exceptions.UsageError: /tmp/pytest-of-pterjan/pytest-0/test_toml_parse_error0/pyproject.toml: Invalid statement (at line 1, column 1) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse UsageError: /tmp/pytest-of-pterjan/pytest-0/test_toml_parse_error0/pyproject.toml: Invalid statement (at line 1, column 1) For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning ____________ TestParseIni.test_missing_required_plugins[2-missing] _____________ @pytest.hookimpl(hookwrapper=True) def pytest_cmdline_parse(): outcome = yield > config: Config = outcome.get_result() /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py:104: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1075: in pytest_cmdline_parse self.parse(args) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1425: in parse self._preparse(args, addopts=addopts) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1312: in _preparse self._validate_plugins() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <_pytest.config.Config object at 0x7ff1e94a6c00> def _validate_plugins(self) -> None: required_plugins = sorted(self.getini("required_plugins")) if not required_plugins: return # Imported lazily to improve start-up time. from packaging.version import Version from packaging.requirements import InvalidRequirement, Requirement plugin_info = self.pluginmanager.list_plugin_distinfo() plugin_dist_info = {dist.project_name: dist.version for _, dist in plugin_info} missing_plugins = [] for required_plugin in required_plugins: try: req = Requirement(required_plugin) except InvalidRequirement: missing_plugins.append(required_plugin) continue if req.name not in plugin_dist_info: missing_plugins.append(required_plugin) elif not req.specifier.contains( Version(plugin_dist_info[req.name]), prereleases=True ): missing_plugins.append(required_plugin) if missing_plugins: > raise UsageError( "Missing required plugins: {}".format(", ".join(missing_plugins)), ) E _pytest.config.exceptions.UsageError: Missing required plugins: a, z /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1403: UsageError During handling of the above exception, another exception occurred: self = pytester = monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7ff1ea399d90> ini_file_text = '\n [pytest]\n required_plugins = a z\n ' plugin_version = '1.5', exception_text = 'Missing required plugins: a, z' @pytest.mark.parametrize( "ini_file_text, plugin_version, exception_text", [ pytest.param( """ [pytest] required_plugins = a z """, "1.5", "Missing required plugins: a, z", id="2-missing", ), pytest.param( """ [pytest] required_plugins = a z myplugin """, "1.5", "Missing required plugins: a, z", id="2-missing-1-ok", ), pytest.param( """ [pytest] required_plugins = myplugin """, "1.5", None, id="1-ok", ), pytest.param( """ [pytest] required_plugins = myplugin==1.5 """, "1.5", None, id="1-ok-pin-exact", ), pytest.param( """ [pytest] required_plugins = myplugin>1.0,<2.0 """, "1.5", None, id="1-ok-pin-loose", ), pytest.param( """ [pytest] required_plugins = myplugin """, "1.5a1", None, id="1-ok-prerelease", ), pytest.param( """ [pytest] required_plugins = myplugin==1.6 """, "1.5", "Missing required plugins: myplugin==1.6", id="missing-version", ), pytest.param( """ [pytest] required_plugins = myplugin==1.6 other==1.0 """, "1.5", "Missing required plugins: myplugin==1.6, other==1.0", id="missing-versions", ), pytest.param( """ [some_other_header] required_plugins = won't be triggered [pytest] """, "1.5", None, id="invalid-header", ), ], ) def test_missing_required_plugins( self, pytester: Pytester, monkeypatch: MonkeyPatch, ini_file_text: str, plugin_version: str, exception_text: str, ) -> None: """Check 'required_plugins' option with various settings. This test installs a mock "myplugin-1.5" which is used in the parametrized test cases. """ @dataclasses.dataclass class DummyEntryPoint: name: str module: str group: str = "pytest11" def load(self): __import__(self.module) return sys.modules[self.module] entry_points = [ DummyEntryPoint("myplugin1", "myplugin1_module"), ] @dataclasses.dataclass class DummyDist: entry_points: object files: object = () version: str = plugin_version @property def metadata(self): return {"name": "myplugin"} def my_dists(): return [DummyDist(entry_points)] pytester.makepyfile(myplugin1_module="# my plugin module") pytester.syspathinsert() monkeypatch.setattr(importlib_metadata, "distributions", my_dists) monkeypatch.delenv("PYTEST_DISABLE_PLUGIN_AUTOLOAD", raising=False) pytester.makeini(ini_file_text) if exception_text: with pytest.raises(pytest.UsageError, match=exception_text): > pytester.parseconfig() /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:485: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py:1242: in parseconfig config = _pytest.config._prepareconfig(new_args, self.plugins) # type: ignore[arg-type] /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:331: in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( /usr/lib/python3.12/site-packages/pluggy/_hooks.py:513: in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) /usr/lib/python3.12/site-packages/pluggy/_manager.py:120: in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ hook_name = 'pytest_cmdline_parse' hook_impl = > e = UsageError('Missing required plugins: a, z') def _warn_teardown_exception( hook_name: str, hook_impl: HookImpl, e: BaseException ) -> None: msg = "A plugin raised an exception during an old-style hookwrapper teardown.\n" msg += f"Plugin: {hook_impl.plugin_name}, Hook: {hook_name}\n" msg += f"{type(e).__name__}: {e}\n" msg += "For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning" # noqa: E501 > warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) E pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. E Plugin: helpconfig, Hook: pytest_cmdline_parse E UsageError: Missing required plugins: a, z E For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning /usr/lib/python3.12/site-packages/pluggy/_callers.py:50: PluggyTeardownRaisedWarning __________ TestParseIni.test_missing_required_plugins[2-missing-1-ok] __________ @pytest.hookimpl(hookwrapper=True) def pytest_cmdline_parse(): outcome = yield > config: Config = outcome.get_result() /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py:104: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1075: in pytest_cmdline_parse self.parse(args) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1425: in parse self._preparse(args, addopts=addopts) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1312: in _preparse self._validate_plugins() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <_pytest.config.Config object at 0x7ff1e9bf1f10> def _validate_plugins(self) -> None: required_plugins = sorted(self.getini("required_plugins")) if not required_plugins: return # Imported lazily to improve start-up time. from packaging.version import Version from packaging.requirements import InvalidRequirement, Requirement plugin_info = self.pluginmanager.list_plugin_distinfo() plugin_dist_info = {dist.project_name: dist.version for _, dist in plugin_info} missing_plugins = [] for required_plugin in required_plugins: try: req = Requirement(required_plugin) except InvalidRequirement: missing_plugins.append(required_plugin) continue if req.name not in plugin_dist_info: missing_plugins.append(required_plugin) elif not req.specifier.contains( Version(plugin_dist_info[req.name]), prereleases=True ): missing_plugins.append(required_plugin) if missing_plugins: > raise UsageError( "Missing required plugins: {}".format(", ".join(missing_plugins)), ) E _pytest.config.exceptions.UsageError: Missing required plugins: a, z /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1403: UsageError During handling of the above exception, another exception occurred: self = pytester = monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7ff1e9bf1eb0> ini_file_text = '\n [pytest]\n required_plugins = a z myplugin\n ' plugin_version = '1.5', exception_text = 'Missing required plugins: a, z' @pytest.mark.parametrize( "ini_file_text, plugin_version, exception_text", [ pytest.param( """ [pytest] required_plugins = a z """, "1.5", "Missing required plugins: a, z", id="2-missing", ), pytest.param( """ [pytest] required_plugins = a z myplugin """, "1.5", "Missing required plugins: a, z", id="2-missing-1-ok", ), pytest.param( """ [pytest] required_plugins = myplugin """, "1.5", None, id="1-ok", ), pytest.param( """ [pytest] required_plugins = myplugin==1.5 """, "1.5", None, id="1-ok-pin-exact", ), pytest.param( """ [pytest] required_plugins = myplugin>1.0,<2.0 """, "1.5", None, id="1-ok-pin-loose", ), pytest.param( """ [pytest] required_plugins = myplugin """, "1.5a1", None, id="1-ok-prerelease", ), pytest.param( """ [pytest] required_plugins = myplugin==1.6 """, "1.5", "Missing required plugins: myplugin==1.6", id="missing-version", ), pytest.param( """ [pytest] required_plugins = myplugin==1.6 other==1.0 """, "1.5", "Missing required plugins: myplugin==1.6, other==1.0", id="missing-versions", ), pytest.param( """ [some_other_header] required_plugins = won't be triggered [pytest] """, "1.5", None, id="invalid-header", ), ], ) def test_missing_required_plugins( self, pytester: Pytester, monkeypatch: MonkeyPatch, ini_file_text: str, plugin_version: str, exception_text: str, ) -> None: """Check 'required_plugins' option with various settings. This test installs a mock "myplugin-1.5" which is used in the parametrized test cases. """ @dataclasses.dataclass class DummyEntryPoint: name: str module: str group: str = "pytest11" def load(self): __import__(self.module) return sys.modules[self.module] entry_points = [ DummyEntryPoint("myplugin1", "myplugin1_module"), ] @dataclasses.dataclass class DummyDist: entry_points: object files: object = () version: str = plugin_version @property def metadata(self): return {"name": "myplugin"} def my_dists(): return [DummyDist(entry_points)] pytester.makepyfile(myplugin1_module="# my plugin module") pytester.syspathinsert() monkeypatch.setattr(importlib_metadata, "distributions", my_dists) monkeypatch.delenv("PYTEST_DISABLE_PLUGIN_AUTOLOAD", raising=False) pytester.makeini(ini_file_text) if exception_text: with pytest.raises(pytest.UsageError, match=exception_text): > pytester.parseconfig() /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:485: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py:1242: in parseconfig config = _pytest.config._prepareconfig(new_args, self.plugins) # type: ignore[arg-type] /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:331: in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( /usr/lib/python3.12/site-packages/pluggy/_hooks.py:513: in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) /usr/lib/python3.12/site-packages/pluggy/_manager.py:120: in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ hook_name = 'pytest_cmdline_parse' hook_impl = > e = UsageError('Missing required plugins: a, z') def _warn_teardown_exception( hook_name: str, hook_impl: HookImpl, e: BaseException ) -> None: msg = "A plugin raised an exception during an old-style hookwrapper teardown.\n" msg += f"Plugin: {hook_impl.plugin_name}, Hook: {hook_name}\n" msg += f"{type(e).__name__}: {e}\n" msg += "For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning" # noqa: E501 > warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) E pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. E Plugin: helpconfig, Hook: pytest_cmdline_parse E UsageError: Missing required plugins: a, z E For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning /usr/lib/python3.12/site-packages/pluggy/_callers.py:50: PluggyTeardownRaisedWarning _________ TestParseIni.test_missing_required_plugins[missing-version] __________ @pytest.hookimpl(hookwrapper=True) def pytest_cmdline_parse(): outcome = yield > config: Config = outcome.get_result() /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py:104: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1075: in pytest_cmdline_parse self.parse(args) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1425: in parse self._preparse(args, addopts=addopts) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1312: in _preparse self._validate_plugins() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <_pytest.config.Config object at 0x7ff1e96c36b0> def _validate_plugins(self) -> None: required_plugins = sorted(self.getini("required_plugins")) if not required_plugins: return # Imported lazily to improve start-up time. from packaging.version import Version from packaging.requirements import InvalidRequirement, Requirement plugin_info = self.pluginmanager.list_plugin_distinfo() plugin_dist_info = {dist.project_name: dist.version for _, dist in plugin_info} missing_plugins = [] for required_plugin in required_plugins: try: req = Requirement(required_plugin) except InvalidRequirement: missing_plugins.append(required_plugin) continue if req.name not in plugin_dist_info: missing_plugins.append(required_plugin) elif not req.specifier.contains( Version(plugin_dist_info[req.name]), prereleases=True ): missing_plugins.append(required_plugin) if missing_plugins: > raise UsageError( "Missing required plugins: {}".format(", ".join(missing_plugins)), ) E _pytest.config.exceptions.UsageError: Missing required plugins: myplugin==1.6 /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1403: UsageError During handling of the above exception, another exception occurred: self = pytester = monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7ff1e98039e0> ini_file_text = '\n [pytest]\n required_plugins = myplugin==1.6\n ' plugin_version = '1.5' exception_text = 'Missing required plugins: myplugin==1.6' @pytest.mark.parametrize( "ini_file_text, plugin_version, exception_text", [ pytest.param( """ [pytest] required_plugins = a z """, "1.5", "Missing required plugins: a, z", id="2-missing", ), pytest.param( """ [pytest] required_plugins = a z myplugin """, "1.5", "Missing required plugins: a, z", id="2-missing-1-ok", ), pytest.param( """ [pytest] required_plugins = myplugin """, "1.5", None, id="1-ok", ), pytest.param( """ [pytest] required_plugins = myplugin==1.5 """, "1.5", None, id="1-ok-pin-exact", ), pytest.param( """ [pytest] required_plugins = myplugin>1.0,<2.0 """, "1.5", None, id="1-ok-pin-loose", ), pytest.param( """ [pytest] required_plugins = myplugin """, "1.5a1", None, id="1-ok-prerelease", ), pytest.param( """ [pytest] required_plugins = myplugin==1.6 """, "1.5", "Missing required plugins: myplugin==1.6", id="missing-version", ), pytest.param( """ [pytest] required_plugins = myplugin==1.6 other==1.0 """, "1.5", "Missing required plugins: myplugin==1.6, other==1.0", id="missing-versions", ), pytest.param( """ [some_other_header] required_plugins = won't be triggered [pytest] """, "1.5", None, id="invalid-header", ), ], ) def test_missing_required_plugins( self, pytester: Pytester, monkeypatch: MonkeyPatch, ini_file_text: str, plugin_version: str, exception_text: str, ) -> None: """Check 'required_plugins' option with various settings. This test installs a mock "myplugin-1.5" which is used in the parametrized test cases. """ @dataclasses.dataclass class DummyEntryPoint: name: str module: str group: str = "pytest11" def load(self): __import__(self.module) return sys.modules[self.module] entry_points = [ DummyEntryPoint("myplugin1", "myplugin1_module"), ] @dataclasses.dataclass class DummyDist: entry_points: object files: object = () version: str = plugin_version @property def metadata(self): return {"name": "myplugin"} def my_dists(): return [DummyDist(entry_points)] pytester.makepyfile(myplugin1_module="# my plugin module") pytester.syspathinsert() monkeypatch.setattr(importlib_metadata, "distributions", my_dists) monkeypatch.delenv("PYTEST_DISABLE_PLUGIN_AUTOLOAD", raising=False) pytester.makeini(ini_file_text) if exception_text: with pytest.raises(pytest.UsageError, match=exception_text): > pytester.parseconfig() /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:485: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py:1242: in parseconfig config = _pytest.config._prepareconfig(new_args, self.plugins) # type: ignore[arg-type] /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:331: in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( /usr/lib/python3.12/site-packages/pluggy/_hooks.py:513: in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) /usr/lib/python3.12/site-packages/pluggy/_manager.py:120: in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ hook_name = 'pytest_cmdline_parse' hook_impl = > e = UsageError('Missing required plugins: myplugin==1.6') def _warn_teardown_exception( hook_name: str, hook_impl: HookImpl, e: BaseException ) -> None: msg = "A plugin raised an exception during an old-style hookwrapper teardown.\n" msg += f"Plugin: {hook_impl.plugin_name}, Hook: {hook_name}\n" msg += f"{type(e).__name__}: {e}\n" msg += "For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning" # noqa: E501 > warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) E pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. E Plugin: helpconfig, Hook: pytest_cmdline_parse E UsageError: Missing required plugins: myplugin==1.6 E For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning /usr/lib/python3.12/site-packages/pluggy/_callers.py:50: PluggyTeardownRaisedWarning _________ TestParseIni.test_missing_required_plugins[missing-versions] _________ @pytest.hookimpl(hookwrapper=True) def pytest_cmdline_parse(): outcome = yield > config: Config = outcome.get_result() /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py:104: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1075: in pytest_cmdline_parse self.parse(args) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1425: in parse self._preparse(args, addopts=addopts) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1312: in _preparse self._validate_plugins() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <_pytest.config.Config object at 0x7ff1ea348da0> def _validate_plugins(self) -> None: required_plugins = sorted(self.getini("required_plugins")) if not required_plugins: return # Imported lazily to improve start-up time. from packaging.version import Version from packaging.requirements import InvalidRequirement, Requirement plugin_info = self.pluginmanager.list_plugin_distinfo() plugin_dist_info = {dist.project_name: dist.version for _, dist in plugin_info} missing_plugins = [] for required_plugin in required_plugins: try: req = Requirement(required_plugin) except InvalidRequirement: missing_plugins.append(required_plugin) continue if req.name not in plugin_dist_info: missing_plugins.append(required_plugin) elif not req.specifier.contains( Version(plugin_dist_info[req.name]), prereleases=True ): missing_plugins.append(required_plugin) if missing_plugins: > raise UsageError( "Missing required plugins: {}".format(", ".join(missing_plugins)), ) E _pytest.config.exceptions.UsageError: Missing required plugins: myplugin==1.6, other==1.0 /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1403: UsageError During handling of the above exception, another exception occurred: self = pytester = monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7ff1e9800920> ini_file_text = '\n [pytest]\n required_plugins = myplugin==1.6 other==1.0\n ' plugin_version = '1.5' exception_text = 'Missing required plugins: myplugin==1.6, other==1.0' @pytest.mark.parametrize( "ini_file_text, plugin_version, exception_text", [ pytest.param( """ [pytest] required_plugins = a z """, "1.5", "Missing required plugins: a, z", id="2-missing", ), pytest.param( """ [pytest] required_plugins = a z myplugin """, "1.5", "Missing required plugins: a, z", id="2-missing-1-ok", ), pytest.param( """ [pytest] required_plugins = myplugin """, "1.5", None, id="1-ok", ), pytest.param( """ [pytest] required_plugins = myplugin==1.5 """, "1.5", None, id="1-ok-pin-exact", ), pytest.param( """ [pytest] required_plugins = myplugin>1.0,<2.0 """, "1.5", None, id="1-ok-pin-loose", ), pytest.param( """ [pytest] required_plugins = myplugin """, "1.5a1", None, id="1-ok-prerelease", ), pytest.param( """ [pytest] required_plugins = myplugin==1.6 """, "1.5", "Missing required plugins: myplugin==1.6", id="missing-version", ), pytest.param( """ [pytest] required_plugins = myplugin==1.6 other==1.0 """, "1.5", "Missing required plugins: myplugin==1.6, other==1.0", id="missing-versions", ), pytest.param( """ [some_other_header] required_plugins = won't be triggered [pytest] """, "1.5", None, id="invalid-header", ), ], ) def test_missing_required_plugins( self, pytester: Pytester, monkeypatch: MonkeyPatch, ini_file_text: str, plugin_version: str, exception_text: str, ) -> None: """Check 'required_plugins' option with various settings. This test installs a mock "myplugin-1.5" which is used in the parametrized test cases. """ @dataclasses.dataclass class DummyEntryPoint: name: str module: str group: str = "pytest11" def load(self): __import__(self.module) return sys.modules[self.module] entry_points = [ DummyEntryPoint("myplugin1", "myplugin1_module"), ] @dataclasses.dataclass class DummyDist: entry_points: object files: object = () version: str = plugin_version @property def metadata(self): return {"name": "myplugin"} def my_dists(): return [DummyDist(entry_points)] pytester.makepyfile(myplugin1_module="# my plugin module") pytester.syspathinsert() monkeypatch.setattr(importlib_metadata, "distributions", my_dists) monkeypatch.delenv("PYTEST_DISABLE_PLUGIN_AUTOLOAD", raising=False) pytester.makeini(ini_file_text) if exception_text: with pytest.raises(pytest.UsageError, match=exception_text): > pytester.parseconfig() /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:485: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py:1242: in parseconfig config = _pytest.config._prepareconfig(new_args, self.plugins) # type: ignore[arg-type] /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:331: in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( /usr/lib/python3.12/site-packages/pluggy/_hooks.py:513: in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) /usr/lib/python3.12/site-packages/pluggy/_manager.py:120: in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ hook_name = 'pytest_cmdline_parse' hook_impl = > e = UsageError('Missing required plugins: myplugin==1.6, other==1.0') def _warn_teardown_exception( hook_name: str, hook_impl: HookImpl, e: BaseException ) -> None: msg = "A plugin raised an exception during an old-style hookwrapper teardown.\n" msg += f"Plugin: {hook_impl.plugin_name}, Hook: {hook_name}\n" msg += f"{type(e).__name__}: {e}\n" msg += "For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning" # noqa: E501 > warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) E pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. E Plugin: helpconfig, Hook: pytest_cmdline_parse E UsageError: Missing required plugins: myplugin==1.6, other==1.0 E For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning /usr/lib/python3.12/site-packages/pluggy/_callers.py:50: PluggyTeardownRaisedWarning __________________ TestConfigAPI.test_confcutdir_check_isdir ___________________ self = MyOptionParser(prog='pytest', usage='%(prog)s [options] [file_or_dir] [file_or_dir] [...]', description=None, formatter_class=, conflict_handler='error', add_help=False) args = ['--confcutdir', '/tmp/pytest-of-pterjan/pytest-0/test_confcutdir_check_isdir0/file', '--basetemp=/tmp/pytest-of-pterjan/pytest-0/basetemp'] namespace = Namespace(keyword='', markexpr='', maxfail=0, continue_on_collection_errors=False, confcutdir=None, noconftest=False, ...ile=None, log_file_level=None, log_file_format=None, log_file_date_format=None, log_auto_indent=None, file_or_dir=None) def parse_known_args(self, args=None, namespace=None): if args is None: # args default to the system args args = _sys.argv[1:] else: # make sure that args are mutable args = list(args) # default Namespace built from parser defaults if namespace is None: namespace = Namespace() # add any action defaults that aren't present for action in self._actions: if action.dest is not SUPPRESS: if not hasattr(namespace, action.dest): if action.default is not SUPPRESS: setattr(namespace, action.dest, action.default) # add any parser defaults that aren't present for dest in self._defaults: if not hasattr(namespace, dest): setattr(namespace, dest, self._defaults[dest]) # parse the arguments and exit if there are any errors if self.exit_on_error: try: > namespace, args = self._parse_known_args(args, namespace) /usr/lib64/python3.12/argparse.py:1931: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.12/argparse.py:2168: in _parse_known_args start_index = consume_optional(start_index) /usr/lib64/python3.12/argparse.py:2099: in consume_optional take_action(action, args, option_string) /usr/lib64/python3.12/argparse.py:1991: in take_action argument_values = self._get_values(action, argument_strings) /usr/lib64/python3.12/argparse.py:2535: in _get_values value = self._get_value(action, arg_string) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = MyOptionParser(prog='pytest', usage='%(prog)s [options] [file_or_dir] [file_or_dir] [...]', description=None, formatter_class=, conflict_handler='error', add_help=False) action = _StoreAction(option_strings=['--confcutdir'], dest='confcutdir', nargs=None, const=None, default=None, type=functools....'--confcutdir'), choices=None, required=False, help="Only load conftest.py's relative to specified dir", metavar='dir') arg_string = '/tmp/pytest-of-pterjan/pytest-0/test_confcutdir_check_isdir0/file' def _get_value(self, action, arg_string): type_func = self._registry_get('type', action.type, action.type) if not callable(type_func): msg = _('%r is not callable') raise ArgumentError(action, msg % type_func) # convert the value to the appropriate type try: > result = type_func(arg_string) E _pytest.config.exceptions.UsageError: --confcutdir must be a directory, given: /tmp/pytest-of-pterjan/pytest-0/test_confcutdir_check_isdir0/file /usr/lib64/python3.12/argparse.py:2568: UsageError During handling of the above exception, another exception occurred: self = pytester = def test_confcutdir_check_isdir(self, pytester: Pytester) -> None: """Give an error if --confcutdir is not a valid directory (#2078)""" exp_match = r"^--confcutdir must be a directory, given: " with pytest.raises(pytest.UsageError, match=exp_match): > pytester.parseconfig("--confcutdir", pytester.path.joinpath("file")) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:853: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py:1242: in parseconfig config = _pytest.config._prepareconfig(new_args, self.plugins) # type: ignore[arg-type] /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:331: in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( /usr/lib/python3.12/site-packages/pluggy/_hooks.py:513: in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) /usr/lib/python3.12/site-packages/pluggy/_manager.py:120: in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ hook_name = 'pytest_cmdline_parse' hook_impl = > e = UsageError('--confcutdir must be a directory, given: /tmp/pytest-of-pterjan/pytest-0/test_confcutdir_check_isdir0/file') def _warn_teardown_exception( hook_name: str, hook_impl: HookImpl, e: BaseException ) -> None: msg = "A plugin raised an exception during an old-style hookwrapper teardown.\n" msg += f"Plugin: {hook_impl.plugin_name}, Hook: {hook_name}\n" msg += f"{type(e).__name__}: {e}\n" msg += "For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning" # noqa: E501 > warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) E pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. E Plugin: helpconfig, Hook: pytest_cmdline_parse E UsageError: --confcutdir must be a directory, given: /tmp/pytest-of-pterjan/pytest-0/test_confcutdir_check_isdir0/file E For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning /usr/lib/python3.12/site-packages/pluggy/_callers.py:50: PluggyTeardownRaisedWarning ____________________ test_setuptools_importerror_issue1479 _____________________ self = .DummyEntryPoint object at 0x7ff1e9dfac90> def load(self): > raise ImportError("Don't hide me!") E ImportError: Don't hide me! /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:1028: ImportError During handling of the above exception, another exception occurred: pytester = monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7ff1e9b32ea0> def test_setuptools_importerror_issue1479( pytester: Pytester, monkeypatch: MonkeyPatch ) -> None: monkeypatch.delenv("PYTEST_DISABLE_PLUGIN_AUTOLOAD", raising=False) class DummyEntryPoint: name = "mytestplugin" group = "pytest11" def load(self): raise ImportError("Don't hide me!") class Distribution: version = "1.0" files = ("foo.txt",) metadata = {"name": "foo"} entry_points = (DummyEntryPoint(),) def distributions(): return (Distribution(),) monkeypatch.setattr(importlib_metadata, "distributions", distributions) with pytest.raises(ImportError): > pytester.parseconfig() /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:1041: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py:1242: in parseconfig config = _pytest.config._prepareconfig(new_args, self.plugins) # type: ignore[arg-type] /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:331: in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( /usr/lib/python3.12/site-packages/pluggy/_hooks.py:513: in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) /usr/lib/python3.12/site-packages/pluggy/_manager.py:120: in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ hook_name = 'pytest_cmdline_parse' hook_impl = > e = ImportError("Don't hide me!") def _warn_teardown_exception( hook_name: str, hook_impl: HookImpl, e: BaseException ) -> None: msg = "A plugin raised an exception during an old-style hookwrapper teardown.\n" msg += f"Plugin: {hook_impl.plugin_name}, Hook: {hook_name}\n" msg += f"{type(e).__name__}: {e}\n" msg += "For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning" # noqa: E501 > warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) E pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. E Plugin: helpconfig, Hook: pytest_cmdline_parse E ImportError: Don't hide me! E For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning /usr/lib/python3.12/site-packages/pluggy/_callers.py:50: PluggyTeardownRaisedWarning _________ TestOverrideIniArgs.test_override_ini_usage_error_bad_style __________ self = pytester = def test_override_ini_usage_error_bad_style(self, pytester: Pytester) -> None: pytester.makeini( """ [pytest] xdist_strict=False """ ) result = pytester.runpytest("--override-ini", "xdist_strict", "True") > result.stderr.fnmatch_lines( [ "ERROR: -o/--override-ini expects option=value style (got: 'xdist_strict').", ] ) E Failed: nomatch: "ERROR: -o/--override-ini expects option=value style (got: 'xdist_strict')." E and: 'Traceback (most recent call last):' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1495, in getini' E and: ' return self._inicache[name]' E and: ' ~~~~~~~~~~~~~~^^^^^^' E and: "KeyError: 'addopts'" E and: '' E and: 'During handling of the above exception, another exception occurred:' E and: '' E and: 'Traceback (most recent call last):' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1588, in _get_override_ini_value' E and: ' key, user_ini_value = ini_config.split("=", 1)' E and: ' ^^^^^^^^^^^^^^^^^^^' E and: 'ValueError: not enough values to unpack (expected 2, got 1)' E and: '' E and: 'The above exception was the direct cause of the following exception:' E and: '' E and: 'Traceback (most recent call last):' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall' E and: ' teardown[0].send(outcome)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse' E and: ' config: Config = outcome.get_result()' E and: ' ^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result' E and: ' raise exc.with_traceback(exc.__traceback__)' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall' E and: ' res = hook_impl.function(*args)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse' E and: ' self.parse(args)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse' E and: ' self._preparse(args, addopts=addopts)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1293, in _preparse' E and: ' self._validate_args(self.getini("addopts"), "via addopts config") + args' E and: ' ^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1497, in getini' E and: ' self._inicache[name] = val = self._getini(name)' E and: ' ^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1511, in _getini' E and: ' override_value = self._get_override_ini_value(name)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1590, in _get_override_ini_value' E and: ' raise UsageError(' E and: "_pytest.config.exceptions.UsageError: -o/--override-ini expects option=value style (got: 'xdist_strict')." E and: '' E and: 'During handling of the above exception, another exception occurred:' E and: '' E and: 'Traceback (most recent call last):' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess' E and: ' reprec = self.inline_run(*args, **kwargs)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run' E and: ' ret = main([str(x) for x in args], plugins=plugins)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main' E and: ' config = _prepareconfig(args, plugins)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig' E and: ' config = pluginmanager.hook.pytest_cmdline_parse(' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__' E and: ' return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec' E and: ' return self._inner_hookexec(hook_name, methods, kwargs, firstresult)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall' E and: ' _warn_teardown_exception(hook_name, teardown[1], e)' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception' E and: ' warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5)' E and: 'pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown.' E and: 'Plugin: helpconfig, Hook: pytest_cmdline_parse' E and: "UsageError: -o/--override-ini expects option=value style (got: 'xdist_strict')." E and: 'For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning' E remains unmatched: "ERROR: -o/--override-ini expects option=value style (got: 'xdist_strict')." /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:1657: Failed ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1495, in getini return self._inicache[name] ~~~~~~~~~~~~~~^^^^^^ KeyError: 'addopts' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1588, in _get_override_ini_value key, user_ini_value = ini_config.split("=", 1) ^^^^^^^^^^^^^^^^^^^ ValueError: not enough values to unpack (expected 2, got 1) The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse self._preparse(args, addopts=addopts) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1293, in _preparse self._validate_args(self.getini("addopts"), "via addopts config") + args ^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1497, in getini self._inicache[name] = val = self._getini(name) ^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1511, in _getini override_value = self._get_override_ini_value(name) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1590, in _get_override_ini_value raise UsageError( _pytest.config.exceptions.UsageError: -o/--override-ini expects option=value style (got: 'xdist_strict'). During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse UsageError: -o/--override-ini expects option=value style (got: 'xdist_strict'). For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning __________ TestOverrideIniArgs.test_addopts_from_ini_not_concatenated __________ self = pytester = def test_addopts_from_ini_not_concatenated(self, pytester: Pytester) -> None: """`addopts` from ini should not take values from normal args (#4265).""" pytester.makeini( """ [pytest] addopts=-o """ ) result = pytester.runpytest("cache_dir=ignored") result.stderr.fnmatch_lines( [ "%s: error: argument -o/--override-ini: expected one argument (via addopts config)" % (pytester._request.config._parser.optparser.prog,) ] ) > assert result.ret == _pytest.config.ExitCode.USAGE_ERROR E AssertionError: assert == E + where = .ret E + and = .USAGE_ERROR E + where = .ExitCode E + where = _pytest.config /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:1721: AssertionError ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/usr/lib64/python3.12/argparse.py", line 1931, in parse_known_args namespace, args = self._parse_known_args(args, namespace) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.12/argparse.py", line 2168, in _parse_known_args start_index = consume_optional(start_index) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.12/argparse.py", line 2089, in consume_optional arg_count = match_argument(action, selected_patterns) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.12/argparse.py", line 2264, in _match_argument raise ArgumentError(action, msg) argparse.ArgumentError: argument -o/--override-ini: expected one argument During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse self._preparse(args, addopts=addopts) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1293, in _preparse self._validate_args(self.getini("addopts"), "via addopts config") + args ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1231, in _validate_args self._parser.parse_known_and_unknown_args( File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 173, in parse_known_and_unknown_args return optparser.parse_known_args(strargs, namespace=namespace) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.12/argparse.py", line 1933, in parse_known_args self.error(str(err)) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 430, in error raise UsageError(self.format_usage() + msg) _pytest.config.exceptions.UsageError: usage: pytest [options] [file_or_dir] [file_or_dir] [...] pytest: error: argument -o/--override-ini: expected one argument (via addopts config) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse UsageError: usage: pytest [options] [file_or_dir] [file_or_dir] [...] pytest: error: argument -o/--override-ini: expected one argument (via addopts config) For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning __________________ test_help_and_version_after_argument_error __________________ pytester = def test_help_and_version_after_argument_error(pytester: Pytester) -> None: pytester.makeconftest( """ def validate(arg): raise argparse.ArgumentTypeError("argerror") def pytest_addoption(parser): group = parser.getgroup('cov') group.addoption( "--invalid-option-should-allow-for-help", type=validate, ) """ ) pytester.makeini( """ [pytest] addopts = --invalid-option-should-allow-for-help """ ) result = pytester.runpytest("--help") result.stdout.fnmatch_lines( [ "usage: *", "positional arguments:", "NOTE: displaying only minimal help due to UsageError.", ] ) > result.stderr.fnmatch_lines( [ "ERROR: usage: *", "%s: error: argument --invalid-option-should-allow-for-help: expected one argument" % (pytester._request.config._parser.optparser.prog,), ] ) E Failed: nomatch: 'ERROR: usage: *' E and: 'Traceback (most recent call last):' E and: ' File "/usr/lib64/python3.12/argparse.py", line 1931, in parse_known_args' E and: ' namespace, args = self._parse_known_args(args, namespace)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib64/python3.12/argparse.py", line 2168, in _parse_known_args' E and: ' start_index = consume_optional(start_index)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib64/python3.12/argparse.py", line 2089, in consume_optional' E and: ' arg_count = match_argument(action, selected_patterns)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib64/python3.12/argparse.py", line 2264, in _match_argument' E and: ' raise ArgumentError(action, msg)' E and: 'argparse.ArgumentError: argument --invalid-option-should-allow-for-help: expected one argument' E and: '' E and: 'During handling of the above exception, another exception occurred:' E and: '' E and: 'Traceback (most recent call last):' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall' E and: ' teardown[0].send(outcome)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse' E and: ' config: Config = outcome.get_result()' E and: ' ^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result' E and: ' raise exc.with_traceback(exc.__traceback__)' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall' E and: ' res = hook_impl.function(*args)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse' E and: ' self.parse(args)' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1430, in parse' E and: ' args = self._parser.parse_setoption(' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 143, in parse_setoption' E and: ' parsedoption = self.parse(args, namespace=namespace)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 116, in parse' E and: ' return self.optparser.parse_args(strargs, namespace=namespace)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 439, in parse_args' E and: ' parsed, unrecognized = self.parse_known_args(args, namespace)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib64/python3.12/argparse.py", line 1933, in parse_known_args' E and: ' self.error(str(err))' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 430, in error' E and: ' raise UsageError(self.format_usage() + msg)' E and: '_pytest.config.exceptions.UsageError: usage: pytest [options] [file_or_dir] [file_or_dir] [...]' E and: 'pytest: error: argument --invalid-option-should-allow-for-help: expected one argument' E and: '' E and: 'During handling of the above exception, another exception occurred:' E and: '' E and: 'Traceback (most recent call last):' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess' E and: ' reprec = self.inline_run(*args, **kwargs)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run' E and: ' ret = main([str(x) for x in args], plugins=plugins)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main' E and: ' config = _prepareconfig(args, plugins)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig' E and: ' config = pluginmanager.hook.pytest_cmdline_parse(' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__' E and: ' return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec' E and: ' return self._inner_hookexec(hook_name, methods, kwargs, firstresult)' E and: ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall' E and: ' _warn_teardown_exception(hook_name, teardown[1], e)' E and: ' File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception' E and: ' warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5)' E and: 'pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown.' E and: 'Plugin: helpconfig, Hook: pytest_cmdline_parse' E and: 'UsageError: usage: pytest [options] [file_or_dir] [file_or_dir] [...]' E and: 'pytest: error: argument --invalid-option-should-allow-for-help: expected one argument' E and: 'For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning' E remains unmatched: 'ERROR: usage: *' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:1803: Failed ----------------------------- Captured stdout call ----------------------------- usage: pytest [options] [file_or_dir] [file_or_dir] [...] positional arguments: file_or_dir general: -k EXPRESSION Only run tests which match the given substring expression. An expression is a Python evaluatable expression where all names are substring-matched against test names and their parent classes. Example: -k 'test_method or test_other' matches all test functions and classes whose name contains 'test_method' or 'test_other', while -k 'not test_method' matches those that don't contain 'test_method' in their names. -k 'not test_method and not test_other' will eliminate the matches. Additionally keywords are matched to classes and functions containing extra names in their 'extra_keyword_matches' set, as well as functions which have names assigned directly to them. The matching is case-insensitive. -m MARKEXPR Only run tests matching given mark expression. For example: -m 'mark1 and not mark2'. --markers show markers (builtin, plugin and per-project ones). -x, --exitfirst Exit instantly on first error or failed test --fixtures, --funcargs Show available fixtures, sorted by plugin appearance (fixtures with leading '_' are only shown with '-v') --fixtures-per-test Show fixtures per test --pdb Start the interactive Python debugger on errors or KeyboardInterrupt --pdbcls=modulename:classname Specify a custom interactive Python debugger for use with --pdb.For example: --pdbcls=IPython.terminal.debugger:TerminalPdb --trace Immediately break when running each test --capture=method Per-test capturing method: one of fd|sys|no|tee-sys -s Shortcut for --capture=no --runxfail Report the results of xfail tests as if they were not marked --lf, --last-failed Rerun only the tests that failed at the last run (or all if none failed) --ff, --failed-first Run all tests, but run the last failures first. This may re-order tests and thus lead to repeated fixture setup/teardown. --nf, --new-first Run tests from new files first, then the rest of the tests sorted by file mtime --cache-show=[CACHESHOW] Show cache contents, don't perform collection or tests. Optional argument: glob (default: '*'). --cache-clear Remove all cache contents at start of test run --lfnf={all,none}, --last-failed-no-failures={all,none} With ``--lf``, determines whether to execute tests when there are no previously (known) failures or when no cached ``lastfailed`` data was found. ``all`` (the default) runs the full test suite again. ``none`` just emits a message about no known failures and exits successfully. --sw, --stepwise Exit on test failure and continue from last failing test next time --sw-skip, --stepwise-skip Ignore the first failing test but stop on the next failing test. Implicitly enables --stepwise. Reporting: --durations=N Show N slowest setup/test durations (N=0 for all) --durations-min=N Minimal duration in seconds for inclusion in slowest list. Default: 0.005. -v, --verbose Increase verbosity --no-header Disable header --no-summary Disable summary -q, --quiet Decrease verbosity --verbosity=VERBOSE Set verbosity. Default: 0. -r chars Show extra test summary info as specified by chars: (f)ailed, (E)rror, (s)kipped, (x)failed, (X)passed, (p)assed, (P)assed with output, (a)ll except passed (p/P), or (A)ll. (w)arnings are enabled by default (see --disable-warnings), 'N' can be used to reset the list. (default: 'fE'). --disable-warnings, --disable-pytest-warnings Disable warnings summary -l, --showlocals Show locals in tracebacks (disabled by default) --no-showlocals Hide locals in tracebacks (negate --showlocals passed through addopts) --tb=style Traceback print mode (auto/long/short/line/native/no) --show-capture={no,stdout,stderr,log,all} Controls how captured stdout/stderr/log is shown on failed tests. Default: all. --full-trace Don't cut any tracebacks (default is to cut) --color=color Color terminal output (yes/no/auto) --code-highlight={yes,no} Whether code should be highlighted (only if --color is also enabled). Default: yes. --pastebin=mode Send failed|all info to bpaste.net pastebin service --junit-xml=path Create junit-xml style report file at given path --junit-prefix=str Prepend prefix to classnames in junit-xml output pytest-warnings: -W PYTHONWARNINGS, --pythonwarnings=PYTHONWARNINGS Set which warnings to report, see -W option of Python itself --maxfail=num Exit after first num failures or errors --strict-config Any warnings encountered while parsing the `pytest` section of the configuration file raise errors --strict-markers Markers not registered in the `markers` section of the configuration file raise errors --strict (Deprecated) alias to --strict-markers -c FILE, --config-file=FILE Load configuration from `FILE` instead of trying to locate one of the implicit configuration files. --continue-on-collection-errors Force test execution even if collection errors occur --rootdir=ROOTDIR Define root directory for tests. Can be relative path: 'root_dir', './root_dir', 'root_dir/another_dir/'; absolute path: '/home/user/root_dir'; path with variables: '$HOME/root_dir'. collection: --collect-only, --co Only collect tests, don't execute them --pyargs Try to interpret all arguments as Python packages --ignore=path Ignore path during collection (multi-allowed) --ignore-glob=path Ignore path pattern during collection (multi-allowed) --deselect=nodeid_prefix Deselect item (via node id prefix) during collection (multi-allowed) --confcutdir=dir Only load conftest.py's relative to specified dir --noconftest Don't load any conftest.py files --keep-duplicates Keep duplicate tests --collect-in-virtualenv Don't ignore tests in a local virtualenv directory --import-mode={prepend,append,importlib} Prepend/append to sys.path when importing test modules and conftest files. Default: prepend. --doctest-modules Run doctests in all .py modules --doctest-report={none,cdiff,ndiff,udiff,only_first_failure} Choose another output format for diffs on doctest failure --doctest-glob=pat Doctests file matching pattern, default: test*.txt --doctest-ignore-import-errors Ignore doctest ImportErrors --doctest-continue-on-failure For a given doctest, continue to run after the first failure test session debugging and configuration: --basetemp=dir Base temporary directory for this test run. (Warning: this directory is removed if it exists.) -V, --version Display pytest version and information about plugins. When given twice, also display information about plugins. -h, --help Show help message and configuration info -p name Early-load given plugin module name or entry point (multi-allowed). To avoid loading of plugins, use the `no:` prefix, e.g. `no:doctest`. --trace-config Trace considerations of conftest.py files --debug=[DEBUG_FILE_NAME] Store internal tracing debug information in this log file. This file is opened with 'w' and truncated as a result, care advised. Default: pytestdebug.log. -o OVERRIDE_INI, --override-ini=OVERRIDE_INI Override ini option with "option=value" style, e.g. `-o xfail_strict=True -o cache_dir=cache`. --assert=MODE Control assertion debugging tools. 'plain' performs no assertion debugging. 'rewrite' (the default) rewrites assert statements in test modules on import to provide assert expression information. --setup-only Only setup fixtures, do not execute tests --setup-show Show setup of fixtures while executing tests --setup-plan Show what fixtures and tests would be executed but don't execute anything logging: --log-level=LEVEL Level of messages to catch/display. Not set by default, so it depends on the root/parent log handler's effective level, where it is "WARNING" by default. --log-format=LOG_FORMAT Log format used by the logging module --log-date-format=LOG_DATE_FORMAT Log date format used by the logging module --log-cli-level=LOG_CLI_LEVEL CLI logging level --log-cli-format=LOG_CLI_FORMAT Log format used by the logging module --log-cli-date-format=LOG_CLI_DATE_FORMAT Log date format used by the logging module --log-file=LOG_FILE Path to a file when logging will be written to --log-file-level=LOG_FILE_LEVEL Log file logging level --log-file-format=LOG_FILE_FORMAT Log format used by the logging module --log-file-date-format=LOG_FILE_DATE_FORMAT Log date format used by the logging module --log-auto-indent=LOG_AUTO_INDENT Auto-indent multiline messages passed to the logging module. Accepts true|on, false|off or an integer. --log-disable=LOGGER_DISABLE Disable a logger by name. Can be passed multiple times. cov: --invalid-option-should-allow-for-help=INVALID_OPTION_SHOULD_ALLOW_FOR_HELP NOTE: displaying only minimal help due to UsageError. ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/usr/lib64/python3.12/argparse.py", line 1931, in parse_known_args namespace, args = self._parse_known_args(args, namespace) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.12/argparse.py", line 2168, in _parse_known_args start_index = consume_optional(start_index) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.12/argparse.py", line 2089, in consume_optional arg_count = match_argument(action, selected_patterns) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.12/argparse.py", line 2264, in _match_argument raise ArgumentError(action, msg) argparse.ArgumentError: argument --invalid-option-should-allow-for-help: expected one argument During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1430, in parse args = self._parser.parse_setoption( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 143, in parse_setoption parsedoption = self.parse(args, namespace=namespace) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 116, in parse return self.optparser.parse_args(strargs, namespace=namespace) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 439, in parse_args parsed, unrecognized = self.parse_known_args(args, namespace) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.12/argparse.py", line 1933, in parse_known_args self.error(str(err)) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 430, in error raise UsageError(self.format_usage() + msg) _pytest.config.exceptions.UsageError: usage: pytest [options] [file_or_dir] [file_or_dir] [...] pytest: error: argument --invalid-option-should-allow-for-help: expected one argument During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse UsageError: usage: pytest [options] [file_or_dir] [file_or_dir] [...] pytest: error: argument --invalid-option-should-allow-for-help: expected one argument For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning ______________ test_config_does_not_load_blocked_plugin_from_args ______________ pytester = def test_config_does_not_load_blocked_plugin_from_args(pytester: Pytester) -> None: """This tests that pytest's config setup handles "-p no:X".""" p = pytester.makepyfile("def test(capfd): pass") result = pytester.runpytest(str(p), "-pno:capture") result.stdout.fnmatch_lines(["E fixture 'capfd' not found"]) assert result.ret == ExitCode.TESTS_FAILED result = pytester.runpytest(str(p), "-pno:capture", "-s") result.stderr.fnmatch_lines(["*: error: unrecognized arguments: -s"]) > assert result.ret == ExitCode.USAGE_ERROR E assert == E + where = .ret E + and = ExitCode.USAGE_ERROR /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:1843: AssertionError ----------------------------- Captured stdout call ----------------------------- ============================= test session starts ============================== platform linux -- Python 3.12.7, pytest-7.4.4, pluggy-1.5.0 rootdir: /tmp/pytest-of-pterjan/pytest-0/test_config_does_not_load_blocked_plugin_from_args0 collected 1 item test_config_does_not_load_blocked_plugin_from_args.py E ==================================== ERRORS ==================================== ____________________________ ERROR at setup of test ____________________________ file /tmp/pytest-of-pterjan/pytest-0/test_config_does_not_load_blocked_plugin_from_args0/test_config_does_not_load_blocked_plugin_from_args.py, line 1 def test(capfd): pass E fixture 'capfd' not found > available fixtures: cache, caplog, doctest_namespace, monkeypatch, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory > use 'pytest --fixtures [testpath]' for help on them. /tmp/pytest-of-pterjan/pytest-0/test_config_does_not_load_blocked_plugin_from_args0/test_config_does_not_load_blocked_plugin_from_args.py:1 =========================== short test summary info ============================ ERROR test_config_does_not_load_blocked_plugin_from_args.py::test =============================== 1 error in 0.00s =============================== ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1430, in parse args = self._parser.parse_setoption( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 143, in parse_setoption parsedoption = self.parse(args, namespace=namespace) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 116, in parse return self.optparser.parse_args(strargs, namespace=namespace) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 446, in parse_args self.error("\n".join(lines)) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/argparsing.py", line 430, in error raise UsageError(self.format_usage() + msg) _pytest.config.exceptions.UsageError: usage: pytest [options] [file_or_dir] [file_or_dir] [...] pytest: error: unrecognized arguments: -s inifile: None rootdir: /tmp/pytest-of-pterjan/pytest-0/test_config_does_not_load_blocked_plugin_from_args0 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse UsageError: usage: pytest [options] [file_or_dir] [file_or_dir] [...] pytest: error: unrecognized arguments: -s inifile: None rootdir: /tmp/pytest-of-pterjan/pytest-0/test_config_does_not_load_blocked_plugin_from_args0 For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning ________________ TestSetupCfg.test_pytest_setup_cfg_unsupported ________________ self = pytester = def test_pytest_setup_cfg_unsupported(self, pytester: Pytester) -> None: pytester.makefile( ".cfg", setup=""" [pytest] addopts = --verbose """, ) > with pytest.raises(pytest.fail.Exception): E Failed: DID NOT RAISE /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:1930: Failed ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse self._preparse(args, addopts=addopts) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1290, in _preparse self._initini(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1166, in _initini rootpath, inipath, inicfg = determine_setup( ^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 184, in determine_setup rootdir, inipath, inicfg = locate_config([ancestor]) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 114, in locate_config ini_config = load_config_dict_from_file(p) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 65, in load_config_dict_from_file fail(CFG_PYTEST_SECTION.format(filename="setup.cfg"), pytrace=False) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/outcomes.py", line 198, in fail raise Failed(msg=reason, pytrace=pytrace) Failed: [pytest] section in setup.cfg files is no longer supported, change to [tool:pytest] instead. During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse Failed: [pytest] section in setup.cfg files is no longer supported, change to [tool:pytest] instead. For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning _______________ TestSetupCfg.test_pytest_custom_cfg_unsupported ________________ self = pytester = def test_pytest_custom_cfg_unsupported(self, pytester: Pytester) -> None: pytester.makefile( ".cfg", custom=""" [pytest] addopts = --verbose """, ) > with pytest.raises(pytest.fail.Exception): E Failed: DID NOT RAISE /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_config.py:1941: Failed ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse self._preparse(args, addopts=addopts) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1290, in _preparse self._initini(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1166, in _initini rootpath, inipath, inicfg = determine_setup( ^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 179, in determine_setup inicfg = load_config_dict_from_file(inipath_) or {} ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/findpaths.py", line 65, in load_config_dict_from_file fail(CFG_PYTEST_SECTION.format(filename="setup.cfg"), pytrace=False) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/outcomes.py", line 198, in fail raise Failed(msg=reason, pytrace=pytrace) Failed: [pytest] section in setup.cfg files is no longer supported, change to [tool:pytest] instead. During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse Failed: [pytest] section in setup.cfg files is no longer supported, change to [tool:pytest] instead. For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning _______________________________ test_no_conftest _______________________________ pytester = def test_no_conftest(pytester: Pytester) -> None: pytester.makeconftest("assert 0") result = pytester.runpytest("--noconftest") assert result.ret == ExitCode.NO_TESTS_COLLECTED result = pytester.runpytest() > assert result.ret == ExitCode.USAGE_ERROR E assert == E + where = .ret E + and = ExitCode.USAGE_ERROR /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_conftest.py:405: AssertionError ----------------------------- Captured stdout call ----------------------------- ============================= test session starts ============================== platform linux -- Python 3.12.7, pytest-7.4.4, pluggy-1.5.0 rootdir: /tmp/pytest-of-pterjan/pytest-0/test_no_conftest0 collected 0 items ============================ no tests ran in 0.00s ============================= ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 641, in _importconftest mod = import_path(conftestpath, mode=importmode, root=rootpath) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pathlib.py", line 567, in import_path importlib.import_module(module_name) File "/usr/lib64/python3.12/importlib/__init__.py", line 90, in import_module return _bootstrap._gcd_import(name[level:], package, level) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 1387, in _gcd_import File "", line 1360, in _find_and_load File "", line 1331, in _find_and_load_unlocked File "", line 935, in _load_unlocked File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/assertion/rewrite.py", line 186, in exec_module exec(co, module.__dict__) File "/tmp/pytest-of-pterjan/pytest-0/test_no_conftest0/conftest.py", line 1, in assert 0 AssertionError: assert 0 The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse self._preparse(args, addopts=addopts) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1327, in _preparse self.hook.pytest_load_initial_conftests( File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 182, in _multicall return outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1153, in pytest_load_initial_conftests self.pluginmanager._set_initial_conftests( File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 563, in _set_initial_conftests self._try_load_conftest(anchor, importmode, rootpath) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 580, in _try_load_conftest self._getconftestmodules(anchor, importmode, rootpath) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 609, in _getconftestmodules mod = self._importconftest(conftestpath, importmode, rootpath) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 645, in _importconftest raise ConftestImportFailure(conftestpath, exc_info) from e _pytest.config.ConftestImportFailure: AssertionError: assert 0 (from /tmp/pytest-of-pterjan/pytest-0/test_no_conftest0/conftest.py) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse ConftestImportFailure: AssertionError: assert 0 (from /tmp/pytest-of-pterjan/pytest-0/test_no_conftest0/conftest.py) For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning _______________________ test_conftest_exception_handling _______________________ pytester = def test_conftest_exception_handling(pytester: Pytester) -> None: pytester.makeconftest( """\ raise ValueError() """ ) pytester.makepyfile( """\ def test_some(): pass """ ) res = pytester.runpytest() > assert res.ret == 4 E assert == 4 E + where = .ret /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_conftest.py:719: AssertionError ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 641, in _importconftest mod = import_path(conftestpath, mode=importmode, root=rootpath) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pathlib.py", line 567, in import_path importlib.import_module(module_name) File "/usr/lib64/python3.12/importlib/__init__.py", line 90, in import_module return _bootstrap._gcd_import(name[level:], package, level) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 1387, in _gcd_import File "", line 1360, in _find_and_load File "", line 1331, in _find_and_load_unlocked File "", line 935, in _load_unlocked File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/assertion/rewrite.py", line 186, in exec_module exec(co, module.__dict__) File "/tmp/pytest-of-pterjan/pytest-0/test_conftest_exception_handling0/conftest.py", line 1, in raise ValueError() ValueError The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py", line 104, in pytest_cmdline_parse config: Config = outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1075, in pytest_cmdline_parse self.parse(args) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1425, in parse self._preparse(args, addopts=addopts) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1327, in _preparse self.hook.pytest_load_initial_conftests( File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 182, in _multicall return outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 1153, in pytest_load_initial_conftests self.pluginmanager._set_initial_conftests( File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 563, in _set_initial_conftests self._try_load_conftest(anchor, importmode, rootpath) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 580, in _try_load_conftest self._getconftestmodules(anchor, importmode, rootpath) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 609, in _getconftestmodules mod = self._importconftest(conftestpath, importmode, rootpath) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 645, in _importconftest raise ConftestImportFailure(conftestpath, exc_info) from e _pytest.config.ConftestImportFailure: ValueError: (from /tmp/pytest-of-pterjan/pytest-0/test_conftest_exception_handling0/conftest.py) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 150, in main config = _prepareconfig(args, plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 331, in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse ConftestImportFailure: ValueError: (from /tmp/pytest-of-pterjan/pytest-0/test_conftest_exception_handling0/conftest.py) For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning __________________ test_wrap_session_exit_sessionfinish[None] __________________ returncode = None pytester = @pytest.mark.parametrize("returncode", (None, 42)) def test_wrap_session_exit_sessionfinish( returncode: Optional[int], pytester: Pytester ) -> None: pytester.makeconftest( """ import pytest def pytest_sessionfinish(): pytest.exit(reason="exit_pytest_sessionfinish", returncode={returncode}) """.format( returncode=returncode ) ) result = pytester.runpytest() if returncode: assert result.ret == returncode else: > assert result.ret == ExitCode.NO_TESTS_COLLECTED E assert == E + where = .ret E + and = ExitCode.NO_TESTS_COLLECTED /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_main.py:99: AssertionError ----------------------------- Captured stdout call ----------------------------- ============================= test session starts ============================== platform linux -- Python 3.12.7, pytest-7.4.4, pluggy-1.5.0 rootdir: /tmp/pytest-of-pterjan/pytest-0/test_wrap_session_exit_sessionfinish0 collected 0 items ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/terminal.py", line 857, in pytest_sessionfinish outcome.get_result() File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/tmp/pytest-of-pterjan/pytest-0/test_wrap_session_exit_sessionfinish0/conftest.py", line 3, in pytest_sessionfinish pytest.exit(reason="exit_pytest_sessionfinish", returncode=None) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/outcomes.py", line 143, in exit raise Exit(reason, returncode) _pytest.outcomes.Exit: exit_pytest_sessionfinish During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 169, in main ret: Union[ExitCode, int] = config.hook.pytest_cmdline_main( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/main.py", line 318, in pytest_cmdline_main return wrap_session(config, _main) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/main.py", line 306, in wrap_session config.hook.pytest_sessionfinish( File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 480, in traced_hookexec return outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 62, in from_call result = func() ^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 477, in lambda: oldcall(hook_name, hook_impls, caller_kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: terminalreporter, Hook: pytest_sessionfinish Exit: exit_pytest_sessionfinish For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning ___________________ test_wrap_session_exit_sessionfinish[42] ___________________ returncode = 42 pytester = @pytest.mark.parametrize("returncode", (None, 42)) def test_wrap_session_exit_sessionfinish( returncode: Optional[int], pytester: Pytester ) -> None: pytester.makeconftest( """ import pytest def pytest_sessionfinish(): pytest.exit(reason="exit_pytest_sessionfinish", returncode={returncode}) """.format( returncode=returncode ) ) result = pytester.runpytest() if returncode: > assert result.ret == returncode E assert == 42 E + where = .ret /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_main.py:97: AssertionError ----------------------------- Captured stdout call ----------------------------- ============================= test session starts ============================== platform linux -- Python 3.12.7, pytest-7.4.4, pluggy-1.5.0 rootdir: /tmp/pytest-of-pterjan/pytest-0/test_wrap_session_exit_sessionfinish1 collected 0 items ----------------------------- Captured stderr call ----------------------------- Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 156, in _multicall teardown[0].send(outcome) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/terminal.py", line 857, in pytest_sessionfinish outcome.get_result() File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/tmp/pytest-of-pterjan/pytest-0/test_wrap_session_exit_sessionfinish1/conftest.py", line 3, in pytest_sessionfinish pytest.exit(reason="exit_pytest_sessionfinish", returncode=42) File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/outcomes.py", line 143, in exit raise Exit(reason, returncode) _pytest.outcomes.Exit: exit_pytest_sessionfinish During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1172, in runpytest_inprocess reprec = self.inline_run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py", line 1137, in inline_run ret = main([str(x) for x in args], plugins=plugins) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 169, in main ret: Union[ExitCode, int] = config.hook.pytest_cmdline_main( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/main.py", line 318, in pytest_cmdline_main return wrap_session(config, _main) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/main.py", line 306, in wrap_session config.hook.pytest_sessionfinish( File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 480, in traced_hookexec return outcome.get_result() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 100, in get_result raise exc.with_traceback(exc.__traceback__) File "/usr/lib/python3.12/site-packages/pluggy/_result.py", line 62, in from_call result = func() ^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 477, in lambda: oldcall(hook_name, hook_impls, caller_kwargs, firstresult) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 160, in _multicall _warn_teardown_exception(hook_name, teardown[1], e) File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 50, in _warn_teardown_exception warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: terminalreporter, Hook: pytest_sessionfinish Exit: exit_pytest_sessionfinish For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning _____________________________ test_plugin_specify ______________________________ self = <_pytest.config.PytestPluginManager object at 0x7ff1d555b0b0> modname = 'nqweotexistent', consider_entry_points = True def import_plugin(self, modname: str, consider_entry_points: bool = False) -> None: """Import a plugin with ``modname``. If ``consider_entry_points`` is True, entry point names are also considered to find a plugin. """ # Most often modname refers to builtin modules, e.g. "pytester", # "terminal" or "capture". Those plugins are registered under their # basename for historic purposes but must be imported with the # _pytest prefix. assert isinstance(modname, str), ( "module name as text required, got %r" % modname ) if self.is_blocked(modname) or self.get_plugin(modname) is not None: return importspec = "_pytest." + modname if modname in builtin_plugins else modname self.rewrite_hook.mark_rewrite(importspec) if consider_entry_points: loaded = self.load_setuptools_entrypoints("pytest11", name=modname) if loaded: return try: > __import__(importspec) E ModuleNotFoundError: No module named 'nqweotexistent' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:781: ModuleNotFoundError The above exception was the direct cause of the following exception: @pytest.hookimpl(hookwrapper=True) def pytest_cmdline_parse(): outcome = yield > config: Config = outcome.get_result() /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/helpconfig.py:104: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1075: in pytest_cmdline_parse self.parse(args) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1425: in parse self._preparse(args, addopts=addopts) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1301: in _preparse self.pluginmanager.consider_preparse(args, exclude_only=False) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:709: in consider_preparse self.consider_pluginarg(parg) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:735: in consider_pluginarg self.import_plugin(arg, consider_entry_points=True) /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:783: in import_plugin raise ImportError( _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <_pytest.config.PytestPluginManager object at 0x7ff1d555b0b0> modname = 'nqweotexistent', consider_entry_points = True def import_plugin(self, modname: str, consider_entry_points: bool = False) -> None: """Import a plugin with ``modname``. If ``consider_entry_points`` is True, entry point names are also considered to find a plugin. """ # Most often modname refers to builtin modules, e.g. "pytester", # "terminal" or "capture". Those plugins are registered under their # basename for historic purposes but must be imported with the # _pytest prefix. assert isinstance(modname, str), ( "module name as text required, got %r" % modname ) if self.is_blocked(modname) or self.get_plugin(modname) is not None: return importspec = "_pytest." + modname if modname in builtin_plugins else modname self.rewrite_hook.mark_rewrite(importspec) if consider_entry_points: loaded = self.load_setuptools_entrypoints("pytest11", name=modname) if loaded: return try: > __import__(importspec) E ImportError: Error importing plugin "nqweotexistent": No module named 'nqweotexistent' /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:781: ImportError During handling of the above exception, another exception occurred: pytester = def test_plugin_specify(pytester: Pytester) -> None: with pytest.raises(ImportError): > pytester.parseconfig("-p", "nqweotexistent") /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/pytest-7.4.4/testing/test_session.py:253: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/pytester.py:1242: in parseconfig config = _pytest.config._prepareconfig(new_args, self.plugins) # type: ignore[arg-type] /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:331: in _prepareconfig config = pluginmanager.hook.pytest_cmdline_parse( /usr/lib/python3.12/site-packages/pluggy/_hooks.py:513: in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) /usr/lib/python3.12/site-packages/pluggy/_manager.py:120: in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ hook_name = 'pytest_cmdline_parse' hook_impl = > e = ImportError('Error importing plugin "nqweotexistent": No module named \'nqweotexistent\'') def _warn_teardown_exception( hook_name: str, hook_impl: HookImpl, e: BaseException ) -> None: msg = "A plugin raised an exception during an old-style hookwrapper teardown.\n" msg += f"Plugin: {hook_impl.plugin_name}, Hook: {hook_name}\n" msg += f"{type(e).__name__}: {e}\n" msg += "For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning" # noqa: E501 > warnings.warn(PluggyTeardownRaisedWarning(msg), stacklevel=5) E pluggy.PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. E Plugin: helpconfig, Hook: pytest_cmdline_parse E ImportError: Error importing plugin "nqweotexistent": No module named 'nqweotexistent' E For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning /usr/lib/python3.12/site-packages/pluggy/_callers.py:50: PluggyTeardownRaisedWarning =============================== warnings summary =============================== testing/acceptance_test.py::TestGeneralUsage::test_better_reporting_on_conftest_load_failure /home/pterjan/rpmbuild/BUILD/python-pytest-7.4.4-build/BUILDROOT/usr/lib/python3.12/site-packages/_pytest/config/__init__.py:331: PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown. Plugin: helpconfig, Hook: pytest_cmdline_parse ConftestImportFailure: ModuleNotFoundError: No module named 'qwerty' (from /tmp/pytest-of-pterjan/pytest-0/test_better_reporting_on_conftest_load_failure0/conftest.py) For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning config = pluginmanager.hook.pytest_cmdline_parse( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED testing/acceptance_test.py::TestGeneralUsage::test_issue109_sibling_conftests_not_loaded FAILED testing/acceptance_test.py::test_usage_error_code - assert pytest pid=2999400 py312: FAIL code 1 (188.34 seconds) evaluation failed :( (188.41 seconds) error: Bad exit status from /home/pterjan/rpmbuild/tmp/rpm-tmp.Ezhcfi (%check) RPM build errors: Bad exit status from /home/pterjan/rpmbuild/tmp/rpm-tmp.Ezhcfi (%check) I: [iurt_root_command] ERROR: chroot