aboutsummaryrefslogtreecommitdiff
path: root/tests/Jellyfin.Naming.Tests/TV/EpisodeNumberWithoutSeasonTests.cs
blob: 1da5a30a818b6973c6f3de3b76b30737f1e20e95 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
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);
        }
    }
}