Example #1
0
        public void TestExpandedFormat3D()
        {
            // These were introduced for Media Browser 3 
            // Kodi conventions are preferred but these still need to be supported
            var options = new ExtendedNamingOptions();

            Test("Super movie.3d.mp4", false, null, options);
            Test("Super movie.3d.hsbs.mp4", true, "hsbs", options);
            Test("Super movie.3d.sbs.mp4", true, "sbs", options);
            Test("Super movie.3d.htab.mp4", true, "htab", options);
            Test("Super movie.3d.tab.mp4", true, "tab", options);

            Test("Super movie.hsbs.mp4", true, "hsbs", options);
            Test("Super movie.sbs.mp4", true, "sbs", options);
            Test("Super movie.htab.mp4", true, "htab", options);
            Test("Super movie.tab.mp4", true, "tab", options);
            Test("Super movie.sbs3d.mp4", true, "sbs3d", options);
            
            Test("Super movie [3d].mp4", false, null, options);
            Test("Super movie [hsbs].mp4", true, "hsbs", options);
            Test("Super movie [fsbs].mp4", true, "fsbs", options);
            Test("Super movie [ftab].mp4", true, "ftab", options);
            Test("Super movie [htab].mp4", true, "htab", options);
            Test("Super movie [sbs3d].mp4", true, "sbs3d", options);
        }
        private int? GetEpisodeNumberFromFile(string path)
        {
            var options = new ExtendedNamingOptions();

            var result = new EpisodeResolver(options, new NullLogger(), new RegexProvider())
                .Resolve(path, false);

            return result.EpisodeNumber;
        }
        private int? GetSeasonNumberFromPath(string path)
        {
            var options = new ExtendedNamingOptions();

            var result = new SeasonPathParser(options, new RegexProvider())
                .Parse(path, true, true);

            return result.SeasonNumber;
        }
        private int? GetEndingEpisodeNumberFromFile(string path)
        {
            var options = new ExtendedNamingOptions();

            var result = new EpisodePathParser(options, new RegexProvider())
                .Parse(path, false, true);

            return result.EndingEpsiodeNumber;
        }
        private void Test(string path, string seriesName, int? seasonNumber, int? episodeNumber)
        {
            var options = new ExtendedNamingOptions();

            var result = new EpisodeResolver(options, new NullLogger(), new RegexProvider())
                .Resolve(path, false);

            Assert.AreEqual(seasonNumber, result.SeasonNumber);
            Assert.AreEqual(episodeNumber, result.EpisodeNumber);
            //Assert.AreEqual(seriesName, result.SeriesName, true, CultureInfo.InvariantCulture);
        }
Example #6
0
        public void TestExpandedExtras()
        {
            var videoOptions = new ExtendedNamingOptions();

            Test("trailer.mp4", "trailer", videoOptions);
            Test("trailer.mp3", null, videoOptions);
            Test("300-trailer.mp4", "trailer", videoOptions);

            Test("theme.mp3", "themesong", videoOptions);
            Test("theme.mkv", null, videoOptions);

            Test("300-scene.mp4", "scene", videoOptions);
            Test("300-scene2.mp4", "scene", videoOptions);
            Test("300-clip.mp4", "clip", videoOptions);

            Test("300-deleted.mp4", "deletedscene", videoOptions);
            Test("300-deletedscene.mp4", "deletedscene", videoOptions);
            Test("300-interview.mp4", "interview", videoOptions);
            Test("300-behindthescenes.mp4", "behindthescenes", videoOptions);
        }
 private VideoListResolver GetResolver()
 {
     var options = new ExtendedNamingOptions();
     return new VideoListResolver(options, new NullLogger());
 }
Example #8
0
        public void TestSample()
        {
            var videoOptions = new ExtendedNamingOptions();

            Test("300-sample.mp4", "sample", videoOptions);
        }
Example #9
0
        protected VideoResolver GetParser()
        {
            var options = new ExtendedNamingOptions();

            return new VideoResolver(options, new NullLogger());
        }