kneifftools / tests /test_image_resize.py
kneiff's picture
chore(history)!: publish anonymous repository root
2857cf3
Raw
History Blame Contribute Delete
1.04 kB
from __future__ import annotations
from PIL import Image
import kneiff.utils.image.resize as resize_utils
def test_size_for_pixel_area_bounds_downscales_aspect_ratio() -> None:
size = resize_utils.size_for_pixel_area_bounds(
(2000, 1000),
max_pixel_area=1000,
)
assert size == (1414, 707)
def test_size_for_pixel_area_bounds_upscales_aspect_ratio() -> None:
size = resize_utils.size_for_pixel_area_bounds(
(100, 50),
min_pixel_area=200,
)
assert size == (283, 141)
def test_size_for_pixel_area_bounds_keeps_in_range_size() -> None:
size = resize_utils.size_for_pixel_area_bounds(
(1200, 800),
min_pixel_area=768,
max_pixel_area=1536,
)
assert size == (1200, 800)
def test_resize_to_pixel_area_bounds_uses_lanczos_resize() -> None:
image = Image.new("RGB", (2000, 1000), color="white")
resized = resize_utils.resize_to_pixel_area_bounds(
image,
max_pixel_area=1000,
)
assert resized.size == (1414, 707)