EpisodeNumberWithoutSeasonTests.cs 1.5 KB

1234567891011121314151617181920212223242526272829303132333435
  1. using Emby.Naming.Common;
  2. using Emby.Naming.TV;
  3. using Xunit;
  4. namespace Jellyfin.Naming.Tests.TV
  5. {
  6. public class EpisodeNumberWithoutSeasonTests
  7. {
  8. [Theory]
  9. [InlineData(8, @"The Simpsons/The Simpsons.S25E08.Steal this episode.mp4")]
  10. [InlineData(2, @"The Simpsons/The Simpsons - 02 - Ep Name.avi")]
  11. [InlineData(2, @"The Simpsons/02.avi")]
  12. [InlineData(2, @"The Simpsons/02 - Ep Name.avi")]
  13. [InlineData(2, @"The Simpsons/02-Ep Name.avi")]
  14. [InlineData(2, @"The Simpsons/02.EpName.avi")]
  15. [InlineData(2, @"The Simpsons/The Simpsons - 02.avi")]
  16. [InlineData(2, @"The Simpsons/The Simpsons - 02 Ep Name.avi")]
  17. [InlineData(7, @"GJ Club (2013)/GJ Club - 07.mkv")]
  18. [InlineData(17, @"Case Closed (1996-2007)/Case Closed - 317.mkv")]
  19. // TODO: [InlineData(2, @"The Simpsons/The Simpsons 5 - 02 - Ep Name.avi")]
  20. // TODO: [InlineData(2, @"The Simpsons/The Simpsons 5 - 02 Ep Name.avi")]
  21. // TODO: [InlineData(7, @"Seinfeld/Seinfeld 0807 The Checks.avi")]
  22. // This is not supported anymore after removing the episode number 365+ hack from EpisodePathParser
  23. // TODO: [InlineData(13, @"Case Closed (1996-2007)/Case Closed - 13.mkv")]
  24. public void GetEpisodeNumberFromFileTest(int episodeNumber, string path)
  25. {
  26. var options = new NamingOptions();
  27. var result = new EpisodeResolver(options)
  28. .Resolve(path, false);
  29. Assert.Equal(episodeNumber, result?.EpisodeNumber);
  30. }
  31. }
  32. }