4.3 KiB
4.3 KiB
NFOGuard Release Date Priority System - Testing Guide
🧪 Test Your Configured Priority System
1. Test "The Craft (1996)" - Theatrical Fallback
# Test step-by-step TMDB lookup
curl "http://localhost:8080/debug/tmdb/tt0115963"
# Expected: digital=0, physical=multiple, theatrical=1996-05-03
# Should show: no digital releases, DVD from 2000, theatrical from 1996
# Test priority logic
curl "http://localhost:8080/debug/movie/tt0115963/priority"
# Expected result with your config (digital,physical,theatrical):
# - digital: not available
# - physical: 2000-09-12 (too late - DVD release)
# - theatrical: 1996-05-03 ← SELECTED (best option)
2. Test Modern Movie - Digital Priority
# Test a recent movie like Top Gun Maverick
curl "http://localhost:8080/debug/tmdb/tt1745960"
# Expected: digital, physical, and theatrical dates all available
# Should show your priority order preference
curl "http://localhost:8080/debug/movie/tt1745960/priority"
# Expected with your config (digital,physical,theatrical):
# - digital: 2022-08-23 ← SELECTED (first in priority)
# - physical: 2022-10-31 (skipped)
# - theatrical: 2022-05-27 (skipped)
3. Test Different Priority Orders
Your Current Config: RELEASE_DATE_PRIORITY=digital,physical,theatrical
curl "http://localhost:8080/debug/movie/tt1745960/priority"
# Should select: digital date
Alternative Config (edit .env temporarily): RELEASE_DATE_PRIORITY=theatrical,digital,physical
# Restart container after changing .env
docker-compose restart
curl "http://localhost:8080/debug/movie/tt1745960/priority"
# Should now select: theatrical date (earliest option)
4. Test File Date Fallback Logic
Movies with manual imports (showing radarr:db.file.dateAdded):
curl "http://localhost:8080/debug/movie/tt0115963/priority"
# Expected response:
# {
# "release_date_priority": ["digital", "physical", "theatrical"],
# "date_sources": {
# "radarr_import": {"date": "2025-08-29...", "source": "radarr:db.file.dateAdded"},
# "digital_release": {"date": "1996-05-03...", "source": "tmdb:theatrical"}
# },
# "file_date_detected": true,
# "would_prefer_digital": true,
# "selected_date": "1996-05-03T00:00:00+00:00",
# "selected_source": "tmdb:theatrical (preferred over file date)"
# }
5. Verify NFO Source Annotations
After processing a movie:
# Process the movie
curl -X POST "http://localhost:8080/manual/scan?scan_type=movies"
# Check the created NFO file
cat "/media/Movies/movies/The Craft (1996) [imdb-tt0115963]/movie.nfo"
# Should contain at the end:
# <!-- source: Movie; tmdb:theatrical -->
# <!-- managed by NFOGuard -->
🎯 Expected Behavior by Movie Type
Pre-Digital Era Movies (1990s-early 2000s)
- Digital: ❌ Not available
- Physical: ⚠️ Often years later (DVD era)
- Theatrical: ✅ Most accurate (selected)
- Example: The Craft, Titanic, The Matrix
Transition Era Movies (2000s-2010s)
- Digital: ⚠️ Limited early VOD
- Physical: ✅ Often most relevant (DVD/Blu-ray boom)
- Theatrical: ✅ Available
- Example: Dark Knight, Avatar, Iron Man
Modern Movies (2010s+)
- Digital: ✅ Most relevant (streaming era)
- Physical: ✅ Available but later
- Theatrical: ✅ Available
- Example: Top Gun Maverick, Avengers, Everything Everywhere
🔧 Troubleshooting Priority System
No Release Dates Found
curl "http://localhost:8080/debug/tmdb/tt0123456"
# Check if movie exists in TMDB and what release data is available
Unexpected Date Selection
curl "http://localhost:8080/debug/movie/tt0123456/priority"
# Shows exactly which dates were found and why one was selected
Priority Order Not Working
- Check your
.envconfiguration - Restart container:
docker-compose restart - Verify with debug endpoint: shows
"release_date_priority"array
🎉 Success Indicators
- ✅ Old movies use theatrical dates instead of file dates
- ✅ New movies use digital dates per your preference
- ✅ NFO files show source in comments
- ✅ Priority order is respected and configurable
- ✅ Smart fallbacks prevent unrealistic dates
Your NFOGuard now has intelligent, configurable date selection that adapts to each movie's era and available release data! 🎯