public static void Movie_MixedFolder_Success() { var movie = new Movie() { Path = "/media/movies/Avengers Endgame.mp4", IsInMixedFolder = true }; var paths = MovieNfoSaver.GetMovieSavePaths(new ItemInfo(movie)).ToArray(); Assert.Single(paths); Assert.Contains("/media/movies/Avengers Endgame.nfo", paths); }
public void Movie_DVD_Success() { var movie = new Movie() { Path = "/media/movies/Avengers Endgame", VideoType = VideoType.Dvd }; var path1 = "/media/movies/Avengers Endgame/Avengers Endgame.nfo"; var path2 = "/media/movies/Avengers Endgame/VIDEO_TS/VIDEO_TS.nfo"; // uses ContainingFolderPath which uses Operating system specific paths if (OperatingSystem.IsWindows()) { movie.Path = movie.Path.Replace('/', '\\'); path1 = path1.Replace('/', '\\'); path2 = path2.Replace('/', '\\'); } var paths = MovieNfoSaver.GetMovieSavePaths(new ItemInfo(movie)).ToArray(); Assert.Equal(2, paths.Length); Assert.Contains(path1, paths); Assert.Contains(path2, paths); }
public static void Movie_SeparateFolder_Success() { var movie = new Movie() { Path = "/media/movies/Avengers Endgame/Avengers Endgame.mp4" }; var path1 = "/media/movies/Avengers Endgame/Avengers Endgame.nfo"; var path2 = "/media/movies/Avengers Endgame/movie.nfo"; // uses ContainingFolderPath which uses Operating system specific paths if (MediaBrowser.Common.System.OperatingSystem.Id == OperatingSystemId.Windows) { movie.Path = movie.Path.Replace('/', '\\'); path1 = path1.Replace('/', '\\'); path2 = path2.Replace('/', '\\'); } var paths = MovieNfoSaver.GetMovieSavePaths(new ItemInfo(movie)).ToArray(); Assert.Equal(2, paths.Length); Assert.Contains(path1, paths); Assert.Contains(path2, paths); }
/// <inheritdoc /> protected override FileSystemMetadata?GetXmlFile(ItemInfo info, IDirectoryService directoryService) { return(MovieNfoSaver.GetMovieSavePaths(info) .Select(directoryService.GetFile) .FirstOrDefault(i => i != null)); }