Pillow/Tests/test_image_getbbox.py

44 lines
1.1 KiB
Python
Raw Normal View History

from helper import unittest, PillowTestCase, hopper
from PIL import Image
2014-06-10 13:10:47 +04:00
class TestImageGetBbox(PillowTestCase):
2014-06-10 13:10:47 +04:00
def test_sanity(self):
bbox = hopper().getbbox()
2014-06-10 13:10:47 +04:00
self.assertIsInstance(bbox, tuple)
2014-06-10 13:10:47 +04:00
def test_bbox(self):
2014-06-10 13:10:47 +04:00
# 8-bit mode
im = Image.new("L", (100, 100), 0)
self.assertEqual(im.getbbox(), None)
2014-06-10 13:10:47 +04:00
im.paste(255, (10, 25, 90, 75))
self.assertEqual(im.getbbox(), (10, 25, 90, 75))
2014-06-10 13:10:47 +04:00
im.paste(255, (25, 10, 75, 90))
self.assertEqual(im.getbbox(), (10, 10, 90, 90))
2014-06-10 13:10:47 +04:00
im.paste(255, (-10, -10, 110, 110))
self.assertEqual(im.getbbox(), (0, 0, 100, 100))
2014-06-10 13:10:47 +04:00
# 32-bit mode
im = Image.new("RGB", (100, 100), 0)
self.assertEqual(im.getbbox(), None)
2014-06-10 13:10:47 +04:00
im.paste(255, (10, 25, 90, 75))
self.assertEqual(im.getbbox(), (10, 25, 90, 75))
im.paste(255, (25, 10, 75, 90))
self.assertEqual(im.getbbox(), (10, 10, 90, 90))
im.paste(255, (-10, -10, 110, 110))
self.assertEqual(im.getbbox(), (0, 0, 100, 100))
if __name__ == '__main__':
unittest.main()