test: add real-world release fixtures (EASY bucket)

Captures 5 canonical releases from /mnt/testipool/downloads as parametrized
fixtures under tests/fixtures/releases/easy/. Each fixture declares the
release name, expected ParsedRelease fields, original tree, and the future
routing (library / torrents / seed_hardlinks) for the upcoming organize_media
refactor.

Today only the 'parsed' section is asserted; tree is materialized into a
tmp_path to catch typos. Routing is captured ahead of the planner work — it
becomes verifiable once organize_media lands.

Cases: back_in_action (movie), slow_horses_single_ep (TV single),
foundation_season_pack (S02 + .nfo noise), long_walk_with_noise (movie +
KONTRAST.TOP.txt), sinners_yts (YTS bracket-heavy + Subs/ dir).

Also tracks CHANGELOG.md under [Unreleased] / Added.
This commit is contained in:
2026-05-18 15:36:19 +02:00
parent f17abdbaec
commit 7bc50fd5b8
8 changed files with 568 additions and 0 deletions
@@ -0,0 +1,32 @@
release_name: "Slow.Horses.S05E01.1080p.WEBRip.x265-KONTRAST"
parsed:
title: "Slow.Horses"
year: null
season: 5
episode: 1
episode_end: null
quality: "1080p"
source: "WEBRip"
codec: "x265"
group: "KONTRAST"
tech_string: "1080p.WEBRip.x265"
media_type: "tv_show"
site_tag: null
parse_path: "direct"
is_season_pack: false
# The download folder happens to be the season pack folder (S05) but only
# one episode is present — typical "single episode trickled in" case.
tree:
- "Slow.Horses.S05.1080p.WEBRip.x265-KONTRAST/"
- "Slow.Horses.S05.1080p.WEBRip.x265-KONTRAST/Slow.Horses.S05E01.1080p.WEBRip.x265-KONTRAST.mkv"
routing:
library:
- "Slow.Horses.S05.1080p.WEBRip.x265-KONTRAST/Slow.Horses.S05E01.1080p.WEBRip.x265-KONTRAST.mkv"
torrents:
- "Slow.Horses.S05.1080p.WEBRip.x265-KONTRAST/"
seed_hardlinks:
- source: "library/Slow.Horses.S05.1080p.WEBRip.x265-KONTRAST/Slow.Horses.S05E01.1080p.WEBRip.x265-KONTRAST.mkv"
target: "torrents/Slow.Horses.S05.1080p.WEBRip.x265-KONTRAST/Slow.Horses.S05E01.1080p.WEBRip.x265-KONTRAST.mkv"