diff --git a/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj b/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj index 8e2770fc7..fe5a842f8 100644 --- a/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj +++ b/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj @@ -181,6 +181,7 @@ + diff --git a/src/NzbDrone.Core.Test/ParserTests/IsPossibleSpecialEpisodeFixture.cs b/src/NzbDrone.Core.Test/ParserTests/IsPossibleSpecialEpisodeFixture.cs new file mode 100644 index 000000000..5d0cc3829 --- /dev/null +++ b/src/NzbDrone.Core.Test/ParserTests/IsPossibleSpecialEpisodeFixture.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using FluentAssertions; +using NUnit.Framework; +using NzbDrone.Core.Parser.Model; + +namespace NzbDrone.Core.Test.ParserTests +{ + [TestFixture] + public class IsPossibleSpecialEpisodeFixture + { + [Test] + public void should_not_treat_files_without_a_series_title_as_a_special() + { + var parsedEpisodeInfo = new ParsedEpisodeInfo + { + EpisodeNumbers = new[]{ 7 }, + SeasonNumber = 1, + SeriesTitle = "" + }; + + parsedEpisodeInfo.IsPossibleSpecialEpisode().Should().BeFalse(); + } + + [Test] + public void should_return_true_when_episode_numbers_is_empty() + { + var parsedEpisodeInfo = new ParsedEpisodeInfo + { + SeasonNumber = 1, + SeriesTitle = "" + }; + + parsedEpisodeInfo.IsPossibleSpecialEpisode().Should().BeTrue(); + } + } +} diff --git a/src/NzbDrone.Core/Parser/Model/ParsedEpisodeInfo.cs b/src/NzbDrone.Core/Parser/Model/ParsedEpisodeInfo.cs index beea7b190..47adfe26b 100644 --- a/src/NzbDrone.Core/Parser/Model/ParsedEpisodeInfo.cs +++ b/src/NzbDrone.Core/Parser/Model/ParsedEpisodeInfo.cs @@ -37,12 +37,9 @@ public bool IsAbsoluteNumbering() public bool IsPossibleSpecialEpisode() { // if we dont have eny episode numbers we are likely a special episode and need to do a search by episode title - return string.IsNullOrEmpty(AirDate) && - ( - EpisodeNumbers.Length == 0 || - SeasonNumber == 0 || - String.IsNullOrWhiteSpace(SeriesTitle) - ); + return String.IsNullOrWhiteSpace(AirDate) && + (EpisodeNumbers.Length == 0 || SeasonNumber == 0) && + String.IsNullOrWhiteSpace(SeriesTitle); } public override string ToString()