"""Title normalization must be symmetric and aggressive (spec).""" from __future__ import annotations from bggpipe.normalize import normalize_title def test_casefold_and_punctuation(): assert normalize_title("Wingspan: European Expansion") == ( "wingspan european expansion" ) def test_accents_stripped(): assert normalize_title("Café International") == "cafe international" def test_ampersand_becomes_and(): assert normalize_title("Axis & Allies") == "axis and allies" assert normalize_title("Axis and Allies") == "axis and allies" def test_articles_dropped(): assert normalize_title("The Castles of Burgundy") == "castles of burgundy" assert normalize_title("A Feast for Odin") == "feast for odin" def test_whitespace_collapsed(): assert normalize_title(" Ticket to Ride ") == "ticket to ride"