aboutsummaryrefslogtreecommitdiff
path: root/tests/Jellyfin.XbmcMetadata.Tests/Parsers
diff options
context:
space:
mode:
Diffstat (limited to 'tests/Jellyfin.XbmcMetadata.Tests/Parsers')
-rw-r--r--tests/Jellyfin.XbmcMetadata.Tests/Parsers/EpisodeNfoProviderTests.cs24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/Jellyfin.XbmcMetadata.Tests/Parsers/EpisodeNfoProviderTests.cs b/tests/Jellyfin.XbmcMetadata.Tests/Parsers/EpisodeNfoProviderTests.cs
index c0d06116b5..3721d1f7ac 100644
--- a/tests/Jellyfin.XbmcMetadata.Tests/Parsers/EpisodeNfoProviderTests.cs
+++ b/tests/Jellyfin.XbmcMetadata.Tests/Parsers/EpisodeNfoProviderTests.cs
@@ -124,6 +124,30 @@ namespace Jellyfin.XbmcMetadata.Tests.Parsers
}
[Fact]
+ public void Fetch_Valid_MultiEpisode_With_Missing_Tags_Success()
+ {
+ var result = new MetadataResult<Episode>()
+ {
+ Item = new Episode()
+ };
+
+ _parser.Fetch(result, "Test Data/Stargate Atlantis S01E01-E04.nfo", CancellationToken.None);
+
+ var item = result.Item;
+ // <title> provided for episode 1, 3 and 4
+ Assert.Equal("Rising / Hide and Seek / Thirty-Eight Minutes", item.Name);
+ // <originaltitle> provided for all episodes
+ Assert.Equal("Rising (1) / Rising (2) / Hide and Seek / Thirty-Eight Minutes", item.OriginalTitle);
+ Assert.Equal(1, item.IndexNumber);
+ Assert.Equal(4, item.IndexNumberEnd);
+ Assert.Equal(1, item.ParentIndexNumber);
+ // <plot> only provided for episode 1
+ Assert.Equal("A new Stargate team embarks on a dangerous mission to a distant galaxy, where they discover a mythical lost city -- and a deadly new enemy.", item.Overview);
+ Assert.Equal(new DateTime(2004, 7, 16), item.PremiereDate);
+ Assert.Equal(2004, item.ProductionYear);
+ }
+
+ [Fact]
public void Parse_GivenFileWithThumbWithoutAspect_Success()
{
var result = new MetadataResult<Episode>