Integration tests with Navidrome in podman #10
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Overview
Black-box integration tests that invoke the
subsonic-duplicatesbinary as a subprocess against a real Navidrome instance running in podman.Key decisions
hound+id3crates (pure Rust, no external tools).std::process::Command— no library linking needed.deluan/navidrome:0.53.3).wipe_library()between tests.--features integrationflag so normalcargo teststays fast.Directory layout
Test scenarios
sync-ratingsfinds and fixes them.Navidrome container config
CLI helper pattern
Each test writes a minimal
config.tomlto atempfile::TempDir, then calls:and inspects stdout, exit code, and the SQLite DB via
subsonic-duplicates-store.just target
Open items
UFIDframe).startScan/getScanStatusSubsonic endpoints work reliably in Navidrome 0.53.3.