From e6cbfd5df144e675b5cc9788e48e3a0245f86bd9 Mon Sep 17 00:00:00 2001 From: ptrcnull Date: Wed, 7 Aug 2024 16:25:33 +0200 Subject: [PATCH] testing/py3-ecos: build with gpep517, enable tests --- testing/py3-ecos/APKBUILD | 19 ++++++++++++------- testing/py3-ecos/assertEquals.patch | 22 ++++++++++++++++++++++ 2 files changed, 34 insertions(+), 7 deletions(-) create mode 100644 testing/py3-ecos/assertEquals.patch diff --git a/testing/py3-ecos/APKBUILD b/testing/py3-ecos/APKBUILD index b99ad2306aa..baf208fd3db 100644 --- a/testing/py3-ecos/APKBUILD +++ b/testing/py3-ecos/APKBUILD @@ -2,36 +2,41 @@ # Maintainer: Anjandev Momi pkgname=py3-ecos pkgver=2.0.11 -pkgrel=3 +pkgrel=4 pkgdesc="python interface for ECOS" url="https://github.com/embotech/ecos-python" arch="all" license="GPL-3.0-only" depends="py3-numpy py3-scipy ecos" -makedepends="py3-setuptools ecos-dev py3-numpy-dev python3-dev" +makedepends="py3-setuptools ecos-dev py3-numpy-dev python3-dev py3-gpep517" checkdepends="py3-nose" subpackages="$pkgname-pyc" source="ecos-python-$pkgver.tar.gz::https://github.com/embotech/ecos-python/archive/refs/tags/v$pkgver.tar.gz use_external_ecos.patch + assertEquals.patch " builddir="$srcdir/ecos-python-$pkgver" -options="!check" # cannot get checks to pass build() { make version - python3 setup.py build + gpep517 build-wheel \ + --wheel-dir .dist \ + --output-fd 3 3>&1 >&2 } check() { - python setup.py build_ext --inplace - nosetests + python3 -m venv --clear --without-pip --system-site-packages .testenv + gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl + .testenv/bin/python3 -m nose } package() { - python3 setup.py install --skip-build --root="$pkgdir" + gpep517 install-wheel --destdir "$pkgdir" \ + .dist/*.whl } sha512sums=" 30ee09ca02f8b2c4b308917f766bd82df62e78737f3a4f7490c89add45473606c1aad431073445d47e488553a8f34642e680c5c98b034c56df15033d3a298180 ecos-python-2.0.11.tar.gz 671bea0c1eadf6fe67a632af6598bc1bc48fbe2ddbdc4439f6bcc52636a9a5b43e7f1c5b7a384a737088a16f69ca3835048b562eeb4c6894a52f381d759ec6c9 use_external_ecos.patch +1d25d4583aa0cb5031238aa49df03cec3a5e31c262c4b6c6657bd51149afa0194331c91c8a7fbb36413f0fb518ec0876ceedfcc0bb5a207497b9128183290b81 assertEquals.patch " diff --git a/testing/py3-ecos/assertEquals.patch b/testing/py3-ecos/assertEquals.patch new file mode 100644 index 00000000000..bdf1bd0d67d --- /dev/null +++ b/testing/py3-ecos/assertEquals.patch @@ -0,0 +1,22 @@ +diff --git a/src/test_interface.py b/src/test_interface.py +index aa18622..d33c2a5 100644 +--- a/src/test_interface.py ++++ b/src/test_interface.py +@@ -8,7 +8,7 @@ def import_error(msg): + print() + + try: +- from nose.tools import assert_raises, assert_almost_equals ++ from nose.tools import assert_raises, assert_almost_equal + except ImportError: + import_error("Please install nose to run tests.") + raise +@@ -40,7 +40,7 @@ b = np.array([3.]) + dims = {'q': [], 'l': 2} + + def check_solution(solution, expected): +- assert_almost_equals(solution, expected, places=5) ++ assert_almost_equal(solution, expected, places=5) + + def test_problems(): + myopts = {'feastol': 2e-8, 'reltol': 2e-8, 'abstol': 2e-8, 'verbose':True};