2012-10-16 00:26:38 +04:00
|
|
|
from PIL import Image
|
|
|
|
|
2019-07-06 23:40:53 +03:00
|
|
|
from .helper import PillowTestCase
|
|
|
|
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
class TestImagePutAlpha(PillowTestCase):
|
|
|
|
def test_interface(self):
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
im = Image.new("RGBA", (1, 1), (1, 2, 3, 0))
|
|
|
|
self.assertEqual(im.getpixel((0, 0)), (1, 2, 3, 0))
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
im = Image.new("RGBA", (1, 1), (1, 2, 3))
|
|
|
|
self.assertEqual(im.getpixel((0, 0)), (1, 2, 3, 255))
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
im.putalpha(Image.new("L", im.size, 4))
|
|
|
|
self.assertEqual(im.getpixel((0, 0)), (1, 2, 3, 4))
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
im.putalpha(5)
|
|
|
|
self.assertEqual(im.getpixel((0, 0)), (1, 2, 3, 5))
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
def test_promote(self):
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
im = Image.new("L", (1, 1), 1)
|
|
|
|
self.assertEqual(im.getpixel((0, 0)), 1)
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
im.putalpha(2)
|
2019-06-13 18:54:24 +03:00
|
|
|
self.assertEqual(im.mode, "LA")
|
2014-06-10 13:10:47 +04:00
|
|
|
self.assertEqual(im.getpixel((0, 0)), (1, 2))
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2019-03-19 03:13:58 +03:00
|
|
|
im = Image.new("P", (1, 1), 1)
|
|
|
|
self.assertEqual(im.getpixel((0, 0)), 1)
|
|
|
|
|
|
|
|
im.putalpha(2)
|
2019-06-13 18:54:24 +03:00
|
|
|
self.assertEqual(im.mode, "PA")
|
2019-03-19 03:13:58 +03:00
|
|
|
self.assertEqual(im.getpixel((0, 0)), (1, 2))
|
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
im = Image.new("RGB", (1, 1), (1, 2, 3))
|
|
|
|
self.assertEqual(im.getpixel((0, 0)), (1, 2, 3))
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
im.putalpha(4)
|
2019-06-13 18:54:24 +03:00
|
|
|
self.assertEqual(im.mode, "RGBA")
|
2014-06-10 13:10:47 +04:00
|
|
|
self.assertEqual(im.getpixel((0, 0)), (1, 2, 3, 4))
|
2012-10-16 00:26:38 +04:00
|
|
|
|
2014-06-10 13:10:47 +04:00
|
|
|
def test_readonly(self):
|
|
|
|
|
|
|
|
im = Image.new("RGB", (1, 1), (1, 2, 3))
|
|
|
|
im.readonly = 1
|
|
|
|
|
|
|
|
im.putalpha(4)
|
|
|
|
self.assertFalse(im.readonly)
|
2019-06-13 18:54:24 +03:00
|
|
|
self.assertEqual(im.mode, "RGBA")
|
2014-06-10 13:10:47 +04:00
|
|
|
self.assertEqual(im.getpixel((0, 0)), (1, 2, 3, 4))
|