Catch DeprecationWarning from initial import

This commit is contained in:
Andrew Murray 2019-02-16 12:36:10 +11:00
parent 6e1227765e
commit 38b5255f58

View File

@ -1,13 +1,16 @@
from .helper import PillowTestCase, hopper from .helper import PillowTestCase, hopper
from PIL import ImageQt import warnings
deprecated = False
with warnings.catch_warnings():
warnings.filterwarnings("error", category=DeprecationWarning)
try: try:
# Python 3 from PIL import ImageQt
from importlib import reload except DeprecationWarning:
except ImportError: deprecated = True
# Python 2.7 warnings.filterwarnings("ignore", category=DeprecationWarning)
pass from PIL import ImageQt
if ImageQt.qt_is_installed: if ImageQt.qt_is_installed:
from PIL.ImageQt import qRgba from PIL.ImageQt import qRgba
@ -86,5 +89,4 @@ class TestImageQt(PillowQtTestCase, PillowTestCase):
ImageQt.ImageQt(hopper(mode)) ImageQt.ImageQt(hopper(mode))
def test_deprecated(self): def test_deprecated(self):
expected = DeprecationWarning if ImageQt.qt_version in ["4", "side"] else None self.assertEqual(ImageQt.qt_version in ["4", "side"], deprecated)
self.assert_warning(expected, reload, ImageQt)