mirror of
https://github.com/Radarr/Radarr
synced 2026-01-04 14:42:26 +01:00
New: Georgian language support (#11209)
This commit is contained in:
parent
50e75e1362
commit
d38492188a
8 changed files with 39 additions and 4 deletions
|
|
@ -68,7 +68,8 @@ public class LanguageFixture : CoreTest
|
|||
new object[] { 53, Language.Tagalog },
|
||||
new object[] { 54, Language.Urdu },
|
||||
new object[] { 55, Language.Romansh },
|
||||
new object[] { 56, Language.Mongolian }
|
||||
new object[] { 56, Language.Mongolian },
|
||||
new object[] { 57, Language.Georgian }
|
||||
};
|
||||
|
||||
public static object[] ToIntCases =
|
||||
|
|
@ -131,7 +132,8 @@ public class LanguageFixture : CoreTest
|
|||
new object[] { Language.Tagalog, 53 },
|
||||
new object[] { Language.Urdu, 54 },
|
||||
new object[] { Language.Romansh, 55 },
|
||||
new object[] { Language.Mongolian, 56 }
|
||||
new object[] { Language.Mongolian, 56 },
|
||||
new object[] { Language.Georgian, 57 }
|
||||
};
|
||||
|
||||
[Test]
|
||||
|
|
|
|||
|
|
@ -407,6 +407,8 @@ public void should_format_mediainfo_properly()
|
|||
[TestCase("nor", "NO")]
|
||||
[TestCase("khk", "MN")]
|
||||
[TestCase("mvf", "MN")]
|
||||
[TestCase("geo", "KA")]
|
||||
[TestCase("kat", "KA")]
|
||||
public void should_format_languagecodes_properly(string language, string code)
|
||||
{
|
||||
_namingConfig.StandardMovieFormat = "{Movie.Title}.{MEDIAINFO.FULL}";
|
||||
|
|
|
|||
|
|
@ -119,5 +119,15 @@ public void should_return_bengali(string isoCode)
|
|||
var result = IsoLanguages.Find(isoCode);
|
||||
result.Language.Should().Be(Language.Bengali);
|
||||
}
|
||||
|
||||
[TestCase("ka")]
|
||||
[TestCase("geo")]
|
||||
[TestCase("kat")]
|
||||
[TestCase("ka-GE")]
|
||||
public void should_return_georgian(string isoCode)
|
||||
{
|
||||
var result = IsoLanguages.Find(isoCode);
|
||||
result.Language.Should().Be(Language.Georgian);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -521,6 +521,16 @@ public void should_parse_language_mongolian(string postTitle)
|
|||
result.Should().Contain(Language.Mongolian);
|
||||
}
|
||||
|
||||
[TestCase("Movie.Title.1994.Georgian.WEB-DL.h264")]
|
||||
[TestCase("Movie.Title.2016.Geo.WEB-DL.h264")]
|
||||
[TestCase("Movie.Title.2016.KA.WEB-DL.h264")]
|
||||
[TestCase("Movie.Title.2016.RU-KA.WEB-DL.h264")]
|
||||
public void should_parse_language_georgian(string postTitle)
|
||||
{
|
||||
var result = LanguageParser.ParseLanguages(postTitle);
|
||||
result.Should().Contain(Language.Georgian);
|
||||
}
|
||||
|
||||
[TestCase("Movie.Title.en.sub")]
|
||||
[TestCase("Movie Title.eng.sub")]
|
||||
[TestCase("Movie.Title.eng.forced.sub")]
|
||||
|
|
|
|||
|
|
@ -75,6 +75,8 @@ public enum TMDbLanguageCodes
|
|||
[FieldOption(Hint = "Raeto-Romance")]
|
||||
rm,
|
||||
[FieldOption(Hint = "Mongolian")]
|
||||
mn
|
||||
mn,
|
||||
[FieldOption(Hint = "Georgian")]
|
||||
ka
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -127,6 +127,7 @@ public override bool Equals(object obj)
|
|||
public static Language Urdu => new Language(54, "Urdu");
|
||||
public static Language Romansh => new Language(55, "Romansh");
|
||||
public static Language Mongolian => new Language(56, "Mongolian");
|
||||
public static Language Georgian => new Language(57, "Georgian");
|
||||
public static Language Any => new Language(-1, "Any");
|
||||
public static Language Original => new Language(-2, "Original");
|
||||
|
||||
|
|
@ -193,6 +194,7 @@ public static List<Language> All
|
|||
Urdu,
|
||||
Romansh,
|
||||
Mongolian,
|
||||
Georgian,
|
||||
Any,
|
||||
Original
|
||||
};
|
||||
|
|
|
|||
|
|
@ -65,7 +65,8 @@ public static class IsoLanguages
|
|||
new IsoLanguage("tl", "", "tgl", "Tagalog", Language.Tagalog),
|
||||
new IsoLanguage("ur", "", "urd", "Urdu", Language.Urdu),
|
||||
new IsoLanguage("rm", "", "roh", "Romansh", Language.Romansh),
|
||||
new IsoLanguage("mn", "", "mon", "Mongolian", Language.Mongolian)
|
||||
new IsoLanguage("mn", "", "mon", "Mongolian", Language.Mongolian),
|
||||
new IsoLanguage("ka", "", "kat", "Georgian", Language.Georgian)
|
||||
};
|
||||
|
||||
private static readonly Dictionary<string, Language> AlternateIsoCodeMappings = new ()
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ public static class LanguageParser
|
|||
(?<urdu>\burdu\b)|
|
||||
(?<romansh>\b(?:romansh|rumantsch|romansch)\b)|
|
||||
(?<mongolian>\b(?:mongolian|khalkha)\b)|
|
||||
(?<georgian>\b(?:georgian|geo|ka|kat)\b)|
|
||||
(?<original>\b(?:orig|original)\b)",
|
||||
RegexOptions.IgnoreCase | RegexOptions.Compiled | RegexOptions.IgnorePatternWhitespace);
|
||||
|
||||
|
|
@ -438,6 +439,11 @@ public static List<Language> ParseLanguages(string title)
|
|||
languages.Add(Language.Mongolian);
|
||||
}
|
||||
|
||||
if (match.Groups["georgian"].Success)
|
||||
{
|
||||
languages.Add(Language.Georgian);
|
||||
}
|
||||
|
||||
if (match.Groups["original"].Success)
|
||||
{
|
||||
languages.Add(Language.Original);
|
||||
|
|
|
|||
Loading…
Reference in a new issue