Pillow/Tests
Jon Dufresne 1ba14783d2 Avoid deprecated 'U' mode when opening files
Instead, use PSFile() wrapper to handle all newline in the EPS spec.

Update line ending tests to handle all combinations of '\n' and '\r'.

Fixes warning "DeprecationWarning: 'U' mode is deprecated" in tests.
2018-07-01 08:07:59 -07:00
..
fonts test the accuracy of the font file conversion 2017-11-02 13:07:49 +00:00
icc Corrected filename [ci skip] 2016-05-03 19:23:51 +10:00
images Merge pull request #2989 from hugovk/test-wal 2018-07-01 09:34:15 +03:00
32bit_segfault_check.py Set executable flag on scripts with shebang line 2017-03-31 19:43:19 +11:00
bench_cffi_access.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
bench_get.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
check_fli_overflow.py Health fixes 2016-04-01 21:49:30 +11:00
check_icns_dos.py Added py3 variable to _util 2018-04-20 09:19:13 +10:00
check_imaging_leaks.py Replaced MacOS with macOS 2018-03-19 19:38:17 +11:00
check_j2k_dos.py Added py3 variable to _util 2018-04-20 09:19:13 +10:00
check_j2k_leaks.py Replaced MacOS with macOS 2018-03-19 19:38:17 +11:00
check_j2k_overflow.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
check_jpeg_leaks.py Replaced MacOS with macOS 2018-03-19 19:38:17 +11:00
check_large_memory_numpy.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
check_large_memory.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
check_libtiff_segfault.py Replace try/except/fail pattern with TestCase.assertRaises() 2016-11-06 13:43:09 -08:00
check_png_dos.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
createfontdatachunk.py Move so isn't installed globally 2017-07-27 14:12:28 +03:00
helper.py Changed OS X references to macOS 2018-05-13 20:55:04 +10:00
import_all.py Updated paths for src directory 2017-12-31 07:11:26 +11:00
make_hash.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
README.rst No need to run coverage on dev machines 2017-12-28 14:49:47 +00:00
test_000_sanity.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_binary.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_bmp_reference.py Replaced false assert with fail 2017-06-03 14:04:18 +10:00
test_box_blur.py ImageOps.box_blur is deprecated, use ImageFilter.BoxBlur instead 2018-04-14 21:54:40 +03:00
test_color_lut.py use assertRaisesRegex 2018-04-15 23:35:41 +03:00
test_core_resources.py clear_cache: number or blocks to keep 2017-09-23 04:20:53 +03:00
test_decompression_bomb.py Added missing whitespace 2018-03-06 19:53:07 +11:00
test_features.py - Conditonally compile animation support, only if the mux.h and demux.h headers meet the ABI version requirements 2017-09-27 19:04:24 -07:00
test_file_blp.py blp: Remove images with unclear licenses 2018-03-12 09:48:13 +02:00
test_file_bmp.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_bufrstub.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_container.py Test ContainerIO for correctness 2017-03-05 00:46:30 +02:00
test_file_cur.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_dcx.py Changed EOFError tests 2017-09-30 13:33:06 +10:00
test_file_dds.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_file_eps.py Avoid deprecated 'U' mode when opening files 2018-07-01 08:07:59 -07:00
test_file_fitsstub.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_fli.py Changed EOFError tests 2017-09-30 13:33:06 +10:00
test_file_fpx.py Allow the olefile dependency to be optional 2017-10-04 06:54:34 -07:00
test_file_ftex.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_file_gbr.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_file_gd.py Added GD tests 2017-12-30 19:31:33 +11:00
test_file_gif.py Changed encoderinfo to have priority over info when saving GIF images 2018-04-11 08:57:31 +10:00
test_file_gimpgradient.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_file_gimppalette.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_gribstub.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_hdf5stub.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_icns.py Replaced MacOS with macOS 2018-03-19 19:38:17 +11:00
test_file_ico.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_im.py Changed EOFError tests 2017-09-30 13:33:06 +10:00
test_file_iptc.py Added tests 2017-03-03 19:45:55 +11:00
test_file_jpeg.py Changed Exception tests to be more specific 2018-06-12 04:41:31 +10:00
test_file_jpeg2k.py Remove unittest regex deprecation warnings 2018-04-14 21:54:40 +03:00
test_file_libtiff_small.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_file_libtiff.py Added py3 variable to _util 2018-04-20 09:19:13 +10:00
test_file_mcidas.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_mic.py These tests/features now require libtiff 2017-12-20 12:22:28 +00:00
test_file_mpo.py Changed EOFError tests 2017-09-30 13:33:06 +10:00
test_file_msp.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_palm.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_pcd.py Health fixes 2016-04-01 21:49:30 +11:00
test_file_pcx.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_pdf.py issue #2959: enhance test, mainly to trigger Appveyor re-build 2018-03-04 00:01:14 +01:00
test_file_pixar.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_png.py TestFilePng: Fix test_save_l_transparency() 2018-06-14 12:46:35 +03:00
test_file_ppm.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_psd.py Added _min_frame property 2017-09-30 13:33:13 +10:00
test_file_sgi.py Trim trailing whitespace tests dir 2018-01-27 00:07:24 -06:00
test_file_spider.py Merge pull request #2647 from radarhere/spider 2017-09-09 10:23:45 +01:00
test_file_sun.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_file_tar.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_file_tga.py Test TGA RLE file 2016-04-21 17:49:35 +03:00
test_file_tiff_metadata.py Added missing whitespace 2018-03-06 19:53:07 +11:00
test_file_tiff.py Changed Exception tests to be more specific 2018-06-12 04:41:31 +10:00
test_file_wal.py Basic WAL test 2018-01-29 17:18:06 +02:00
test_file_webp_alpha.py Increased average pixel value difference to allow for libwebp 0.6.1 2017-12-07 00:46:56 +11:00
test_file_webp_animated.py Added support for generators when using append_images for WEBP 2017-11-06 20:06:50 +11:00
test_file_webp_lossless.py Fixing a typo in comments 2017-10-03 08:05:20 -07:00
test_file_webp_metadata.py - flake8 formatting fixes 2017-10-01 15:23:18 -07:00
test_file_webp.py Fixing a typo in comments 2017-10-03 08:05:20 -07:00
test_file_wmf.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_xbm.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_file_xpm.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_file_xvthumb.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_font_bdf.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_font_leaks.py Replaced MacOS with macOS 2018-03-19 19:38:17 +11:00
test_font_pcf.py Merge pull request #3105 from radarhere/py3 2018-04-22 18:37:33 +03:00
test_format_hsv.py Added py3 variable to _util 2018-04-20 09:19:13 +10:00
test_format_lab.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_image_access.py Fixed whitespace 2018-04-18 16:00:57 +10:00
test_image_array.py Fixed typos 2016-08-31 20:12:07 +10:00
test_image_convert.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_image_copy.py Flake8 fixes 2017-04-20 21:14:23 +10:00
test_image_crop.py Flake8 fixes 2017-04-20 21:14:23 +10:00
test_image_draft.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_image_filter.py ImageFilter.BoxBlur 2017-09-14 01:59:25 +03:00
test_image_frombytes.py Added tests 2017-09-01 20:36:51 +10:00
test_image_fromqimage.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_image_fromqpixmap.py Flake8 fixes 2017-04-20 21:14:23 +10:00
test_image_getbands.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_image_getbbox.py Changed assert checks to more specific versions 2017-06-03 14:04:54 +10:00
test_image_getcolors.py Changed assert checks to more specific versions 2017-06-03 14:04:54 +10:00
test_image_getdata.py Merge branch 'master' into rotation-pixel-center 2016-08-07 13:47:16 +03:00
test_image_getextrema.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_image_getim.py Added py3 variable to _util 2018-04-20 09:19:13 +10:00
test_image_getpalette.py Changed assert checks to more specific versions 2017-06-03 14:04:54 +10:00
test_image_getprojection.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_image_histogram.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_image_load.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_image_mode.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_image_paste.py Flake8 fixes 2017-04-20 21:14:23 +10:00
test_image_point.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_image_putalpha.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_image_putdata.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_image_putpalette.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_image_quantize.py Changed Exception tests to be more specific 2018-06-12 04:41:31 +10:00
test_image_resample.py Remove unittest regex deprecation warnings 2018-04-14 21:54:40 +03:00
test_image_resize.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_image_rotate.py Split test for fill and no fill 2018-03-27 19:48:35 +05:30
test_image_split.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_image_thumbnail.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_image_tobitmap.py Removed duplicate line 2018-01-27 10:09:51 +11:00
test_image_tobytes.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_image_toqimage.py Flake8 fixes 2017-04-20 21:14:23 +10:00
test_image_toqpixmap.py Flake8 fixes 2017-04-20 21:14:23 +10:00
test_image_transform.py Fixed transform fillcolor argument when image mode is RGBA or LA 2018-06-12 04:41:46 +10:00
test_image_transpose.py tests for transverse, add to docs 2017-09-11 23:00:35 +03:00
test_image.py Added py3 variable to _util 2018-04-20 09:19:13 +10:00
test_imagechops.py remove end of file banner from all files 2016-07-10 14:11:28 +03:00
test_imagecms.py Remove unittest regex deprecation warnings 2018-04-14 21:54:40 +03:00
test_imagecolor.py Added getrgb hsb color string 2018-05-31 06:14:29 +10:00
test_imagedraw.py Changed ellipse point calculations to be more evenly distributed 2018-05-27 15:32:22 +10:00
test_imagedraw2.py Test ImageDraw2.ellipse 2018-05-31 15:11:50 +03:00
test_imageenhance.py use getchannel where is possible 2017-08-09 02:36:07 +03:00
test_imagefile.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_imagefont_bitmap.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_imagefont.py Skip font tests when ImageFont not available 2018-05-31 15:11:50 +03:00
test_imagefontctl.py Added missing whitespace 2018-03-06 19:53:07 +11:00
test_imagegrab.py Removed unnecessary parameter 2017-06-03 13:56:23 +10:00
test_imagemath.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_imagemorph.py Changed Exception tests to be more specific 2018-06-12 04:41:31 +10:00
test_imageops_usm.py ImageOps.box_blur is deprecated, use ImageFilter.BoxBlur instead 2018-04-14 21:54:40 +03:00
test_imageops.py Removed whitespace from blank lines 2016-09-03 12:23:42 +10:00
test_imagepalette.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_imagepath.py Added py3 variable to _util 2018-04-20 09:19:13 +10:00
test_imageqt.py Updated redirected URLs [ci skip] 2018-06-23 10:58:41 +10:00
test_imagesequence.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_imageshow.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_imagestat.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_imagetk.py Added py3 variable to _util 2018-04-20 09:19:13 +10:00
test_imagewin_pointers.py Drop support for Python 2.6 2016-11-22 04:23:55 -08:00
test_imagewin.py Remove functions deprecated and warning since 2.0 (15 Mar 2013) and raising exceptions since 3.0 (1 Oct 2015) 2017-05-27 21:52:43 +03:00
test_lib_image.py Changed format of lambda calls 2017-09-01 21:05:40 +10:00
test_lib_pack.py Added missing whitespace 2018-03-06 19:53:07 +11:00
test_locale.py Added future print_function imports 2016-11-26 11:05:56 +11:00
test_map.py Vulnerable map function is not called on windows 2016-10-03 07:42:48 -07:00
test_mode_i16.py Revert little-endian byte order for "I" and "F" rawmodes 2017-08-28 19:02:15 +03:00
test_numpy.py Merge pull request #3099 from uploadcare/lut-numpy 2018-07-01 13:18:03 +03:00
test_pdfparser.py issue #2959: rename pdfParser.py to PdfParser.py 2018-01-31 00:35:55 +01:00
test_pickle.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_psdraw.py Added anchor to readthedocs URL 2017-02-11 12:47:10 +11:00
test_pyroma.py Prefer more conventional __version__ rather than PILLOW_VERSION 2018-04-25 11:21:38 +03:00
test_shell_injection.py Replaced MacOS with macOS 2018-03-19 19:38:17 +11:00
test_tiff_ifdrational.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_uploader.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_util.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
test_webp_leaks.py At least two spaces before inline comment 2018-03-04 21:36:33 +11:00
threaded_save.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00
versions.py Flake8 blank line fixes 2018-03-04 21:36:33 +11:00

Pillow Tests
============

Test scripts are named ``test_xxx.py`` and use the ``unittest`` module. A base class and helper functions can be found in ``helper.py``.

Dependencies
-----------

Install::

    pip install pytest pytest-cov

Execution
---------

**If Pillow has been built in-place**

To run an individual test::

    python Tests/test_image.py

Run all the tests from the root of the Pillow source distribution::

    pytest -vx Tests

Or with coverage::

    pytest -vx --cov PIL --cov-report term Tests
    coverage html
    open htmlcov/index.html

**If Pillow has been installed**

To run an individual test::

    pytest -k Tests/test_image.py

Run all the tests from the root of the Pillow source distribution::

    pytest