Pillow/Tests/test_file_sun.py

51 lines
1.6 KiB
Python
Raw Normal View History

from helper import unittest, PillowTestCase, hopper
2014-07-16 15:24:23 +04:00
2015-07-03 08:03:25 +03:00
from PIL import Image, SunImagePlugin
2014-07-16 15:24:23 +04:00
import os
EXTRA_DIR = 'Tests/images/sunraster'
2014-07-16 15:24:23 +04:00
2017-04-20 14:14:23 +03:00
2014-07-16 15:24:23 +04:00
class TestFileSun(PillowTestCase):
def test_sanity(self):
# Arrange
# Created with ImageMagick: convert hopper.jpg hopper.ras
test_file = "Tests/images/hopper.ras"
2014-07-16 15:24:23 +04:00
# Act
im = Image.open(test_file)
# Assert
self.assertEqual(im.size, (128, 128))
2017-04-20 14:14:23 +03:00
self.assert_image_similar(im, hopper(), 5) # visually verified
2015-07-03 09:22:56 +03:00
invalid_file = "Tests/images/flower.jpg"
self.assertRaises(SyntaxError,
lambda: SunImagePlugin.SunImageFile(invalid_file))
2015-07-03 08:03:25 +03:00
2016-11-20 06:12:30 +03:00
def test_im1(self):
im = Image.open('Tests/images/sunraster.im1')
target = Image.open('Tests/images/sunraster.im1.png')
self.assert_image_equal(im, target)
@unittest.skipIf(not os.path.exists(EXTRA_DIR),
"Extra image files not installed")
def test_others(self):
files = (os.path.join(EXTRA_DIR, f) for f in
2017-04-20 14:14:23 +03:00
os.listdir(EXTRA_DIR) if os.path.splitext(f)[1]
in ('.sun', '.SUN', '.ras'))
for path in files:
with Image.open(path) as im:
2017-04-20 14:14:23 +03:00
im.load()
self.assertIsInstance(im, SunImagePlugin.SunImageFile)
target_path = "%s.png" % os.path.splitext(path)[0]
2017-04-20 14:14:23 +03:00
# im.save(target_file)
with Image.open(target_path) as target:
self.assert_image_equal(im, target)
2017-04-20 14:14:23 +03:00
2014-07-16 15:24:23 +04:00
if __name__ == '__main__':
unittest.main()