mirror of
https://github.com/revenz/FileFlowsPlugins.git
synced 2026-04-28 05:32:01 -05:00
FF-1784: Movie Lookup replace "Ae" with "Ä" if german and no matches found
This commit is contained in:
@@ -216,6 +216,26 @@ public class MovieLookupTests : TestBase
|
||||
string nfo = (string)args.Variables["NFO"];
|
||||
Assert.IsFalse(string.IsNullOrWhiteSpace(nfo));
|
||||
}
|
||||
|
||||
|
||||
[TestMethod]
|
||||
public void MovieLookupTests_AdamsApples()
|
||||
{
|
||||
var args = GetNodeParameters("/storage/cache/sabnzbd/completed/movies/Adams.Aepfel.2005.German.DL.DTSHD.1080p.BDRip.x265-sikamikanico/Adams.Aepfel.2005.German.DL.DTSHD.1080p.BDRip.x265-sikamikanico.mkv");
|
||||
|
||||
MovieLookup ml = new MovieLookup();
|
||||
ml.UseFolderName = false;
|
||||
|
||||
var result = ml.Execute(args);
|
||||
Assert.AreEqual(1, result);
|
||||
Assert.IsTrue(args.Parameters.ContainsKey(Globals.MOVIE_INFO));
|
||||
|
||||
var mi = args.Parameters[Globals.MOVIE_INFO] as MovieInfo;
|
||||
Assert.IsNotNull(mi);
|
||||
|
||||
Assert.AreEqual("Adam's Apples", mi.Title);
|
||||
Assert.AreEqual(2005, mi.ReleaseDate.Year);
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -64,7 +64,10 @@ public class MovieLookup : Node
|
||||
/// <returns>the output to call next</returns>
|
||||
public override int Execute(NodeParameters args)
|
||||
{
|
||||
string lookupName = UseFolderName ? FileHelper.GetDirectoryName(args.LibraryFileName) : FileHelper.GetShortFileNameWithoutExtension(args.LibraryFileName);
|
||||
var originalName = UseFolderName
|
||||
? FileHelper.GetDirectoryName(args.LibraryFileName)
|
||||
: FileHelper.GetShortFileNameWithoutExtension(args.LibraryFileName);
|
||||
string lookupName = originalName;
|
||||
lookupName = lookupName.Replace(".", " ").Replace("_", " ");
|
||||
|
||||
// look for year
|
||||
@@ -91,6 +94,12 @@ public class MovieLookup : Node
|
||||
|
||||
var response = movieApi.SearchByTitleAsync(lookupName).Result;
|
||||
|
||||
if(response.Results.Count == 0 && originalName.Contains("german", StringComparison.CurrentCultureIgnoreCase) && lookupName.Contains("Ae", StringComparison.InvariantCultureIgnoreCase))
|
||||
{
|
||||
lookupName = lookupName.Replace("Ae", "Ä", StringComparison.InvariantCultureIgnoreCase);
|
||||
response = movieApi.SearchByTitleAsync(lookupName).Result;
|
||||
}
|
||||
|
||||
|
||||
// try find an exact match
|
||||
var results = response.Results.OrderBy(x =>
|
||||
|
||||
Reference in New Issue
Block a user