Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Pillow / Tests / test_map.py
Size: Mime:
from helper import PillowTestCase, unittest
import sys

from PIL import Image


@unittest.skipIf(sys.platform.startswith('win32'), "Win32 does not call map_buffer")
class TestMap(PillowTestCase):
    def test_overflow(self):
        # There is the potential to overflow comparisons in map.c
        # if there are > SIZE_MAX bytes in the image or if
        # the file encodes an offset that makes
        # (offset + size(bytes)) > SIZE_MAX

        # Note that this image triggers the decompression bomb warning:
        max_pixels = Image.MAX_IMAGE_PIXELS
        Image.MAX_IMAGE_PIXELS = None

        # This image hits the offset test.
        im = Image.open('Tests/images/l2rgb_read.bmp')
        with self.assertRaises((ValueError, MemoryError, IOError)):
            im.load()

        Image.MAX_IMAGE_PIXELS = max_pixels


if __name__ == '__main__':
    unittest.main()