Possible special is less aggressive, with tests

This commit is contained in:
Mark McDowall 2014-02-22 15:33:11 -08:00
parent 7279b58a58
commit 6d1cb90723
3 changed files with 43 additions and 6 deletions

View File

@ -181,6 +181,7 @@
<Compile Include="OrganizerTests\BuildFilePathFixture.cs" />
<Compile Include="OrganizerTests\GetSeriesFolderFixture.cs" />
<Compile Include="ParserTests\AbsoluteEpisodeNumberParserFixture.cs" />
<Compile Include="ParserTests\IsPossibleSpecialEpisodeFixture.cs" />
<Compile Include="ParserTests\ReleaseGroupParserFixture.cs" />
<Compile Include="ParserTests\LanguageParserFixture.cs" />
<Compile Include="ParserTests\SeasonParserFixture.cs" />

View File

@ -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();
}
}
}

View File

@ -37,12 +37,9 @@ namespace NzbDrone.Core.Parser.Model
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()