summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Pipping <sping@gentoo.org>2020-12-13 16:31:08 +0100
committerSebastian Pipping <sping@gentoo.org>2020-12-13 16:35:50 +0100
commit5828450895b63114deea9c50b6b5cfb81abb652c (patch)
tree19adf11b93a126a94e018ea66e48b6808fd7088d /dev-python
parentsys-auth/oath-toolkit: Drop old (diff)
downloadgentoo-5828450895b63114deea9c50b6b5cfb81abb652c.tar.gz
gentoo-5828450895b63114deea9c50b6b5cfb81abb652c.tar.bz2
gentoo-5828450895b63114deea9c50b6b5cfb81abb652c.zip
dev-python/piexif: PythonCompatUpdate + fix tests
Closes: https://bugs.gentoo.org/732780 Signed-off-by: Sebastian Pipping <sping@gentoo.org> Package-Manager: Portage-3.0.0, Repoman-2.3.23
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/piexif/files/piexif-1.1.3-tests-pillow-7.2.0.patch40
-rw-r--r--dev-python/piexif/piexif-1.1.3.ebuild14
2 files changed, 52 insertions, 2 deletions
diff --git a/dev-python/piexif/files/piexif-1.1.3-tests-pillow-7.2.0.patch b/dev-python/piexif/files/piexif-1.1.3-tests-pillow-7.2.0.patch
new file mode 100644
index 000000000000..b13425a0fc21
--- /dev/null
+++ b/dev-python/piexif/files/piexif-1.1.3-tests-pillow-7.2.0.patch
@@ -0,0 +1,40 @@
+From 5209b53e9689ce28dcd045f384633378d619718f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jan=20Wi=C5=9Bniewski?= <vuko@vuko.pl>
+Date: Thu, 5 Nov 2020 16:18:52 +0100
+Subject: [PATCH] convert IFDRational to tuples in tests
+
+This fixes tests with Pillow version >= 7.2.0
+---
+ tests/s_test.py | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/tests/s_test.py b/tests/s_test.py
+index 5d105de..a7cad54 100644
+--- a/tests/s_test.py
++++ b/tests/s_test.py
+@@ -9,6 +9,7 @@
+ import time
+ import unittest
+
++import PIL
+ from PIL import Image
+ import piexif
+ from piexif import _common, ImageIFD, ExifIFD, GPSIFD, TAGS, InvalidImageDataError
+@@ -580,6 +581,17 @@ def test_print_exif(self):
+ # test utility methods----------------------------------------------
+
+ def _compare_value(self, v1, v2):
++ if isinstance(v2, PIL.TiffImagePlugin.IFDRational):
++ v2 = (v2.numerator, v2.denominator)
++ if isinstance(v2, tuple):
++ converted_v2 = []
++ for el in v2:
++ if isinstance(el, PIL.TiffImagePlugin.IFDRational):
++ converted_v2.append((el.numerator, el.denominator))
++ else:
++ converted_v2.append(el)
++ v2 = tuple(converted_v2)
++
+ if type(v1) != type(v2):
+ if isinstance(v1, tuple):
+ self.assertEqual(pack_byte(*v1), v2)
diff --git a/dev-python/piexif/piexif-1.1.3.ebuild b/dev-python/piexif/piexif-1.1.3.ebuild
index bb976412ab52..d73f2b184359 100644
--- a/dev-python/piexif/piexif-1.1.3.ebuild
+++ b/dev-python/piexif/piexif-1.1.3.ebuild
@@ -3,9 +3,9 @@
EAPI=7
-PYTHON_COMPAT=( pypy3 python3_{6,7,8} )
+PYTHON_COMPAT=( pypy3 python3_{6..9} )
-inherit distutils-r1
+inherit edos2unix distutils-r1
DESCRIPTION="Exif manipulation with pure Python"
HOMEPAGE="https://github.com/hMatoba/Piexif
@@ -23,6 +23,16 @@ DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
test? ( dev-python/pillow[jpeg] )"
RDEPEND=""
+PATCHES=(
+ # From https://github.com/hMatoba/Piexif/pull/109
+ "${FILESDIR}"/${P}-tests-pillow-7.2.0.patch
+)
+
+src_prepare() {
+ edos2unix tests/s_test.py # to be able to patch it
+ default
+}
+
python_test() {
"${PYTHON}" setup.py test || die
}