using Emby.Naming.Common; using Emby.Naming.TV; using Xunit; namespace Jellyfin.Naming.Tests.TV { public class EpisodeNumberWithoutSeasonTests { private readonly EpisodeResolver _resolver = new EpisodeResolver(new NamingOptions()); [Theory] [InlineData(8, "The Simpsons/The Simpsons.S25E08.Steal this episode.mp4")] [InlineData(2, "The Simpsons/The Simpsons - 02 - Ep Name.avi")] [InlineData(2, "The Simpsons/02.avi")] [InlineData(2, "The Simpsons/02 - Ep Name.avi")] [InlineData(2, "The Simpsons/02-Ep Name.avi")] [InlineData(2, "The Simpsons/02.EpName.avi")] [InlineData(2, "The Simpsons/The Simpsons - 02.avi")] [InlineData(2, "The Simpsons/The Simpsons - 02 Ep Name.avi")] [InlineData(7, "GJ Club (2013)/GJ Club - 07.mkv")] [InlineData(17, "Case Closed (1996-2007)/Case Closed - 317.mkv")] // TODO: [InlineData(2, @"The Simpsons/The Simpsons 5 - 02 - Ep Name.avi")] // TODO: [InlineData(2, @"The Simpsons/The Simpsons 5 - 02 Ep Name.avi")] // TODO: [InlineData(7, @"Seinfeld/Seinfeld 0807 The Checks.avi")] // This is not supported anymore after removing the episode number 365+ hack from EpisodePathParser // TODO: [InlineData(13, @"Case Closed (1996-2007)/Case Closed - 13.mkv")] public void GetEpisodeNumberFromFileTest(int episodeNumber, string path) { var result = _resolver.Resolve(path, false); Assert.Equal(episodeNumber, result?.EpisodeNumber); } } }