mirror of
https://github.com/python-pillow/Pillow.git
synced 2024-11-14 13:46:57 +03:00
d50445ff30
Similar to the recent adoption of Black. isort is a Python utility to sort imports alphabetically and automatically separate into sections. By using isort, contributors can quickly and automatically conform to the projects style without thinking. Just let the tool do it. Uses the configuration recommended by the Black to avoid conflicts of style. Rewrite TestImageQt.test_deprecated to no rely on import order.
108 lines
2.2 KiB
Python
108 lines
2.2 KiB
Python
import sys
|
|
|
|
from PIL import ImageWin
|
|
|
|
from .helper import PillowTestCase, hopper, unittest
|
|
|
|
|
|
class TestImageWin(PillowTestCase):
|
|
def test_sanity(self):
|
|
dir(ImageWin)
|
|
|
|
def test_hdc(self):
|
|
# Arrange
|
|
dc = 50
|
|
|
|
# Act
|
|
hdc = ImageWin.HDC(dc)
|
|
dc2 = int(hdc)
|
|
|
|
# Assert
|
|
self.assertEqual(dc2, 50)
|
|
|
|
def test_hwnd(self):
|
|
# Arrange
|
|
wnd = 50
|
|
|
|
# Act
|
|
hwnd = ImageWin.HWND(wnd)
|
|
wnd2 = int(hwnd)
|
|
|
|
# Assert
|
|
self.assertEqual(wnd2, 50)
|
|
|
|
|
|
@unittest.skipUnless(sys.platform.startswith("win32"), "Windows only")
|
|
class TestImageWinDib(PillowTestCase):
|
|
def test_dib_image(self):
|
|
# Arrange
|
|
im = hopper()
|
|
|
|
# Act
|
|
dib = ImageWin.Dib(im)
|
|
|
|
# Assert
|
|
self.assertEqual(dib.size, im.size)
|
|
|
|
def test_dib_mode_string(self):
|
|
# Arrange
|
|
mode = "RGBA"
|
|
size = (128, 128)
|
|
|
|
# Act
|
|
dib = ImageWin.Dib(mode, size)
|
|
|
|
# Assert
|
|
self.assertEqual(dib.size, (128, 128))
|
|
|
|
def test_dib_paste(self):
|
|
# Arrange
|
|
im = hopper()
|
|
|
|
mode = "RGBA"
|
|
size = (128, 128)
|
|
dib = ImageWin.Dib(mode, size)
|
|
|
|
# Act
|
|
dib.paste(im)
|
|
|
|
# Assert
|
|
self.assertEqual(dib.size, (128, 128))
|
|
|
|
def test_dib_paste_bbox(self):
|
|
# Arrange
|
|
im = hopper()
|
|
bbox = (0, 0, 10, 10)
|
|
|
|
mode = "RGBA"
|
|
size = (128, 128)
|
|
dib = ImageWin.Dib(mode, size)
|
|
|
|
# Act
|
|
dib.paste(im, bbox)
|
|
|
|
# Assert
|
|
self.assertEqual(dib.size, (128, 128))
|
|
|
|
def test_dib_frombytes_tobytes_roundtrip(self):
|
|
# Arrange
|
|
# Make two different DIB images
|
|
im = hopper()
|
|
dib1 = ImageWin.Dib(im)
|
|
|
|
mode = "RGB"
|
|
size = (128, 128)
|
|
dib2 = ImageWin.Dib(mode, size)
|
|
|
|
# Confirm they're different
|
|
self.assertNotEqual(dib1.tobytes(), dib2.tobytes())
|
|
|
|
# Act
|
|
# Make one the same as the using tobytes()/frombytes()
|
|
test_buffer = dib1.tobytes()
|
|
dib2.frombytes(test_buffer)
|
|
|
|
# Assert
|
|
# Confirm they're the same
|
|
self.assertEqual(dib1.tobytes(), dib2.tobytes())
|