2019-12-07 18:08:19 +03:00
|
|
|
from PIL import Image
|
|
|
|
|
2019-02-03 18:34:53 +03:00
|
|
|
from .helper import PillowTestCase, hopper
|
2012-10-16 00:26:38 +04:00
|
|
|
|
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
class TestImageGetData(PillowTestCase):
|
|
|
|
def test_sanity(self):
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-09-05 14:03:56 +04:00
|
|
|
data = hopper().getdata()
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
len(data)
|
|
|
|
list(data)
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-09-14 21:00:13 +04:00
|
|
|
self.assertEqual(data[0], (20, 20, 70))
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
def test_roundtrip(self):
|
|
|
|
def getdata(mode):
|
2019-12-07 18:08:19 +03:00
|
|
|
im = hopper(mode).resize((32, 30), Image.NEAREST)
|
2014-06-10 13:10:47 +04:00
|
|
|
data = im.getdata()
|
|
|
|
return data[0], len(data), len(list(data))
|
|
|
|
|
2014-09-14 21:00:13 +04:00
|
|
|
self.assertEqual(getdata("1"), (0, 960, 960))
|
2016-07-11 01:47:25 +03:00
|
|
|
self.assertEqual(getdata("L"), (16, 960, 960))
|
2019-06-11 12:28:31 +03:00
|
|
|
self.assertEqual(getdata("I"), (16, 960, 960))
|
2016-07-11 01:47:25 +03:00
|
|
|
self.assertEqual(getdata("F"), (16.0, 960, 960))
|
2018-10-02 11:55:28 +03:00
|
|
|
self.assertEqual(getdata("RGB"), ((11, 13, 52), 960, 960))
|
2016-07-11 01:47:25 +03:00
|
|
|
self.assertEqual(getdata("RGBA"), ((11, 13, 52, 255), 960, 960))
|
|
|
|
self.assertEqual(getdata("CMYK"), ((244, 242, 203, 0), 960, 960))
|
|
|
|
self.assertEqual(getdata("YCbCr"), ((16, 147, 123), 960, 960))
|