浏览代码

Merge pull request #2855 from Delgan/improve-movie-resolver

Improve movie resolver if space precedes the year
dkanada 5 年之前
父节点
当前提交
d7df890017
共有 3 个文件被更改,包括 6 次插入4 次删除
  1. 1 0
      CONTRIBUTORS.md
  2. 2 1
      Emby.Naming/Common/NamingOptions.cs
  3. 3 3
      tests/Jellyfin.Naming.Tests/Video/CleanDateTimeTests.cs

+ 1 - 0
CONTRIBUTORS.md

@@ -22,6 +22,7 @@
  - [cvium](https://github.com/cvium)
  - [dannymichel](https://github.com/dannymichel)
  - [DaveChild](https://github.com/DaveChild)
+ - [Delgan](https://github.com/Delgan)
  - [dcrdev](https://github.com/dcrdev)
  - [dhartung](https://github.com/dhartung)
  - [dinki](https://github.com/dinki)

+ 2 - 1
Emby.Naming/Common/NamingOptions.cs

@@ -136,7 +136,8 @@ namespace Emby.Naming.Common
 
             CleanDateTimes = new[]
             {
-                @"(.+[^_\,\.\(\)\[\]\-])[_\.\(\)\[\]\-](19\d{2}|20\d{2})([ _\,\.\(\)\[\]\-][^0-9]|).*(19\d{2}|20\d{2})*"
+                @"(.+[^_\,\.\(\)\[\]\-])[_\.\(\)\[\]\-](19\d{2}|20\d{2})([ _\,\.\(\)\[\]\-][^0-9]|).*(19\d{2}|20\d{2})*",
+                @"(.+[^_\,\.\(\)\[\]\-])[ _\.\(\)\[\]\-]+(19\d{2}|20\d{2})([ _\,\.\(\)\[\]\-][^0-9]|).*(19\d{2}|20\d{2})*"
             };
 
             CleanStrings = new[]

+ 3 - 3
tests/Jellyfin.Naming.Tests/Video/CleanDateTimeTests.cs

@@ -39,11 +39,11 @@ namespace Jellyfin.Naming.Tests.Video
         [InlineData(@"[rec].mkv", "[rec].mkv", null)]
         [InlineData(@"St. Vincent (2014)", "St. Vincent", 2014)]
         [InlineData("Super movie(2009).mp4", "Super movie", 2009)]
-        // FIXME: [InlineData("Drug War 2013.mp4", "Drug War", 2013)]
+        [InlineData("Drug War 2013.mp4", "Drug War", 2013)]
         [InlineData("My Movie (1997) - GreatestReleaseGroup 2019.mp4", "My Movie", 1997)]
-        // FIXME: [InlineData("First Man 2018 1080p.mkv", "First Man", 2018)]
+        [InlineData("First Man 2018 1080p.mkv", "First Man", 2018)]
         [InlineData("First Man (2018) 1080p.mkv", "First Man", 2018)]
-        // FIXME: [InlineData("Maximum Ride - 2016 - WEBDL-1080p - x264 AC3.mkv", "Maximum Ride", 2016)]
+        [InlineData("Maximum Ride - 2016 - WEBDL-1080p - x264 AC3.mkv", "Maximum Ride", 2016)]
         // FIXME: [InlineData("Robin Hood [Multi-Subs] [2018].mkv", "Robin Hood", 2018)]
         [InlineData(@"3.Days.to.Kill.2014.720p.BluRay.x264.YIFY.mkv", "3.Days.to.Kill", 2014)] // In this test case, running CleanDateTime first produces no date, so it will attempt to run CleanString first and then CleanDateTime again
         public void CleanDateTimeTest(string input, string expectedName, int? expectedYear)