diff --git a/src/NzbDrone.Core.Test/MediaFiles/ImportApprovedEpisodesFixture.cs b/src/NzbDrone.Core.Test/MediaFiles/ImportApprovedEpisodesFixture.cs index 2f6e9c92f..2a423c765 100644 --- a/src/NzbDrone.Core.Test/MediaFiles/ImportApprovedEpisodesFixture.cs +++ b/src/NzbDrone.Core.Test/MediaFiles/ImportApprovedEpisodesFixture.cs @@ -259,6 +259,22 @@ namespace NzbDrone.Core.Test.MediaFiles Mocker.GetMock().Verify(v => v.Add(It.Is(c => c.SceneName == null))); } + [Test] + public void should_not_use_folder_name_as_scenename_if_it_is_for_a_full_season() + { + GivenNewDownload(); + _approvedDecisions.First().LocalEpisode.Path = Path.Combine(_downloadClientItem.OutputPath.ToString(), "aaaaa.mkv"); + _approvedDecisions.First().LocalEpisode.FolderEpisodeInfo = new ParsedEpisodeInfo + { + ReleaseTitle = "series.title.s02.dvdrip.xvid-ingot.mkv", + FullSeason = true + }; + + Subject.Import(new List { _approvedDecisions.First() }, true); + + Mocker.GetMock().Verify(v => v.Add(It.Is(c => c.SceneName == null))); + } + [Test] public void should_import_larger_files_first() { @@ -467,6 +483,5 @@ namespace NzbDrone.Core.Test.MediaFiles Mocker.GetMock().Verify(v => v.Add(It.Is(c => c.OriginalFilePath == $"{name}\\subfolder\\{name}.mkv".AsOsAgnostic()))); } - } } diff --git a/src/NzbDrone.Core/MediaFiles/EpisodeImport/ImportApprovedEpisodes.cs b/src/NzbDrone.Core/MediaFiles/EpisodeImport/ImportApprovedEpisodes.cs index 90e6c03b4..45b084c6e 100644 --- a/src/NzbDrone.Core/MediaFiles/EpisodeImport/ImportApprovedEpisodes.cs +++ b/src/NzbDrone.Core/MediaFiles/EpisodeImport/ImportApprovedEpisodes.cs @@ -220,7 +220,9 @@ namespace NzbDrone.Core.MediaFiles.EpisodeImport var folderTitle = localEpisode.FolderEpisodeInfo?.ReleaseTitle; - if (folderTitle.IsNotNullOrWhiteSpace() && SceneChecker.IsSceneTitle(folderTitle)) + if (localEpisode.FolderEpisodeInfo?.FullSeason == false && + folderTitle.IsNotNullOrWhiteSpace() && + SceneChecker.IsSceneTitle(folderTitle)) { return folderTitle; }