1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2024-12-12 11:15:43 +02:00

Fixed broken test.

Removed useless code in ParseEpisodeInfo.
Added negative test case for ParseSeasonInfo.
This commit is contained in:
Mark McDowall 2011-06-22 18:17:42 -07:00
parent 60dc716e5e
commit 6131653da5
2 changed files with 20 additions and 24 deletions

View File

@ -64,7 +64,6 @@ public void file_path_parse(string path, int season, int episode)
Assert.AreEqual(episode, result.EpisodeNumbers[0]);
}
[TestCase("WEEDS.S03E01-06.DUAL.BDRip.XviD.AC3.-HELLYWOOD", QualityTypes.DVD)]
[TestCase("WEEDS.S03E01-06.DUAL.BDRip.X-viD.AC3.-HELLYWOOD", QualityTypes.DVD)]
[TestCase("WEEDS.S03E01-06.DUAL.BDRip.AC3.-HELLYWOOD", QualityTypes.DVD)]
@ -125,8 +124,7 @@ public void parsing_our_own_quality_enum()
Assert.AreEqual(qualityEnum, result.QualityType);
}
}
[Timeout(1000)]
[TestCase("WEEDS.S03E01-06.DUAL.BDRip.XviD.AC3.-HELLYWOOD", "WEEDS", 3, new[] { 1, 2, 3, 4, 5, 6 }, 6)]
[TestCase("Two.and.a.Half.Men.103.104.720p.HDTV.X264-DIMENSION", "Two.and.a.Half.Men", 1, new[] { 3, 4 }, 2)]
@ -167,7 +165,6 @@ public void episode_daily_parse(string postTitle, string title, int year, int mo
Assert.IsNull(result.EpisodeNumbers);
}
[TestCase("30.Rock.Season.04.HDTV.XviD-DIMENSION", "30.Rock", 4)]
[TestCase("Parks.and.Recreation.S02.720p.x264-DIMENSION", "Parks.and.Recreation", 2)]
@ -179,7 +176,6 @@ public void full_season_release_parse(string postTitle, string title, int season
Assert.AreEqual(Parser.NormalizeTitle(title), result.CleanTitle);
Assert.AreEqual(0, result.EpisodeNumbers.Count);
}
[TestCase("Conan", "conan")]
[TestCase("The Tonight Show With Jay Leno", "tonightshowwithjayleno")]
@ -192,7 +188,6 @@ public void series_name_normalize(string parsedSeriesName, string seriesName)
Assert.AreEqual(seriesName, result);
}
[TestCase(@"c:\test\", @"c:\test")]
[TestCase(@"c:\\test\\", @"c:\test")]
[TestCase(@"C:\\Test\\", @"C:\Test")]
@ -203,7 +198,6 @@ public void Normalize_Path(string dirty, string clean)
var result = Parser.NormalizePath(dirty);
Assert.AreEqual(clean, result);
}
[TestCase("CaPitAl", "capital")]
[TestCase("peri.od", "period")]
@ -244,7 +238,6 @@ public void Normalize_removed_common_words(string word)
}
[TestCase("the")]
[TestCase("and")]
[TestCase("or")]
@ -273,6 +266,7 @@ public void Normalize_not_removed_common_words_in_the_middle(string word)
[TestCase("Chuck - 4x05 - Title", "Chuck")]
[TestCase("Law & Order - 4x05 - Title", "laworder")]
[TestCase("This Isn't a Valid Post", "")]
public void parse_series_name(string postTitle, string title)
{
var result = Parser.ParseSeriesName(postTitle);
@ -293,7 +287,7 @@ public void parse_proper(string postTitle, bool proper)
[TestCase("Castle.2009.S01E14.Spanish.HDTV.XviD-LOL", LanguageType.Spanish)]
[TestCase("Castle.2009.S01E14.German.HDTV.XviD-LOL", LanguageType.German)]
[TestCase("Castle.2009.S01E14.Germany.HDTV.XviD-LOL", LanguageType.English)]
[TestCase("Castle.2009.S01E14.English.HDTV.XviD-LOL", LanguageType.Italian)]
[TestCase("Castle.2009.S01E14.Italian.HDTV.XviD-LOL", LanguageType.Italian)]
[TestCase("Castle.2009.S01E14.Danish.HDTV.XviD-LOL", LanguageType.Danish)]
[TestCase("Castle.2009.S01E14.Dutch.HDTV.XviD-LOL", LanguageType.Dutch)]
[TestCase("Castle.2009.S01E14.Japanese.HDTV.XviD-LOL", LanguageType.Japanese)]
@ -308,6 +302,7 @@ public void parse_proper(string postTitle, bool proper)
[TestCase("Castle.2009.S01E14.Finnish.HDTV.XviD-LOL", LanguageType.Finnish)]
[TestCase("Castle.2009.S01E14.Turkish.HDTV.XviD-LOL", LanguageType.Turkish)]
[TestCase("Castle.2009.S01E14.Portuguese.HDTV.XviD-LOL", LanguageType.Portuguese)]
[TestCase("Castle.2009.S01E14.HDTV.XviD-LOL", LanguageType.English)]
public void parse_language(string postTitle, LanguageType language)
{
var result = Parser.ParseLanguage(postTitle);
@ -338,5 +333,13 @@ public void parse_season_info(string postTitle, string seriesName, int seasonNum
Assert.AreEqual(Parser.NormalizeTitle(seriesName), result.SeriesTitle);
Assert.AreEqual(seasonNumber, result.SeasonNumber);
}
[Test]
public void parse_season_info_null()
{
var result = Parser.ParseSeasonInfo("This is not a valid post");
Assert.AreEqual(null, result);
}
}
}

View File

@ -106,22 +106,15 @@ internal static EpisodeParseResult ParseEpisodeInfo(string title)
else
{
//Try to Parse as a daily show
if (airyear > 0)
var airmonth = Convert.ToInt32(match[0].Groups["airmonth"].Value);
var airday = Convert.ToInt32(match[0].Groups["airday"].Value);
parsedEpisode = new EpisodeParseResult
{
var airmonth = Convert.ToInt32(match[0].Groups["airmonth"].Value);
var airday = Convert.ToInt32(match[0].Groups["airday"].Value);
parsedEpisode = new EpisodeParseResult
{
CleanTitle = seriesName,
AirDate = new DateTime(airyear, airmonth, airday),
Language = ParseLanguage(simpleTitle)
};
}
//Something went wrong with this one... return null
else
return null;
CleanTitle = seriesName,
AirDate = new DateTime(airyear, airmonth, airday),
Language = ParseLanguage(simpleTitle)
};
}
parsedEpisode.Quality = ParseQuality(title);