test(fixtures): seed SHITTY release bucket with 15 anti-regression cases
Add 15 expected.yaml fixtures under tests/fixtures/releases/shitty/ covering the awkward but real-world release names from the downloads folder. Each fixture locks in the current parse_release behavior so future parser changes are intentional, not silent drift. Cases captured: - Angel INTEGRALE 3-level hierarchy (tv_complete media_type) - Buffy custom French title with dots preserved - Archer S14E09E10E11 multi-episode (E11 lost — tech debt) - Notre Planète lowercase s01e01 - Vinyl ' - 1x01 - FHD' (stray dash artifact — tech debt) - Deutschland.83 (year-suffix as part of title) - Tatortreiniger S01-06 range (falls to movie — tech debt) - Derry Girls duplicated title - Jurassic Park bare folder (media_type=unknown) - La Nuit au Musée bilingual MULTI - Chérie j'ai agrandi (ASCII-stripped apostrophe, parses fine) - Honey Don't (unescaped apostrophe — full AI-path degeneration) - Hook MULTi.SUBS movie with Subs/ folder - Predator Badlands space separators (group=UNKNOWN — tech debt) - Westworld S04 Subs.Only (no video file) Each fixture also captures the future 3-flow routing (library / torrents / seed_hardlinks) ahead of the organize_media refactor. Suite: 1011 passed, 8 skipped.
This commit is contained in:
+12
-2
@@ -21,8 +21,18 @@ callers).
|
||||
each documenting an expected `ParsedRelease` plus the future `routing`
|
||||
(library / torrents / seed_hardlinks) for the upcoming `organize_media`
|
||||
refactor. EASY bucket seeded with 5 cases (movie, single-episode, season
|
||||
pack, movie + noise, YTS bracket-heavy). Parametrized over
|
||||
`tests/domain/test_release_fixtures.py` for anti-regression.
|
||||
pack, movie + noise, YTS bracket-heavy). SHITTY bucket seeded with 15
|
||||
anti-regression cases covering: 3-level INTEGRALE hierarchy (Angel),
|
||||
French custom titles (Buffy, La Nuit au Musée, Chérie j'ai agrandi),
|
||||
multi-episode chain `S14E09E10E11` (Archer, captures E11 loss),
|
||||
lowercase `s01e01` (Notre Planète), `NxNN` with ` - ` separators
|
||||
(Vinyl, captures dash artifact), title-with-year-suffix (Deutschland.83),
|
||||
season-range `S01-06` (Tatortreiniger, captures movie misclassification),
|
||||
duplicated title (Derry Girls), bare folder name (Jurassic Park,
|
||||
media_type=unknown), apostrophe-in-name (Honey Don't, captures full AI-path
|
||||
degeneration), SUBS-tag movie (Hook), space separators (Predator Badlands,
|
||||
captures group=UNKNOWN), subs-only release (Westworld S04).
|
||||
Parametrized over `tests/domain/test_release_fixtures.py` for anti-regression.
|
||||
- **`NxNN` alt season/episode form supported** by `parse_release`. Releases like
|
||||
`Show.1x05.720p.HDTV.x264-GRP` and `Show.2x07x08.1080p.WEB.x265-GRP` (multi-ep
|
||||
alt form) now parse as TV shows.
|
||||
|
||||
Reference in New Issue
Block a user