From 6beec97e9ee93d2b32cc2aa7ebc469736fe09390 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Fri, 1 May 2020 10:10:46 +0200 Subject: [PATCH] Add integartion test for the dist generator --- tests/pythondist.sh | 35 +++++++++++++++++++++++++ tests/pythondist.spec | 59 +++++++++++++++++++++++++++++++++++++++++++ tests/tests.yml | 4 +++ 3 files changed, 98 insertions(+) create mode 100755 tests/pythondist.sh create mode 100644 tests/pythondist.spec diff --git a/tests/pythondist.sh b/tests/pythondist.sh new file mode 100755 index 0000000..a8ec77f --- /dev/null +++ b/tests/pythondist.sh @@ -0,0 +1,35 @@ +#!/usr/bin/bash -eux +X_Y=$(rpm --eval '%python3_version') +RPMDIR=$(rpm --eval '%_topdir')/RPMS/noarch + +mkdir -p $(rpm --eval '%_topdir')/SOURCES/ + +spectool -g -R pythondist.spec +rpmbuild -ba pythondist.spec + + +rpm -qp --provides ${RPMDIR}/python3-zope-component-4.3.0-0.noarch.rpm | grep '^python3dist(zope\.component)' +rpm -qp --provides ${RPMDIR}/python3-zope-component-4.3.0-0.noarch.rpm | grep '^python3dist(zope-component)' +rpm -qp --provides ${RPMDIR}/python3-zope-component-4.3.0-0.noarch.rpm | grep '^python'$X_Y'dist(zope\.component)' +rpm -qp --provides ${RPMDIR}/python3-zope-component-4.3.0-0.noarch.rpm | grep '^python'$X_Y'dist(zope-component)' + +rpm -qp --requires ${RPMDIR}/python3-zope-component-4.3.0-0.noarch.rpm | grep '^python'$X_Y'dist(zope\.event)' +rpm -qp --requires ${RPMDIR}/python3-zope-component-4.3.0-0.noarch.rpm | grep '^python'$X_Y'dist(zope\.interface)' + + +rpm -qp --provides ${RPMDIR}/python37-zope-component-4.3.0-0.noarch.rpm | grep '^python3dist(zope\.component)' && exit 1 || true +rpm -qp --provides ${RPMDIR}/python37-zope-component-4.3.0-0.noarch.rpm | grep '^python3dist(zope-component)' && exit 1 || true +rpm -qp --provides ${RPMDIR}/python37-zope-component-4.3.0-0.noarch.rpm | grep '^python3\.7dist(zope\.component)' +rpm -qp --provides ${RPMDIR}/python37-zope-component-4.3.0-0.noarch.rpm | grep '^python3\.7dist(zope-component)' + +rpm -qp --requires ${RPMDIR}/python37-zope-component-4.3.0-0.noarch.rpm | grep '^python3\.7dist(zope\.event)' +rpm -qp --requires ${RPMDIR}/python37-zope-component-4.3.0-0.noarch.rpm | grep '^python3\.7dist(zope\.interface)' + + +rpm -qp --provides ${RPMDIR}/python310-zope-component-4.3.0-0.noarch.rpm | grep '^python3dist(zope\.component)' && exit 1 || true +rpm -qp --provides ${RPMDIR}/python310-zope-component-4.3.0-0.noarch.rpm | grep '^python3dist(zope-component)' && exit 1 || true +rpm -qp --provides ${RPMDIR}/python310-zope-component-4.3.0-0.noarch.rpm | grep '^python3\.10dist(zope\.component)' +rpm -qp --provides ${RPMDIR}/python310-zope-component-4.3.0-0.noarch.rpm | grep '^python3\.10dist(zope-component)' + +rpm -qp --requires ${RPMDIR}/python310-zope-component-4.3.0-0.noarch.rpm | grep '^python3\.10dist(zope\.event)' +rpm -qp --requires ${RPMDIR}/python310-zope-component-4.3.0-0.noarch.rpm | grep '^python3\.10dist(zope\.interface)' diff --git a/tests/pythondist.spec b/tests/pythondist.spec new file mode 100644 index 0000000..5ce9075 --- /dev/null +++ b/tests/pythondist.spec @@ -0,0 +1,59 @@ +Name: pythondist +Version: 4.3.0 +Release: 0 +Summary: ... +License: ZPLv2.1 +Source0: %{pypi_source zope.component} +BuildArch: noarch +BuildRequires: python3-devel +BuildRequires: python3-setuptools + +# Turn off Python bytecode compilation because the build would fail without Python 3.7/3.10 +%define __brp_python_bytecompile %{nil} + +%description +... + +%package -n python3-zope-component +Summary: ... +%description -n python3-zope-component +... + +%package -n python37-zope-component +Summary: ... +%description -n python37-zope-component +... + +%package -n python310-zope-component +Summary: ... +%description -n python310-zope-component +... + +%prep +%autosetup -n zope.component-%{version} + +%build +%py3_build + +%install +%py3_install + +mkdir -p %{buildroot}/usr/lib/python3.7/site-packages +cp -a %{buildroot}%{python3_sitelib}/zope.component-%{version}-py%{python3_version}.egg-info \ + %{buildroot}/usr/lib/python3.7/site-packages/zope.component-%{version}-py3.7.egg-info + +mkdir -p %{buildroot}/usr/lib/python3.10/site-packages +cp -a %{buildroot}%{python3_sitelib}/zope.component-%{version}-py%{python3_version}.egg-info \ + %{buildroot}/usr/lib/python3.10/site-packages/zope.component-%{version}-py3.10.egg-info + +%files -n python3-zope-component +%license LICENSE.txt +%{python3_sitelib}/* + +%files -n python37-zope-component +%license LICENSE.txt +/usr/lib/python3.7/site-packages/zope.component-%{version}-py3.7.egg-info/ + +%files -n python310-zope-component +%license LICENSE.txt +/usr/lib/python3.10/site-packages/zope.component-%{version}-py3.10.egg-info/ diff --git a/tests/tests.yml b/tests/tests.yml index 676d22c..d07e24f 100644 --- a/tests/tests.yml +++ b/tests/tests.yml @@ -24,6 +24,9 @@ - pythonname: dir: . run: ./pythonname.sh + - pythondist: + dir: . + run: ./pythondist.sh - prepare-test-data: dir: . run: tar -xvf test-sources-*.tar.gz -C ./tests/data/scripts_pythondistdeps/ @@ -33,6 +36,7 @@ run: python3 -m pytest --capture=no -vvv required_packages: - rpm-build + - rpmdevtools - python3-devel - python3-pip - python3-pytest