Skip to content

Commit

Permalink
Merge pull request #5984 from radarhere/libwebp
Browse files Browse the repository at this point in the history
libwebp 1.2.2 fixed endian bugs
  • Loading branch information
hugovk committed Mar 12, 2022
2 parents 475b723 + eb1fc4a commit 6faebd3
Showing 1 changed file with 11 additions and 3 deletions.
14 changes: 11 additions & 3 deletions Tests/test_file_webp_animated.py
@@ -1,6 +1,7 @@
import pytest
from packaging.version import parse as parse_version

from PIL import Image
from PIL import Image, features

from .helper import (
assert_image_equal,
Expand All @@ -27,7 +28,6 @@ def test_n_frames():
assert im.is_animated


@pytest.mark.xfail(is_big_endian(), reason="Fails on big-endian")
def test_write_animation_L(tmp_path):
"""
Convert an animated GIF to animated WebP, then compare the frame count, and first
Expand All @@ -46,14 +46,18 @@ def test_write_animation_L(tmp_path):
orig.load()
im.load()
assert_image_similar(im, orig.convert("RGBA"), 32.9)

if is_big_endian():
webp = parse_version(features.version_module("webp"))
if webp < parse_version("1.2.2"):
pytest.skip("Fails with libwebp earlier than 1.2.2")
orig.seek(orig.n_frames - 1)
im.seek(im.n_frames - 1)
orig.load()
im.load()
assert_image_similar(im, orig.convert("RGBA"), 32.9)


@pytest.mark.xfail(is_big_endian(), reason="Fails on big-endian")
def test_write_animation_RGB(tmp_path):
"""
Write an animated WebP from RGB frames, and ensure the frames
Expand All @@ -69,6 +73,10 @@ def check(temp_file):
assert_image_equal(im, frame1.convert("RGBA"))

# Compare second frame to original
if is_big_endian():
webp = parse_version(features.version_module("webp"))
if webp < parse_version("1.2.2"):
pytest.skip("Fails with libwebp earlier than 1.2.2")
im.seek(1)
im.load()
assert_image_equal(im, frame2.convert("RGBA"))
Expand Down

0 comments on commit 6faebd3

Please sign in to comment.