Add edge-case test coverage #36
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/issue-29-edge-case-tests"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #29
Adds edge-case test coverage (all green — no bugs surfaced, this is coverage hardening):
parse_episode_filename) and feed<title>output both preserve Unicode titles.parse_episode_nfoaccepts a sidecar that starts with a BOM.build_feed_xmlproduces all 120 items without error.WuMing
Found 1 issue(s). See inline comments below.
@ -560,0 +607,4 @@) -> None:episodes = [Episode(audio_path=channel_dir / f"2024-01-01 - Episode {index:03d}.opus",code [MEDIUM]
The 120 Episode objects reference audio files under channel_dir, but no files are created. Existing tests use _make_episode to create placeholder audio files. If build_feed_xml reads audio file metadata (e.g., enclosure length via stat), this test will fail with FileNotFoundError; otherwise it bypasses normal fixture setup and weakens coverage. Create a placeholder file for each episode or use _make_episode.
tests/test_feed.pyline 610✅ Fixed in commit
8e036f7— each episode now writes a placeholder audio file, sobuild_feed_xmlexercises thestat()size path (0 for empty files) instead of theexists()fallback.