Files
photoanalyzer/tests/characterization/test_pa_album.py

29 lines
1.1 KiB
Python

"""Characterize album labeling (donor: album_label, fit_label; webapp.query.album_of
mirrors album_label — asserted identical here)."""
from pathlib import Path
import photo_analyzer as pa
from webapp import query
def test_album_label_leaf_folder_relative():
lib = Path("/lib")
assert pa.album_label(Path("/lib/Urlaub/Rom/a.jpg"), lib) == "Urlaub/Rom"
assert pa.album_label(Path("/lib/Urlaub/Venedig/a.jpg"), lib) == "Urlaub/Venedig"
assert pa.album_label(Path("/lib/a.jpg"), lib) == "(root)"
assert pa.album_label(Path("/elsewhere/x/a.jpg"), lib) == "x", \
"outside library → bare parent name"
assert pa.album_label(Path("/lib/x/a.jpg"), None) == "x"
def test_webapp_album_of_mirrors_album_label():
lib = Path("/lib")
for p in ("/lib/Urlaub/Rom/a.jpg", "/lib/a.jpg", "/other/x/a.jpg"):
assert query.album_of(p, lib) == pa.album_label(Path(p), lib), p
def test_fit_label_left_truncates():
assert pa.fit_label("short", 10) == "short"
assert pa.fit_label("Urlaub/Somewhere/Rom", 8) == "…ere/Rom"
assert len(pa.fit_label("Urlaub/Somewhere/Rom", 8)) == 8