From db5f4ef3b469a1a412fb2f0e82679e9903452207 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 | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/tests/s_test.py b/tests/s_test.py
index 5d105de..382d1ef 100644
--- a/tests/s_test.py
+++ b/tests/s_test.py
@@ -9,6 +9,7 @@ import sys
import time
import unittest
+import PIL
from PIL import Image
import piexif
from piexif import _common, ImageIFD, ExifIFD, GPSIFD, TAGS, InvalidImageDataError
@@ -580,6 +581,16 @@ class ExifTests(unittest.TestCase):
# 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)
--
2.51.2