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-pysmi.changes b/python-pysmi.changes
index aced58e..089527b 100644
--- a/python-pysmi.changes
+++ b/python-pysmi.changes
@@ -1,3 +1,18 @@
+-------------------------------------------------------------------
+Wed Oct 6 07:40:43 UTC 2021 - Matej Cepl
+
+- Add multibuild to separate test phase from the build one.
+
+-------------------------------------------------------------------
+Tue Oct 5 15:33:49 UTC 2021 - Stefan Schubert
+
+- Added BuildRequires: alts
+
+-------------------------------------------------------------------
+Thu Sep 30 20:13:20 UTC 2021 - Stefan Schubert
+
+- Use libalternatives instead of update-alternatives.
+
-------------------------------------------------------------------
Mon Oct 14 14:17:08 UTC 2019 - Matej Cepl
diff --git a/python-pysmi.spec b/python-pysmi.spec
index 1cf8cde..64473cd 100644
--- a/python-pysmi.spec
+++ b/python-pysmi.spec
@@ -1,7 +1,7 @@
#
-# spec file for package python-pysmi
+# spec file
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,8 +16,22 @@
#
+%if 0%{?suse_version} > 1500
+%bcond_without libalternatives
+%else
+%bcond_with libalternatives
+%endif
+
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
-Name: python-pysmi
+%global flavor @BUILD_FLAVOR@%{nil}
+%if "%{flavor}" == "test"
+%define psuffix -test
+%bcond_without test
+%else
+%define psuffix %{nil}
+%bcond_with test
+%endif
+Name: python-pysmi%{psuffix}
Version: 0.3.4
Release: 0
Summary: SNMP SMI/MIB Parser
@@ -26,10 +40,18 @@ URL: http://pysmi.sourceforge.net/
Source: https://files.pythonhosted.org/packages/source/p/pysmi/pysmi-%{version}.tar.gz
BuildRequires: %{python_module ply}
BuildRequires: fdupes
-BuildRequires: python-rpm-macros
+BuildRequires: python-rpm-macros >= 20210929
+%if %{with test}
+BuildRequires: %{python_module pysnmp}
+%endif
Requires: python-ply
+%if %{with libalternatives}
+BuildRequires: alts
+Requires: alts
+%else
Requires(post): update-alternatives
-Requires(postun): update-alternatives
+Requires(postun):update-alternatives
+%endif
BuildArch: noarch
%python_subpackages
@@ -46,12 +68,24 @@ Documentation: http://pysmi.sf.net
%python_build
%install
+%if !%{with test}
%python_install
mv %{buildroot}%{_bindir}/mibdump.py %{buildroot}%{_bindir}/mibdump
mv %{buildroot}%{_bindir}/mibcopy.py %{buildroot}%{_bindir}/mibcopy
%python_clone -a %{buildroot}%{_bindir}/mibdump
%python_clone -a %{buildroot}%{_bindir}/mibcopy
%python_expand %fdupes %{buildroot}%{$python_sitelib}
+%endif
+
+%check
+%if %{with test}
+%pyunittest -v tests
+%endif
+
+%if !%{with test}
+%pre
+# If libalternatives is used: Removing old update-alternatives entries.
+%python_libalternatives_reset_alternative mibdump
%post
%python_install_alternative mibdump
@@ -59,14 +93,12 @@ mv %{buildroot}%{_bindir}/mibcopy.py %{buildroot}%{_bindir}/mibcopy
%postun
%python_uninstall_alternative mibdump
-#%%check
-#nosetests # cannot be run without pysmnp which needs this package
-
%files %{python_files}
%license LICENSE.rst
%doc README.md CHANGES.rst
%{python_sitelib}/*
%python_alternative %{_bindir}/mibdump
%python_alternative %{_bindir}/mibcopy
+%endif
%changelog