diff options
Diffstat (limited to 'tests')
3 files changed, 43 insertions, 0 deletions
diff --git a/tests/Jellyfin.Controller.Tests/Entities/BaseItemTests.cs b/tests/Jellyfin.Controller.Tests/Entities/BaseItemTests.cs index c67717e2fa..cb95c9d204 100644 --- a/tests/Jellyfin.Controller.Tests/Entities/BaseItemTests.cs +++ b/tests/Jellyfin.Controller.Tests/Entities/BaseItemTests.cs @@ -91,6 +91,28 @@ public class BaseItemTests Assert.Equal(video.Id.ToString("N", CultureInfo.InvariantCulture), video.PresentationUniqueKey); } + [Theory] + [InlineData(float.NaN, null)] + [InlineData(float.PositiveInfinity, null)] + [InlineData(float.NegativeInfinity, null)] + [InlineData(-3.5f, -3.5f)] + [InlineData(null, null)] + public void RatingsAndGains_KeepOnlyFiniteValues(float? value, float? expected) + { + var item = new Video + { + CommunityRating = value, + CriticRating = value, + LUFS = value, + NormalizationGain = value + }; + + Assert.Equal(expected, item.CommunityRating); + Assert.Equal(expected, item.CriticRating); + Assert.Equal(expected, item.LUFS); + Assert.Equal(expected, item.NormalizationGain); + } + [Fact] public void GetItemByNameFolderName_ShortName_IsKeptAsIs() { diff --git a/tests/Jellyfin.XbmcMetadata.Tests/Parsers/MovieNfoParserTests.cs b/tests/Jellyfin.XbmcMetadata.Tests/Parsers/MovieNfoParserTests.cs index 4142831c31..d884493cea 100644 --- a/tests/Jellyfin.XbmcMetadata.Tests/Parsers/MovieNfoParserTests.cs +++ b/tests/Jellyfin.XbmcMetadata.Tests/Parsers/MovieNfoParserTests.cs @@ -337,5 +337,20 @@ namespace Jellyfin.XbmcMetadata.Tests.Parsers Assert.Equal(7.5f, item.CommunityRating); } + + [Fact] + public void Parse_Ratings_NotFinite_Ignored() + { + var result = new MetadataResult<Video>() + { + Item = new Movie() + }; + + _parser.Fetch(result, "Test Data/Ratings_NotFinite.nfo", CancellationToken.None); + var item = (Movie)result.Item; + + Assert.Null(item.CommunityRating); + Assert.Null(item.CriticRating); + } } } diff --git a/tests/Jellyfin.XbmcMetadata.Tests/Test Data/Ratings_NotFinite.nfo b/tests/Jellyfin.XbmcMetadata.Tests/Test Data/Ratings_NotFinite.nfo new file mode 100644 index 0000000000..3012efb18d --- /dev/null +++ b/tests/Jellyfin.XbmcMetadata.Tests/Test Data/Ratings_NotFinite.nfo @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8"?> +<movie> + <title>Test Movie</title> + <rating>NaN</rating> + <criticrating>Infinity</criticrating> +</movie> |
