From ebbd61a88c1828e5bc2f4c2c111a550e9602a46c Mon Sep 17 00:00:00 2001 From: HaraldNordgren Date: Mon, 5 Oct 2026 19:18:55 -0400 Subject: Backport pull request #18255 from jellyfin/release-12.z Recognize numbered sample and trailer files as extras Original-merge: b69a53578821e4e8136892615d5d62b7095e8b21 Merged-by: crobibero Backported-by: Cody Robibero --- .../Library/MovieResolverTests.cs | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'tests/Jellyfin.Server.Implementations.Tests/Library') diff --git a/tests/Jellyfin.Server.Implementations.Tests/Library/MovieResolverTests.cs b/tests/Jellyfin.Server.Implementations.Tests/Library/MovieResolverTests.cs index 3aac3cdc43..743ac6055b 100644 --- a/tests/Jellyfin.Server.Implementations.Tests/Library/MovieResolverTests.cs +++ b/tests/Jellyfin.Server.Implementations.Tests/Library/MovieResolverTests.cs @@ -91,6 +91,27 @@ public class MovieResolverTests Assert.Single(((Video)result.Items[0]).LocalAlternateVersions); } + [Fact] + public void ResolveMultiple_GivenNumberedSampleFiles_IgnoresSamples() + { + var movieResolver = new MovieResolver(Mock.Of(), Mock.Of>(), _namingOptions, Mock.Of(), _videoListResolver); + + var parent = new Folder { Path = "/movies/La Chimera (2023)" }; + var files = new List + { + new() { FullName = "/movies/La Chimera (2023)/La Chimera (2023).mkv", Name = "La Chimera (2023).mkv", IsDirectory = false }, + new() { FullName = "/movies/La Chimera (2023)/Sample1.mkv", Name = "Sample1.mkv", IsDirectory = false }, + new() { FullName = "/movies/La Chimera (2023)/Sample2.mkv", Name = "Sample2.mkv", IsDirectory = false } + }; + + var result = movieResolver.ResolveMultiple(parent, files, CollectionType.movies, Mock.Of()); + + Assert.NotNull(result); + var movie = Assert.Single(result.Items); + Assert.IsType(movie); + Assert.Equal(files[0].FullName, movie.Path); + } + [Fact] public void AllExtrasTypesFolderNames_ContainsSampleSingularAndPlural() { -- cgit v1.2.3