diff --git a/src/NzbDrone.Core.Test/Extras/Metadata/Consumers/Xbmc/FindMetadataFileFixture.cs b/src/NzbDrone.Core.Test/Extras/Metadata/Consumers/Xbmc/FindMetadataFileFixture.cs index f9b5181918..f4f0d8e6c9 100644 --- a/src/NzbDrone.Core.Test/Extras/Metadata/Consumers/Xbmc/FindMetadataFileFixture.cs +++ b/src/NzbDrone.Core.Test/Extras/Metadata/Consumers/Xbmc/FindMetadataFileFixture.cs @@ -61,5 +61,18 @@ public void should_return_null_for_scene_nfo() Mocker.GetMock() .Verify(v => v.IsXbmcNfoFile(It.IsAny()), Times.Once()); } + + [TestCase("theme.mp3", MetadataType.MovieTheme)] + [TestCase("theme.mpa", MetadataType.MovieTheme)] + [TestCase("Theme.x-flac", MetadataType.MovieTheme)] + public void should_return_expected_metadata_type(string fileName, MetadataType metadataType) + { + var path = Path.Combine(_movie.Path, fileName.AsOsAgnostic()); + + var metadataFile = Subject.FindMetadataFile(_movie, path); + + metadataFile.Should().NotBeNull(); + metadataFile.Type.Should().Be(metadataType); + } } } diff --git a/src/NzbDrone.Core/Extras/Metadata/Consumers/Xbmc/XbmcMetadata.cs b/src/NzbDrone.Core/Extras/Metadata/Consumers/Xbmc/XbmcMetadata.cs index 62e39ac0b8..c11b1fdfa4 100644 --- a/src/NzbDrone.Core/Extras/Metadata/Consumers/Xbmc/XbmcMetadata.cs +++ b/src/NzbDrone.Core/Extras/Metadata/Consumers/Xbmc/XbmcMetadata.cs @@ -83,6 +83,12 @@ public override MetadataFile FindMetadataFile(Movie movie, string path) RelativePath = movie.Path.GetRelativePath(path) }; + if (Path.GetFileNameWithoutExtension(filename).Equals("theme", StringComparison.OrdinalIgnoreCase)) + { + metadata.Type = MetadataType.MovieTheme; + return metadata; + } + if (MovieImagesRegex.IsMatch(filename)) { metadata.Type = MetadataType.MovieImage; diff --git a/src/NzbDrone.Core/Extras/Metadata/MetadataType.cs b/src/NzbDrone.Core/Extras/Metadata/MetadataType.cs index bd20a8f9d3..4f6355596f 100644 --- a/src/NzbDrone.Core/Extras/Metadata/MetadataType.cs +++ b/src/NzbDrone.Core/Extras/Metadata/MetadataType.cs @@ -4,6 +4,7 @@ public enum MetadataType { Unknown = 0, MovieMetadata = 1, - MovieImage = 2 + MovieImage = 2, + MovieTheme = 3 } }