mirror of
https://github.com/python-pillow/Pillow.git
synced 2025-07-09 06:13:30 +03:00
Line too long
This commit is contained in:
parent
f8fbac68de
commit
a8261a2e89
|
@ -25,9 +25,8 @@ class TestImagingLeaks(PillowTestCase):
|
||||||
if i < min_iterations:
|
if i < min_iterations:
|
||||||
mem_limit = mem + 1
|
mem_limit = mem + 1
|
||||||
continue
|
continue
|
||||||
self.assertLessEqual(mem, mem_limit,
|
msg = 'memory usage limit exceeded after %d iterations' % (i + 1)
|
||||||
msg='memory usage limit exceeded after %d iterations'
|
self.assertLessEqual(mem, mem_limit, msg)
|
||||||
% (i + 1))
|
|
||||||
|
|
||||||
def test_leak_putdata(self):
|
def test_leak_putdata(self):
|
||||||
im = Image.new('RGB', (25, 25))
|
im = Image.new('RGB', (25, 25))
|
||||||
|
|
|
@ -272,8 +272,8 @@ class PillowLeakTestCase(PillowTestCase):
|
||||||
for cycle in range(self.iterations):
|
for cycle in range(self.iterations):
|
||||||
core()
|
core()
|
||||||
mem = (self._get_mem_usage() - start_mem)
|
mem = (self._get_mem_usage() - start_mem)
|
||||||
self.assertLess(mem, self.mem_limit,
|
msg = 'memory usage limit exceeded in iteration %d' % cycle
|
||||||
msg='memory usage limit exceeded in iteration %d' % cycle)
|
self.assertLess(mem, self.mem_limit, msg)
|
||||||
|
|
||||||
|
|
||||||
# helpers
|
# helpers
|
||||||
|
|
|
@ -42,7 +42,8 @@ class TestBmpReference(PillowTestCase):
|
||||||
im = Image.open(f)
|
im = Image.open(f)
|
||||||
im.load()
|
im.load()
|
||||||
if os.path.basename(f) not in supported:
|
if os.path.basename(f) not in supported:
|
||||||
print("Please add %s to the partially supported bmp specs." % f)
|
print("Please add %s to the partially supported"
|
||||||
|
" bmp specs." % f)
|
||||||
except Exception: # as msg:
|
except Exception: # as msg:
|
||||||
if os.path.basename(f) in supported:
|
if os.path.basename(f) in supported:
|
||||||
raise
|
raise
|
||||||
|
|
|
@ -58,7 +58,8 @@ class TestFileTiff(PillowTestCase):
|
||||||
|
|
||||||
self.assertEqual(im.mode, "RGBA")
|
self.assertEqual(im.mode, "RGBA")
|
||||||
self.assertEqual(im.size, (52, 53))
|
self.assertEqual(im.size, (52, 53))
|
||||||
self.assertEqual(im.tile, [('raw', (0, 0, 52, 53), 160, ('RGBA', 0, 1))])
|
self.assertEqual(im.tile,
|
||||||
|
[('raw', (0, 0, 52, 53), 160, ('RGBA', 0, 1))])
|
||||||
im.load()
|
im.load()
|
||||||
|
|
||||||
def test_set_legacy_api(self):
|
def test_set_legacy_api(self):
|
||||||
|
|
|
@ -56,7 +56,8 @@ class TestFileTiffMetadata(PillowTestCase):
|
||||||
loaded = Image.open(f)
|
loaded = Image.open(f)
|
||||||
|
|
||||||
self.assertEqual(loaded.tag[ImageJMetaDataByteCounts], (len(bindata),))
|
self.assertEqual(loaded.tag[ImageJMetaDataByteCounts], (len(bindata),))
|
||||||
self.assertEqual(loaded.tag_v2[ImageJMetaDataByteCounts], (len(bindata),))
|
self.assertEqual(loaded.tag_v2[ImageJMetaDataByteCounts],
|
||||||
|
(len(bindata),))
|
||||||
|
|
||||||
self.assertEqual(loaded.tag[ImageJMetaData], bindata)
|
self.assertEqual(loaded.tag[ImageJMetaData], bindata)
|
||||||
self.assertEqual(loaded.tag_v2[ImageJMetaData], bindata)
|
self.assertEqual(loaded.tag_v2[ImageJMetaData], bindata)
|
||||||
|
@ -75,8 +76,10 @@ class TestFileTiffMetadata(PillowTestCase):
|
||||||
img.save(f, tiffinfo=info)
|
img.save(f, tiffinfo=info)
|
||||||
loaded = Image.open(f)
|
loaded = Image.open(f)
|
||||||
|
|
||||||
self.assertEqual(loaded.tag[ImageJMetaDataByteCounts], (8, len(bindata) - 8))
|
self.assertEqual(loaded.tag[ImageJMetaDataByteCounts],
|
||||||
self.assertEqual(loaded.tag_v2[ImageJMetaDataByteCounts], (8, len(bindata) - 8))
|
(8, len(bindata) - 8))
|
||||||
|
self.assertEqual(loaded.tag_v2[ImageJMetaDataByteCounts],
|
||||||
|
(8, len(bindata) - 8))
|
||||||
|
|
||||||
def test_read_metadata(self):
|
def test_read_metadata(self):
|
||||||
img = Image.open('Tests/images/hopper_g4.tif')
|
img = Image.open('Tests/images/hopper_g4.tif')
|
||||||
|
@ -133,8 +136,8 @@ class TestFileTiffMetadata(PillowTestCase):
|
||||||
if isinstance(v, IFDRational):
|
if isinstance(v, IFDRational):
|
||||||
original[k] = IFDRational(*_limit_rational(v, 2**31))
|
original[k] = IFDRational(*_limit_rational(v, 2**31))
|
||||||
if isinstance(v, tuple) and isinstance(v[0], IFDRational):
|
if isinstance(v, tuple) and isinstance(v[0], IFDRational):
|
||||||
original[k] = tuple([IFDRational(
|
original[k] = tuple([IFDRational(*_limit_rational(elt, 2**31))
|
||||||
*_limit_rational(elt, 2**31)) for elt in v])
|
for elt in v])
|
||||||
|
|
||||||
ignored = ['StripByteCounts', 'RowsPerStrip',
|
ignored = ['StripByteCounts', 'RowsPerStrip',
|
||||||
'PageNumber', 'StripOffsets']
|
'PageNumber', 'StripOffsets']
|
||||||
|
@ -184,7 +187,8 @@ class TestFileTiffMetadata(PillowTestCase):
|
||||||
|
|
||||||
def test_iccprofile_binary(self):
|
def test_iccprofile_binary(self):
|
||||||
# https://github.com/python-pillow/Pillow/issues/1526
|
# https://github.com/python-pillow/Pillow/issues/1526
|
||||||
# We should be able to load this, but probably won't be able to save it.
|
# We should be able to load this,
|
||||||
|
# but probably won't be able to save it.
|
||||||
|
|
||||||
im = Image.open('Tests/images/hopper.iccprofile_binary.tif')
|
im = Image.open('Tests/images/hopper.iccprofile_binary.tif')
|
||||||
self.assertEqual(im.tag_v2.tagtype[34675], 1)
|
self.assertEqual(im.tag_v2.tagtype[34675], 1)
|
||||||
|
|
|
@ -38,7 +38,8 @@ class TestFileWebp(PillowTestCase):
|
||||||
|
|
||||||
# generated with:
|
# generated with:
|
||||||
# dwebp -ppm ../../Tests/images/hopper.webp -o hopper_webp_bits.ppm
|
# dwebp -ppm ../../Tests/images/hopper.webp -o hopper_webp_bits.ppm
|
||||||
self.assert_image_similar_tofile(image, 'Tests/images/hopper_webp_bits.ppm', 1.0)
|
self.assert_image_similar_tofile(
|
||||||
|
image, 'Tests/images/hopper_webp_bits.ppm', 1.0)
|
||||||
|
|
||||||
def test_write_rgb(self):
|
def test_write_rgb(self):
|
||||||
"""
|
"""
|
||||||
|
@ -58,7 +59,8 @@ class TestFileWebp(PillowTestCase):
|
||||||
image.getdata()
|
image.getdata()
|
||||||
|
|
||||||
# generated with: dwebp -ppm temp.webp -o hopper_webp_write.ppm
|
# generated with: dwebp -ppm temp.webp -o hopper_webp_write.ppm
|
||||||
self.assert_image_similar_tofile(image, 'Tests/images/hopper_webp_write.ppm', 12.0)
|
self.assert_image_similar_tofile(
|
||||||
|
image, 'Tests/images/hopper_webp_write.ppm', 12.0)
|
||||||
|
|
||||||
# This test asserts that the images are similar. If the average pixel
|
# This test asserts that the images are similar. If the average pixel
|
||||||
# difference between the two images is less than the epsilon value,
|
# difference between the two images is less than the epsilon value,
|
||||||
|
|
|
@ -204,7 +204,8 @@ class TestImageConvert(PillowTestCase):
|
||||||
target = Image.open('Tests/images/hopper-XYZ.png')
|
target = Image.open('Tests/images/hopper-XYZ.png')
|
||||||
if converted_im.mode == 'RGB':
|
if converted_im.mode == 'RGB':
|
||||||
self.assert_image_similar(converted_im, target, 3)
|
self.assert_image_similar(converted_im, target, 3)
|
||||||
self.assertEqual(converted_im.info['transparency'], (105, 54, 4))
|
self.assertEqual(converted_im.info['transparency'],
|
||||||
|
(105, 54, 4))
|
||||||
else:
|
else:
|
||||||
self.assert_image_similar(converted_im,
|
self.assert_image_similar(converted_im,
|
||||||
target.getchannel(0), 1)
|
target.getchannel(0), 1)
|
||||||
|
|
|
@ -221,7 +221,8 @@ class TestLibUnpack(PillowTestCase):
|
||||||
data_len = data * len(pixels)
|
data_len = data * len(pixels)
|
||||||
data = bytes(bytearray(range(1, data_len + 1)))
|
data = bytes(bytearray(range(1, data_len + 1)))
|
||||||
|
|
||||||
im = Image.frombytes(mode, (len(pixels), 1), data, "raw", rawmode, 0, 1)
|
im = Image.frombytes(mode, (len(pixels), 1), data,
|
||||||
|
"raw", rawmode, 0, 1)
|
||||||
|
|
||||||
for x, pixel in enumerate(pixels):
|
for x, pixel in enumerate(pixels):
|
||||||
self.assertEqual(pixel, im.getpixel((x, 0)))
|
self.assertEqual(pixel, im.getpixel((x, 0)))
|
||||||
|
@ -265,9 +266,11 @@ class TestLibUnpack(PillowTestCase):
|
||||||
def test_P(self):
|
def test_P(self):
|
||||||
self.assert_unpack("P", "P;1", b'\xe4', 1, 1, 1, 0, 0, 1, 0, 0)
|
self.assert_unpack("P", "P;1", b'\xe4', 1, 1, 1, 0, 0, 1, 0, 0)
|
||||||
self.assert_unpack("P", "P;2", b'\xe4', 3, 2, 1, 0)
|
self.assert_unpack("P", "P;2", b'\xe4', 3, 2, 1, 0)
|
||||||
# self.assert_unpack("P", "P;2L", b'\xe4', 1, 1, 1, 0) # erroneous?
|
# erroneous?
|
||||||
|
# self.assert_unpack("P", "P;2L", b'\xe4', 1, 1, 1, 0)
|
||||||
self.assert_unpack("P", "P;4", b'\x02\xef', 0, 2, 14, 15)
|
self.assert_unpack("P", "P;4", b'\x02\xef', 0, 2, 14, 15)
|
||||||
# self.assert_unpack("P", "P;4L", b'\x02\xef', 2, 10, 10, 0) # erroneous?
|
# erroneous?
|
||||||
|
# self.assert_unpack("P", "P;4L", b'\x02\xef', 2, 10, 10, 0)
|
||||||
self.assert_unpack("P", "P", 1, 1, 2, 3, 4)
|
self.assert_unpack("P", "P", 1, 1, 2, 3, 4)
|
||||||
self.assert_unpack("P", "P;R", 1, 128, 64, 192, 32)
|
self.assert_unpack("P", "P;R", 1, 128, 64, 192, 32)
|
||||||
|
|
||||||
|
@ -373,7 +376,8 @@ class TestLibUnpack(PillowTestCase):
|
||||||
self.assert_unpack(
|
self.assert_unpack(
|
||||||
"RGBA", "YCCA;P",
|
"RGBA", "YCCA;P",
|
||||||
b']bE\x04\xdd\xbej\xed57T\xce\xac\xce:\x11', # random data
|
b']bE\x04\xdd\xbej\xed57T\xce\xac\xce:\x11', # random data
|
||||||
(0, 161, 0, 4), (255, 255, 255, 237), (27, 158, 0, 206), (0, 118, 0, 17))
|
(0, 161, 0, 4), (255, 255, 255, 237),
|
||||||
|
(27, 158, 0, 206), (0, 118, 0, 17))
|
||||||
self.assert_unpack(
|
self.assert_unpack(
|
||||||
"RGBA", "R", 1, (1, 0, 0, 0), (2, 0, 0, 0), (3, 0, 0, 0))
|
"RGBA", "R", 1, (1, 0, 0, 0), (2, 0, 0, 0), (3, 0, 0, 0))
|
||||||
self.assert_unpack(
|
self.assert_unpack(
|
||||||
|
@ -425,7 +429,8 @@ class TestLibUnpack(PillowTestCase):
|
||||||
self.assert_unpack(
|
self.assert_unpack(
|
||||||
"RGBX", "YCC;P",
|
"RGBX", "YCC;P",
|
||||||
b'D]\x9c\x82\x1a\x91\xfaOC\xe7J\x12', # random data
|
b'D]\x9c\x82\x1a\x91\xfaOC\xe7J\x12', # random data
|
||||||
(127, 102, 0, X), (192, 227, 0, X), (213, 255, 170, X), (98, 255, 133, X))
|
(127, 102, 0, X), (192, 227, 0, X),
|
||||||
|
(213, 255, 170, X), (98, 255, 133, X))
|
||||||
self.assert_unpack("RGBX", "R", 1,
|
self.assert_unpack("RGBX", "R", 1,
|
||||||
(1, 0, 0, 0), (2, 0, 0, 0), (3, 0, 0, 0))
|
(1, 0, 0, 0), (2, 0, 0, 0), (3, 0, 0, 0))
|
||||||
self.assert_unpack("RGBX", "G", 1,
|
self.assert_unpack("RGBX", "G", 1,
|
||||||
|
|
|
@ -26,7 +26,9 @@ class TestPdfParser(PillowTestCase):
|
||||||
def test_parsing(self):
|
def test_parsing(self):
|
||||||
self.assertEqual(PdfParser.interpret_name(b"Name#23Hash"),
|
self.assertEqual(PdfParser.interpret_name(b"Name#23Hash"),
|
||||||
b"Name#Hash")
|
b"Name#Hash")
|
||||||
self.assertEqual(PdfParser.interpret_name(b"Name#23Hash", as_text=True), "Name#Hash")
|
self.assertEqual(PdfParser.interpret_name(
|
||||||
|
b"Name#23Hash", as_text=True
|
||||||
|
), "Name#Hash")
|
||||||
self.assertEqual(PdfParser.get_value(b"1 2 R ", 0),
|
self.assertEqual(PdfParser.get_value(b"1 2 R ", 0),
|
||||||
(IndirectReference(1, 2), 5))
|
(IndirectReference(1, 2), 5))
|
||||||
self.assertEqual(PdfParser.get_value(b"true[", 0), (True, 4))
|
self.assertEqual(PdfParser.get_value(b"true[", 0), (True, 4))
|
||||||
|
@ -72,7 +74,9 @@ class TestPdfParser(PillowTestCase):
|
||||||
self.assertIsInstance(a, list)
|
self.assertIsInstance(a, list)
|
||||||
self.assertEqual(len(a), 4)
|
self.assertEqual(len(a), 4)
|
||||||
self.assertEqual(a[0], PdfName("Name"))
|
self.assertEqual(a[0], PdfName("Name"))
|
||||||
s = PdfParser.get_value(b"<</Name (value) /Length 5>>\nstream\nabcde\nendstream<<...", 0)[0]
|
s = PdfParser.get_value(
|
||||||
|
b"<</Name (value) /Length 5>>\nstream\nabcde\nendstream<<...", 0
|
||||||
|
)[0]
|
||||||
self.assertIsInstance(s, PdfStream)
|
self.assertIsInstance(s, PdfStream)
|
||||||
self.assertEqual(s.dictionary.Name, "value")
|
self.assertEqual(s.dictionary.Name, "value")
|
||||||
self.assertEqual(s.decode(), b"abcde")
|
self.assertEqual(s.decode(), b"abcde")
|
||||||
|
|
|
@ -61,7 +61,8 @@ class GdImageFile(ImageFile.ImageFile):
|
||||||
|
|
||||||
self.palette = ImagePalette.raw("XBGR", s[7+trueColorOffset+4:7+trueColorOffset+4+256*4])
|
self.palette = ImagePalette.raw("XBGR", s[7+trueColorOffset+4:7+trueColorOffset+4+256*4])
|
||||||
|
|
||||||
self.tile = [("raw", (0, 0)+self.size, 7+trueColorOffset+4+256*4, ("L", 0, 1))]
|
self.tile = [("raw", (0, 0)+self.size, 7+trueColorOffset+4+256*4,
|
||||||
|
("L", 0, 1))]
|
||||||
|
|
||||||
|
|
||||||
def open(fp, mode="r"):
|
def open(fp, mode="r"):
|
||||||
|
|
|
@ -162,7 +162,8 @@ class FreeTypeFont(object):
|
||||||
size, offset = self.font.getsize(text, direction, features)
|
size, offset = self.font.getsize(text, direction, features)
|
||||||
return (size[0] + offset[0], size[1] + offset[1])
|
return (size[0] + offset[0], size[1] + offset[1])
|
||||||
|
|
||||||
def getsize_multiline(self, text, direction=None, spacing=4, features=None):
|
def getsize_multiline(self, text, direction=None,
|
||||||
|
spacing=4, features=None):
|
||||||
max_width = 0
|
max_width = 0
|
||||||
lines = self._multiline_split(text)
|
lines = self._multiline_split(text)
|
||||||
line_spacing = self.getsize('A')[1] + spacing
|
line_spacing = self.getsize('A')[1] + spacing
|
||||||
|
|
|
@ -28,7 +28,8 @@ qt_versions = [
|
||||||
['side', 'PySide']
|
['side', 'PySide']
|
||||||
]
|
]
|
||||||
# If a version has already been imported, attempt it first
|
# If a version has already been imported, attempt it first
|
||||||
qt_versions.sort(key=lambda qt_version: qt_version[1] in sys.modules, reverse=True)
|
qt_versions.sort(key=lambda qt_version: qt_version[1] in sys.modules,
|
||||||
|
reverse=True)
|
||||||
for qt_version, qt_module in qt_versions:
|
for qt_version, qt_module in qt_versions:
|
||||||
try:
|
try:
|
||||||
if qt_module == 'PyQt5':
|
if qt_module == 'PyQt5':
|
||||||
|
|
Loading…
Reference in New Issue
Block a user