Pillow

Форк
0
/
test_file_sun.py 
49 строк · 1.3 Кб
1
from __future__ import annotations
2

3
import os
4

5
import pytest
6

7
from PIL import Image, SunImagePlugin
8

9
from .helper import assert_image_equal_tofile, assert_image_similar, hopper
10

11
EXTRA_DIR = "Tests/images/sunraster"
12

13

14
def test_sanity() -> None:
15
    # Arrange
16
    # Created with ImageMagick: convert hopper.jpg hopper.ras
17
    test_file = "Tests/images/hopper.ras"
18

19
    # Act
20
    with Image.open(test_file) as im:
21
        # Assert
22
        assert im.size == (128, 128)
23

24
        assert_image_similar(im, hopper(), 5)  # visually verified
25

26
    invalid_file = "Tests/images/flower.jpg"
27
    with pytest.raises(SyntaxError):
28
        SunImagePlugin.SunImageFile(invalid_file)
29

30

31
def test_im1() -> None:
32
    with Image.open("Tests/images/sunraster.im1") as im:
33
        assert_image_equal_tofile(im, "Tests/images/sunraster.im1.png")
34

35

36
@pytest.mark.skipif(
37
    not os.path.exists(EXTRA_DIR), reason="Extra image files not installed"
38
)
39
def test_others() -> None:
40
    files = (
41
        os.path.join(EXTRA_DIR, f)
42
        for f in os.listdir(EXTRA_DIR)
43
        if os.path.splitext(f)[1] in (".sun", ".SUN", ".ras")
44
    )
45
    for path in files:
46
        with Image.open(path) as im:
47
            im.load()
48
            assert isinstance(im, SunImagePlugin.SunImageFile)
49
            assert_image_equal_tofile(im, f"{os.path.splitext(path)[0]}.png")
50

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.