using Emby.Naming.Common; using Emby.Naming.TV; using Xunit; namespace Jellyfin.Naming.Tests.TV { public class AbsoluteEpisodeNumberTests { [Fact] public void TestAbsoluteEpisodeNumber1() { Assert.Equal(12, GetEpisodeNumberFromFile(@"The Simpsons/12.avi")); } [Fact] public void TestAbsoluteEpisodeNumber2() { Assert.Equal(12, GetEpisodeNumberFromFile(@"The Simpsons/The Simpsons 12.avi")); } [Fact] public void TestAbsoluteEpisodeNumber3() { Assert.Equal(82, GetEpisodeNumberFromFile(@"The Simpsons/The Simpsons 82.avi")); } [Fact] public void TestAbsoluteEpisodeNumber4() { Assert.Equal(112, GetEpisodeNumberFromFile(@"The Simpsons/The Simpsons 112.avi")); } [Fact] public void TestAbsoluteEpisodeNumber5() { Assert.Equal(2, GetEpisodeNumberFromFile(@"The Simpsons/Foo_ep_02.avi")); } [Fact] public void TestAbsoluteEpisodeNumber6() { Assert.Equal(889, GetEpisodeNumberFromFile(@"The Simpsons/The Simpsons 889.avi")); } [Fact] public void TestAbsoluteEpisodeNumber7() { Assert.Equal(101, GetEpisodeNumberFromFile(@"The Simpsons/The Simpsons 101.avi")); } private int? GetEpisodeNumberFromFile(string path) { var options = new NamingOptions(); var result = new EpisodeResolver(options) .Resolve(path, false, null, null, true); return result.EpisodeNumber; } } }