1
0
mirror of https://github.com/Radarr/Radarr.git synced 2024-10-02 14:17:19 +02:00

New: Spanish (Latino) languages

Closes #7914
Closes #3467
Closes #6415
This commit is contained in:
Qstick 2023-02-04 17:42:39 -06:00
parent 364d8bd7c5
commit c3665e9fea
5 changed files with 24 additions and 1 deletions

View File

@ -49,6 +49,7 @@ public class LanguageFixture : CoreTest
new object[] { 34, Language.Bengali }, new object[] { 34, Language.Bengali },
new object[] { 35, Language.Slovak }, new object[] { 35, Language.Slovak },
new object[] { 36, Language.Latvian }, new object[] { 36, Language.Latvian },
new object[] { 37, Language.SpanishLatino }
}; };
public static object[] ToIntCases = public static object[] ToIntCases =
@ -92,6 +93,7 @@ public class LanguageFixture : CoreTest
new object[] { Language.Bengali, 34 }, new object[] { Language.Bengali, 34 },
new object[] { Language.Slovak, 35 }, new object[] { Language.Slovak, 35 },
new object[] { Language.Latvian, 36 }, new object[] { Language.Latvian, 36 },
new object[] { Language.SpanishLatino, 37 }
}; };
[Test] [Test]

View File

@ -1,3 +1,4 @@
using System.Linq;
using FluentAssertions; using FluentAssertions;
using NUnit.Framework; using NUnit.Framework;
using NzbDrone.Core.Languages; using NzbDrone.Core.Languages;
@ -380,6 +381,18 @@ public void should_parse_language_latvian(string postTitle)
result.Languages.Should().BeEquivalentTo(Language.Latvian); result.Languages.Should().BeEquivalentTo(Language.Latvian);
} }
[TestCase("Movie.Title.2019.720p_Eng-Spa(Latino)_MovieClubMx")]
[TestCase("Movie.Title.1.WEB-DL.720p.Complete.Latino.YG")]
[TestCase("Movie.Title.1080p.WEB.H264.Latino.YG")]
[TestCase("Movie Title latino")]
[TestCase("Movie Title (Temporada 11 Completa) Audio Dual Ingles/Latino 1920x1080")]
[TestCase("Movie title 7x4 audio latino")]
public void should_parse_language_spanish_latino(string postTitle)
{
var result = LanguageParser.ParseLanguages(postTitle);
result.First().Id.Should().Be(Language.SpanishLatino.Id);
}
[TestCase("Movie.Title.en.sub")] [TestCase("Movie.Title.en.sub")]
[TestCase("Movie Title.eng.sub")] [TestCase("Movie Title.eng.sub")]
[TestCase("Movie.Title.eng.forced.sub")] [TestCase("Movie.Title.eng.forced.sub")]

View File

@ -107,6 +107,7 @@ public override bool Equals(object obj)
public static Language Bengali => new Language(34, "Bengali"); public static Language Bengali => new Language(34, "Bengali");
public static Language Slovak => new Language(35, "Slovak"); public static Language Slovak => new Language(35, "Slovak");
public static Language Latvian => new Language(36, "Latvian"); public static Language Latvian => new Language(36, "Latvian");
public static Language SpanishLatino => new Language(37, "Spanish (Latino)");
public static Language Any => new Language(-1, "Any"); public static Language Any => new Language(-1, "Any");
public static Language Original => new Language(-2, "Original"); public static Language Original => new Language(-2, "Original");
@ -153,6 +154,7 @@ public static List<Language> All
Bengali, Bengali,
Slovak, Slovak,
Latvian, Latvian,
SpanishLatino,
Any, Any,
Original Original
}; };

View File

@ -44,7 +44,8 @@ public static class IsoLanguages
new IsoLanguage("be", "", "ben", "Bengali", Language.Bengali), new IsoLanguage("be", "", "ben", "Bengali", Language.Bengali),
new IsoLanguage("lt", "", "lit", "Lithuanian", Language.Lithuanian), new IsoLanguage("lt", "", "lit", "Lithuanian", Language.Lithuanian),
new IsoLanguage("sk", "", "slk", "Slovak", Language.Slovak), new IsoLanguage("sk", "", "slk", "Slovak", Language.Slovak),
new IsoLanguage("lv", "", "lav", "Latvian", Language.Latvian) new IsoLanguage("lv", "", "lav", "Latvian", Language.Latvian),
new IsoLanguage("es", "mx", "spa", "Spanish (Latino)", Language.SpanishLatino)
}; };
public static IsoLanguage Find(string isoCode) public static IsoLanguage Find(string isoCode)

View File

@ -197,6 +197,11 @@ public static List<Language> ParseLanguages(string title)
languages.Add(Language.Latvian); languages.Add(Language.Latvian);
} }
if (lowerTitle.Contains("latino"))
{
languages.Add(Language.SpanishLatino);
}
// Case sensitive // Case sensitive
var caseSensitiveMatchs = CaseSensitiveLanguageRegex.Matches(title); var caseSensitiveMatchs = CaseSensitiveLanguageRegex.Matches(title);