diff --git a/_multibuild b/_multibuild
new file mode 100644
index 0000000..fcc7b97
--- /dev/null
+++ b/_multibuild
@@ -0,0 +1,3 @@
+
+ test
+
diff --git a/python-coverage.changes b/python-coverage.changes
index c93f654..626364f 100644
--- a/python-coverage.changes
+++ b/python-coverage.changes
@@ -1,3 +1,9 @@
+-------------------------------------------------------------------
+Tue Aug 19 10:42:47 UTC 2025 - Daniel Garcia
+
+- Add _multibuild for running tests, it's required to call "coverage"
+ command when using libalternatives.
+
-------------------------------------------------------------------
Thu Aug 14 12:33:02 UTC 2025 - Markéta Machová
diff --git a/python-coverage.spec b/python-coverage.spec
index 95b6e56..a142e57 100644
--- a/python-coverage.spec
+++ b/python-coverage.spec
@@ -1,7 +1,7 @@
#
# spec file for package python-coverage
#
-# Copyright (c) 2025 SUSE LLC
+# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -21,8 +21,18 @@
%else
%bcond_with libalternatives
%endif
+
+%global flavor @BUILD_FLAVOR@%{nil}
+%if "%{flavor}" == "test"
+%define psuffix -test
+%bcond_without test
+%else
+%define psuffix %{nil}
+%bcond_with test
+%endif
+
%{?sle15_python_module_pythons}
-Name: python-coverage
+Name: python-coverage%{psuffix}
Version: 7.9.2
Release: 0
Summary: Code coverage measurement for Python
@@ -45,7 +55,10 @@ Requires: alts
Requires(post): update-alternatives
Requires(postun): update-alternatives
%endif
+
+%if %{with test}
# SECTION test requirements
+BuildRequires: %{python_module coverage = %{version}}
BuildRequires: %{python_module flaky}
BuildRequires: %{python_module hypothesis >= 6}
BuildRequires: %{python_module pytest-xdist}
@@ -54,6 +67,7 @@ BuildRequires: %{python_module tomli}
# for database (sqlite3) support
BuildRequires: %{pythons}
# /SECTION
+%endif
%python_subpackages
%description
@@ -68,15 +82,20 @@ library to determine which lines are executable, and which have been executed.
sed -i -e '/addopts/d' setup.cfg
%build
+%if %{without test}
%pyproject_wheel
+%endif
%install
+%if %{without test}
%pyproject_install
rm -vf %{buildroot}%{_bindir}/coverage{2,3}
%python_clone -a %{buildroot}%{_bindir}/coverage
%python_expand %fdupes %{buildroot}%{$python_sitearch}
+%endif
%check
+%if %{with test}
export LANG=en_US.UTF8
%python_flavored_alternatives
%{python_expand # indicate a writeable .pth directory for tests
@@ -114,6 +133,7 @@ donttest+=" or test_report_wildcard or test_run_omit_vs_report_omit"
%pytest_arch -n auto --no-flaky-report -k "$donttest" -rp ||:
%pytest_arch -n auto --no-flaky-report -k "not ($donttest)"
+%endif
%pre
%python_libalternatives_reset_alternative coverage
@@ -124,11 +144,13 @@ donttest+=" or test_report_wildcard or test_run_omit_vs_report_omit"
%postun
%python_uninstall_alternative coverage
+%if %{without test}
%files %{python_files}
%license LICENSE.txt
%doc CHANGES.rst CONTRIBUTORS.txt README.rst howto.txt
%python_alternative %{_bindir}/coverage
%{python_sitearch}/coverage/
%{python_sitearch}/coverage-%{version}.dist-info
+%endif
%changelog