1
0
mirror of https://github.com/Radarr/Radarr.git synced 2026-04-22 22:15:17 -04:00

New: Add Language Tests

This commit is contained in:
Qstick
2020-05-31 01:26:34 -04:00
parent 5ee2b10c2c
commit 6706138fa0
6 changed files with 337 additions and 131 deletions
@@ -1,80 +1,232 @@
//using System.Collections.Generic;
//using FluentAssertions;
//using NUnit.Framework;
//using NzbDrone.Core.Languages;
//using NzbDrone.Core.Parser;
//using NzbDrone.Core.Test.Framework;
using System.Collections.Generic;
using FluentAssertions;
using NUnit.Framework;
using NzbDrone.Core.Languages;
using NzbDrone.Core.Parser;
using NzbDrone.Core.Test.Framework;
//namespace NzbDrone.Core.Test.ParserTests
//{
namespace NzbDrone.Core.Test.ParserTests
{
[TestFixture]
public class LanguageParserFixture : CoreTest
{
[TestCase("Pulp.Fiction.1994.English.1080p.XviD-LOL")]
[TestCase("The Danish Girl 2015")]
[TestCase("Fantastic.Beasts.The.Crimes.Of.Grindelwald.2018.2160p.WEBRip.x265.10bit.HDR.DD5.1-GASMASK")]
public void should_parse_language_english(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
// [TestFixture]
// public class LanguageParserFixture : CoreTest
// {
// // TODO: REWORK THIS TEST
// //[TestCase("Castle.2009.S01E14.English.HDTV.XviD-LOL", Language.English)]
// //[TestCase("Castle.2009.S01E14.French.HDTV.XviD-LOL", Language.French)]
// //[TestCase("Ouija.Origin.of.Evil.2016.MULTi.TRUEFRENCH.1080p.BluRay.x264-MELBA", Language.French, Language.English)]
// //[TestCase("Everest.2015.FRENCH.VFQ.BDRiP.x264-CNF30", Language.French)]
// //[TestCase("Showdown.In.Little.Tokyo.1991.MULTI.VFQ.VFF.DTSHD-MASTER.1080p.BluRay.x264-ZombiE", Language.French, Language.English)]
// //[TestCase("The.Polar.Express.2004.MULTI.VF2.1080p.BluRay.x264-PopHD", Language.French, Language.English)]
// //[TestCase("Castle.2009.S01E14.Spanish.HDTV.XviD-LOL", Language.Spanish)]
// //[TestCase("Castle.2009.S01E14.German.HDTV.XviD-LOL", Language.German)]
// //[TestCase("Castle.2009.S01E14.Italian.HDTV.XviD-LOL", Language.Italian)]
// //[TestCase("Castle.2009.S01E14.Danish.HDTV.XviD-LOL", Language.Danish)]
// //[TestCase("Castle.2009.S01E14.Dutch.HDTV.XviD-LOL", Language.Dutch)]
// //[TestCase("Castle.2009.S01E14.Japanese.HDTV.XviD-LOL", Language.Japanese)]
// //[TestCase("Castle.2009.S01E14.Cantonese.HDTV.XviD-LOL", Language.Cantonese)]
// //[TestCase("Castle.2009.S01E14.Mandarin.HDTV.XviD-LOL", Language.Mandarin)]
// //[TestCase("Castle.2009.S01E14.Korean.HDTV.XviD-LOL", Language.Korean)]
// //[TestCase("Castle.2009.S01E14.Russian.HDTV.XviD-LOL", Language.Russian)]
// //[TestCase("Castle.2009.S01E14.Polish.HDTV.XviD-LOL", Language.Polish)]
// //[TestCase("Castle.2009.S01E14.Vietnamese.HDTV.XviD-LOL", Language.Vietnamese)]
// //[TestCase("Castle.2009.S01E14.Swedish.HDTV.XviD-LOL", Language.Swedish)]
// //[TestCase("Castle.2009.S01E14.Norwegian.HDTV.XviD-LOL", Language.Norwegian)]
// //[TestCase("Castle.2009.S01E14.Finnish.HDTV.XviD-LOL", Language.Finnish)]
// //[TestCase("Castle.2009.S01E14.Turkish.HDTV.XviD-LOL", Language.Turkish)]
// //[TestCase("Castle.2009.S01E14.Czech.HDTV.XviD-LOL", Language.Czech)]
// //[TestCase("Castle.2009.S01E14.Portuguese.HDTV.XviD-LOL", Language.Portuguese)]
// //[TestCase("Burn.Notice.S04E15.Brotherly.Love.GERMAN.DUBBED.WS.WEBRiP.XviD.REPACK-TVP", Language.German)]
// //[TestCase("Revolution S01E03 No Quarter 2012 WEB-DL 720p Nordic-philipo mkv", Language.Norwegian)]
// //[TestCase("Constantine.2014.S01E01.WEBRiP.H264.AAC.5.1-NL.SUBS", Language.Dutch)]
// //[TestCase("Castle.2009.S01E14.HDTV.XviD.HUNDUB-LOL", Language.Hungarian)]
// //[TestCase("Castle.2009.S01E14.HDTV.XviD.ENG.HUN-LOL", Language.Hungarian)]
// //[TestCase("Castle.2009.S01E14.HDTV.XviD.HUN-LOL", Language.Hungarian)]
// //[TestCase("Castle.2009.S01E14.HDTV.XviD.CZ-LOL", Language.Czech)]
// //[TestCase("Passengers.2016.German.DL.AC3.Dubbed.1080p.WebHD.h264.iNTERNAL-PsO", Language.German)]
// //[TestCase("Der.Soldat.James.German.Bluray.FuckYou.Pso.Why.cant.you.follow.scene.rules.1998", Language.German)]
// //[TestCase("Passengers.German.DL.AC3.Dubbed..BluRay.x264-PsO", Language.German)]
// //[TestCase("Valana la Legende FRENCH BluRay 720p 2016 kjhlj", Language.French)]
// //[TestCase("Smurfs.The.Lost.Village.2017.1080p.BluRay.HebDub.x264-iSrael",Language.Hebrew)]
// //[TestCase("The Danish Girl 2015", Language.English)]
// //[TestCase("Nocturnal Animals (2016) MULTi VFQ English [1080p] BluRay x264-PopHD", Language.English, Language.French)]
// //[TestCase("Wonder.Woman.2017.720p.BluRay.DD5.1.x264-TayTO.CZ-FTU", Language.Czech)]
// //[TestCase("Fantastic.Beasts.The.Crimes.Of.Grindelwald.2018.2160p.WEBRip.x265.10bit.HDR.DD5.1-GASMASK", Language.English)]
// //[TestCase("Vert.Emeraude.2016.VFi.1080P.mHD.X264.AC3-ROMKENT")]
// public void should_parse_language(string postTitle, params Language[] languages)
// {
// var movieInfo = Parser.Parser.ParseMovieTitle(postTitle, true);
// var languageTitle = postTitle;
// if (movieInfo != null)
// {
// languageTitle = movieInfo.SimpleReleaseTitle;
// }
// var result = LanguageParser.ParseLanguages(languageTitle);
// result = LanguageParser.EnhanceLanguages(languageTitle, result);
// result.Should().BeEquivalentTo(languages);
// }
result.Languages.Should().BeEquivalentTo(Language.English);
}
// [TestCase("2 Broke Girls - S01E01 - Pilot.en.sub", Language.English)]
// [TestCase("2 Broke Girls - S01E01 - Pilot.eng.sub", Language.English)]
// [TestCase("2 Broke Girls - S01E01 - Pilot.sub", Language.Unknown)]
// [TestCase("2 Broke Girls - S01E01 - Pilot.eng.forced.sub", Language.English)]
// [TestCase("2 Broke Girls - S01E01 - Pilot-eng-forced.sub", Language.English)]
// public void should_parse_subtitle_language(string fileName, Language language)
// {
// var result = LanguageParser.ParseSubtitleLanguage(fileName);
// result.Should().Be(language);
// }
// }
//}
[TestCase("Pulp.Fiction.1994.French.1080p.XviD-LOL")]
public void should_parse_language_french(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.French);
}
[TestCase("Pulp.Fiction.1994.Spanish.1080p.XviD-LOL")]
public void should_parse_language_spanish(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Spanish);
}
[TestCase("Pulp.Fiction.1994.German.1080p.XviD-LOL")]
public void should_parse_language_german(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.German);
}
[TestCase("Pulp.Fiction.1994.Italian.1080p.XviD-LOL")]
public void should_parse_language_italian(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Italian);
}
[TestCase("Pulp.Fiction.1994.Danish.1080p.XviD-LOL")]
public void should_parse_language_danish(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Danish);
}
[TestCase("Pulp.Fiction.1994.Dutch.1080p.XviD-LOL")]
public void should_parse_language_dutch(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Dutch);
}
[TestCase("Pulp.Fiction.1994.Japanese.1080p.XviD-LOL")]
public void should_parse_language_japanese(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Japanese);
}
[TestCase("Pulp.Fiction.1994.Icelandic.1080p.XviD-LOL")]
public void should_parse_language_icelandic(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Icelandic);
}
[TestCase("Pulp.Fiction.1994.Chinese.1080p.XviD-LOL")]
public void should_parse_language_chinese(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Chinese);
}
[TestCase("Pulp.Fiction.1994.Russian.1080p.XviD-LOL")]
public void should_parse_language_russian(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Russian);
}
[TestCase("Pulp.Fiction.1994.Polish.1080p.XviD-LOL")]
public void should_parse_language_polish(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Polish);
}
[TestCase("Pulp.Fiction.1994.Vietnamese.1080p.XviD-LOL")]
public void should_parse_language_vietnamese(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Vietnamese);
}
[TestCase("Pulp.Fiction.1994.Swedish.1080p.XviD-LOL")]
public void should_parse_language_swedish(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Swedish);
}
[TestCase("Pulp.Fiction.1994.Norwegian.1080p.XviD-LOL")]
public void should_parse_language_norwegian(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Norwegian);
}
[TestCase("Pulp.Fiction.1994.Finnish.1080p.XviD-LOL")]
public void should_parse_language_finnish(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Finnish);
}
[TestCase("Pulp.Fiction.1994.Turkish.1080p.XviD-LOL")]
public void should_parse_language_turkish(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Turkish);
}
[TestCase("Pulp.Fiction.1994.Portuguese.1080p.XviD-LOL")]
public void should_parse_language_portuguese(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Portuguese);
}
[TestCase("Pulp.Fiction.1994.Flemish.1080p.XviD-LOL")]
public void should_parse_language_flemish(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Flemish);
}
[TestCase("Pulp.Fiction.1994.Greek.1080p.XviD-LOL")]
public void should_parse_language_greek(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Greek);
}
[TestCase("Pulp.Fiction.1994.Korean.1080p.XviD-LOL")]
public void should_parse_language_korean(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Korean);
}
[TestCase("Pulp.Fiction.1994.Hungarian.1080p.XviD-LOL")]
public void should_parse_language_hungarian(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Hungarian);
}
[TestCase("Pulp.Fiction.1994.Hebrew.1080p.XviD-LOL")]
public void should_parse_language_hebrew(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Hebrew);
}
[TestCase("Pulp.Fiction.1994.AC3.LT.EN-CNN")]
public void should_parse_language_lithuanian(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Lithuanian);
}
[TestCase("Pulp.Fiction.1994.CZ.1080p.XviD-LOL")]
public void should_parse_language_czech(string postTitle)
{
var result = Parser.Parser.ParseMovieTitle(postTitle, true);
result.Languages.Should().BeEquivalentTo(Language.Czech);
}
[TestCase("Pulp Fiction.en.sub")]
[TestCase("Pulp Fiction.eng.sub")]
[TestCase("Pulp.Fiction.eng.forced.sub")]
[TestCase("Pulp-Fiction-eng-forced.sub")]
public void should_parse_subtitle_language(string fileName)
{
var result = LanguageParser.ParseSubtitleLanguage(fileName);
result.Should().Be(Language.English);
}
[TestCase("Pulp Fiction.sub")]
public void should_parse_subtitle_language_unknown(string fileName)
{
var result = LanguageParser.ParseSubtitleLanguage(fileName);
result.Should().Be(Language.Unknown);
}
}
}