test(fixtures): seed PATH OF PAIN bucket with 10 worst-case fixtures
10 pathological release names mined from the real downloads folder. Each fixture locks in the current parse_release output (including its silent losses and false positives) so future parser improvements are intentional, not silent drift. Cases: - Khruangbin yt-dlp slug (UTF-8 wide pipe '|', YT ID as group) - Deutschland 83-86-89 franchise box (group=S03 misdetection) - Chérie Le BéBé (accented chars preserved, VFF language) - Jimmy Carr 8-word stand-up special title - [ OxTorrent.vc ] prefix + XviD codec (site_tag prefix) - Prodiges S12E01 with episode title + air-date silently lost - The Prodigy: apostrophe + Blu-ray dash + 1080i + multi-word audio = full AI-path degeneration (everything UNKNOWN) - Sleaford Mods yt-dlp slug (YT ID glued to year) - Super Mario Bros [FR-EN] (bilingual tag mistaken for group) - Gilmore Girls Complete S01-S07 (the well-behaved exception: COMPLETE token correctly drives tv_complete + REPACK + 10bit) Also adds shitty + path_of_pain to the per-bucket sanity assertion. Suite: 1020 passed, 8 skipped.
This commit is contained in:
@@ -52,3 +52,5 @@ def test_at_least_one_fixture_per_bucket() -> None:
|
||||
"""Each bucket should hold at least one case once populated."""
|
||||
buckets = {f.name.split("/")[0] for f in FIXTURES}
|
||||
assert "easy" in buckets, "EASY bucket must have at least one fixture"
|
||||
assert "shitty" in buckets, "SHITTY bucket must have at least one fixture"
|
||||
assert "path_of_pain" in buckets, "PATH_OF_PAIN bucket must have at least one fixture"
|
||||
|
||||
Reference in New Issue
Block a user