mirror of
https://github.com/python-pillow/Pillow.git
synced 2024-11-14 13:46:57 +03:00
48 lines
1.5 KiB
Python
48 lines
1.5 KiB
Python
import os
|
|
import unittest
|
|
|
|
from PIL import Image, SunImagePlugin
|
|
|
|
from .helper import PillowTestCase, hopper
|
|
|
|
EXTRA_DIR = "Tests/images/sunraster"
|
|
|
|
|
|
class TestFileSun(PillowTestCase):
|
|
def test_sanity(self):
|
|
# Arrange
|
|
# Created with ImageMagick: convert hopper.jpg hopper.ras
|
|
test_file = "Tests/images/hopper.ras"
|
|
|
|
# Act
|
|
with Image.open(test_file) as im:
|
|
|
|
# Assert
|
|
self.assertEqual(im.size, (128, 128))
|
|
|
|
self.assert_image_similar(im, hopper(), 5) # visually verified
|
|
|
|
invalid_file = "Tests/images/flower.jpg"
|
|
self.assertRaises(SyntaxError, SunImagePlugin.SunImageFile, invalid_file)
|
|
|
|
def test_im1(self):
|
|
with Image.open("Tests/images/sunraster.im1") as im:
|
|
with Image.open("Tests/images/sunraster.im1.png") as target:
|
|
self.assert_image_equal(im, target)
|
|
|
|
@unittest.skipUnless(os.path.exists(EXTRA_DIR), "Extra image files not installed")
|
|
def test_others(self):
|
|
files = (
|
|
os.path.join(EXTRA_DIR, f)
|
|
for f in os.listdir(EXTRA_DIR)
|
|
if os.path.splitext(f)[1] in (".sun", ".SUN", ".ras")
|
|
)
|
|
for path in files:
|
|
with Image.open(path) as im:
|
|
im.load()
|
|
self.assertIsInstance(im, SunImagePlugin.SunImageFile)
|
|
target_path = "%s.png" % os.path.splitext(path)[0]
|
|
# im.save(target_file)
|
|
with Image.open(target_path) as target:
|
|
self.assert_image_equal(im, target)
|