# NFOGuard Release Date Priority System - Testing Guide ## ๐Ÿงช Test Your Configured Priority System ### 1. **Test "The Craft (1996)" - Theatrical Fallback** ```bash # 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** ```bash # 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` ```bash curl "http://localhost:8080/debug/movie/tt1745960/priority" # Should select: digital date ``` **Alternative Config** (edit .env temporarily): `RELEASE_DATE_PRIORITY=theatrical,digital,physical` ```bash # 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`): ```bash 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: ```bash # 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: # # ``` ## ๐ŸŽฏ 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 ```bash curl "http://localhost:8080/debug/tmdb/tt0123456" # Check if movie exists in TMDB and what release data is available ``` ### Unexpected Date Selection ```bash curl "http://localhost:8080/debug/movie/tt0123456/priority" # Shows exactly which dates were found and why one was selected ``` ### Priority Order Not Working 1. Check your `.env` configuration 2. Restart container: `docker-compose restart` 3. 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! ๐ŸŽฏ