diff --git a/Emby.Naming/obj/project.nuget.cache b/Emby.Naming/obj/project.nuget.cache index 1ef4bf68..196a06b0 100644 --- a/Emby.Naming/obj/project.nuget.cache +++ b/Emby.Naming/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "qWdnDCktJdY=", + "dgSpecHash": "M3eEjXrprD8=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\Emby.Naming\\Emby.Naming.csproj", "expectedPackageFiles": [ diff --git a/Emby.Photos/obj/project.nuget.cache b/Emby.Photos/obj/project.nuget.cache index db61bb8d..71b5a2a2 100644 --- a/Emby.Photos/obj/project.nuget.cache +++ b/Emby.Photos/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "DaMoU2oavX0=", + "dgSpecHash": "leFWYb0Dcsk=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\Emby.Photos\\Emby.Photos.csproj", "expectedPackageFiles": [ diff --git a/Emby.Server.Implementations/obj/project.nuget.cache b/Emby.Server.Implementations/obj/project.nuget.cache index 769321e3..c6a9b337 100644 --- a/Emby.Server.Implementations/obj/project.nuget.cache +++ b/Emby.Server.Implementations/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "CU3WcVn0qXE=", + "dgSpecHash": "ZVA5ePVHqjg=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\Emby.Server.Implementations\\Emby.Server.Implementations.csproj", "expectedPackageFiles": [ diff --git a/Jellyfin.Api/obj/project.nuget.cache b/Jellyfin.Api/obj/project.nuget.cache index 3b4b499f..fccf3de6 100644 --- a/Jellyfin.Api/obj/project.nuget.cache +++ b/Jellyfin.Api/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "sEpjYe2J48k=", + "dgSpecHash": "4CpeL+8YFHs=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\Jellyfin.Api\\Jellyfin.Api.csproj", "expectedPackageFiles": [ diff --git a/Jellyfin.Data/obj/project.nuget.cache b/Jellyfin.Data/obj/project.nuget.cache index a35ad6a2..0713dade 100644 --- a/Jellyfin.Data/obj/project.nuget.cache +++ b/Jellyfin.Data/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "V+/rEcS1v1k=", + "dgSpecHash": "R6LANlB4kiE=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\Jellyfin.Data\\Jellyfin.Data.csproj", "expectedPackageFiles": [ diff --git a/Jellyfin.Server.Implementations/obj/project.nuget.cache b/Jellyfin.Server.Implementations/obj/project.nuget.cache index db5a88c8..4131b5d7 100644 --- a/Jellyfin.Server.Implementations/obj/project.nuget.cache +++ b/Jellyfin.Server.Implementations/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "2uqnqkg9VpI=", + "dgSpecHash": "8rGyZK2RqJs=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\Jellyfin.Server.Implementations\\Jellyfin.Server.Implementations.csproj", "expectedPackageFiles": [ diff --git a/Jellyfin.Server/obj/project.nuget.cache b/Jellyfin.Server/obj/project.nuget.cache index 19436215..09ef9e03 100644 --- a/Jellyfin.Server/obj/project.nuget.cache +++ b/Jellyfin.Server/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "uvfyRwbCsEk=", + "dgSpecHash": "WNAhlXOd1t0=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\Jellyfin.Server\\Jellyfin.Server.csproj", "expectedPackageFiles": [ diff --git a/MediaBrowser.Common/obj/project.nuget.cache b/MediaBrowser.Common/obj/project.nuget.cache index a1d2a890..28073138 100644 --- a/MediaBrowser.Common/obj/project.nuget.cache +++ b/MediaBrowser.Common/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "JKxQaRKDB/g=", + "dgSpecHash": "TOGQe6JoQmo=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\MediaBrowser.Common\\MediaBrowser.Common.csproj", "expectedPackageFiles": [ diff --git a/MediaBrowser.Controller/obj/project.nuget.cache b/MediaBrowser.Controller/obj/project.nuget.cache index a8132c41..80d5e712 100644 --- a/MediaBrowser.Controller/obj/project.nuget.cache +++ b/MediaBrowser.Controller/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "No+LvUzpMog=", + "dgSpecHash": "oIB4cupu3LM=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\MediaBrowser.Controller\\MediaBrowser.Controller.csproj", "expectedPackageFiles": [ diff --git a/MediaBrowser.LocalMetadata/obj/project.nuget.cache b/MediaBrowser.LocalMetadata/obj/project.nuget.cache index 090e8528..44ace0a6 100644 --- a/MediaBrowser.LocalMetadata/obj/project.nuget.cache +++ b/MediaBrowser.LocalMetadata/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "MUG8U7vEPzE=", + "dgSpecHash": "GeC+ga1Uo2A=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\MediaBrowser.LocalMetadata\\MediaBrowser.LocalMetadata.csproj", "expectedPackageFiles": [ diff --git a/MediaBrowser.MediaEncoding/obj/project.nuget.cache b/MediaBrowser.MediaEncoding/obj/project.nuget.cache index 7d158cd5..68198fee 100644 --- a/MediaBrowser.MediaEncoding/obj/project.nuget.cache +++ b/MediaBrowser.MediaEncoding/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "GTQOs1iNxFU=", + "dgSpecHash": "aQOA3jWvZ/0=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\MediaBrowser.MediaEncoding\\MediaBrowser.MediaEncoding.csproj", "expectedPackageFiles": [ diff --git a/MediaBrowser.Model/obj/project.nuget.cache b/MediaBrowser.Model/obj/project.nuget.cache index 1ad0211a..1b1cceb6 100644 --- a/MediaBrowser.Model/obj/project.nuget.cache +++ b/MediaBrowser.Model/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "xzRZKMjouOE=", + "dgSpecHash": "3yWrXzucBNg=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\MediaBrowser.Model\\MediaBrowser.Model.csproj", "expectedPackageFiles": [ diff --git a/MediaBrowser.Providers/obj/project.nuget.cache b/MediaBrowser.Providers/obj/project.nuget.cache index b799ccd6..77a580a9 100644 --- a/MediaBrowser.Providers/obj/project.nuget.cache +++ b/MediaBrowser.Providers/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "O+ANw3v7loA=", + "dgSpecHash": "ncCtXCalGV4=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\MediaBrowser.Providers\\MediaBrowser.Providers.csproj", "expectedPackageFiles": [ diff --git a/MediaBrowser.XbmcMetadata/obj/project.nuget.cache b/MediaBrowser.XbmcMetadata/obj/project.nuget.cache index 832e5504..5452631b 100644 --- a/MediaBrowser.XbmcMetadata/obj/project.nuget.cache +++ b/MediaBrowser.XbmcMetadata/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "rQazb3gGG1E=", + "dgSpecHash": "P3fDKwImSWA=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\MediaBrowser.XbmcMetadata\\MediaBrowser.XbmcMetadata.csproj", "expectedPackageFiles": [ diff --git a/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll b/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll index 764abff4..5c6c0b5b 100644 Binary files a/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll and b/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll differ diff --git a/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb b/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb index 499172b4..dde67d47 100644 Binary files a/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb and b/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb differ diff --git a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfo.cs b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfo.cs index b497f10e..92b4a152 100644 --- a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfo.cs +++ b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfo.cs @@ -13,7 +13,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("Jellyfin.CodeAnalysis")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+8421e3ad5cdcbeb790e69d4367c55181a2af7b16")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+2dc0129a11d3a125fd227b7e4a86196bf919a4c8")] [assembly: System.Reflection.AssemblyProductAttribute("Jellyfin.CodeAnalysis")] [assembly: System.Reflection.AssemblyTitleAttribute("Jellyfin.CodeAnalysis")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfoInputs.cache b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfoInputs.cache index bd6b4e44..c56a746a 100644 --- a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfoInputs.cache +++ b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfoInputs.cache @@ -1 +1 @@ -8d7e69f115ae75e4f7c84eb253600f36f2309decc7a35f49dc405e154ddd5a4a +3bf9933fb90a6f3d3cf98eeedc63c2ff29157a52a9ff0ab543c63872fa45561b diff --git a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll index 764abff4..5c6c0b5b 100644 Binary files a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll and b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll differ diff --git a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb index 499172b4..dde67d47 100644 Binary files a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb and b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb differ diff --git a/src/Jellyfin.CodeAnalysis/obj/project.nuget.cache b/src/Jellyfin.CodeAnalysis/obj/project.nuget.cache index 7cf6c8b2..20e77e07 100644 --- a/src/Jellyfin.CodeAnalysis/obj/project.nuget.cache +++ b/src/Jellyfin.CodeAnalysis/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "OZOEm6CP/lY=", + "dgSpecHash": "Y7Khl1IIiuQ=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.CodeAnalysis\\Jellyfin.CodeAnalysis.csproj", "expectedPackageFiles": [ diff --git a/src/Jellyfin.Database/Jellyfin.Database.Implementations/obj/project.nuget.cache b/src/Jellyfin.Database/Jellyfin.Database.Implementations/obj/project.nuget.cache index f5ae8bfc..b768e9e8 100644 --- a/src/Jellyfin.Database/Jellyfin.Database.Implementations/obj/project.nuget.cache +++ b/src/Jellyfin.Database/Jellyfin.Database.Implementations/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "wWhRHr+gc4I=", + "dgSpecHash": "o3KwAigR2H0=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.Database\\Jellyfin.Database.Implementations\\Jellyfin.Database.Implementations.csproj", "expectedPackageFiles": [ diff --git a/src/Jellyfin.Database/Jellyfin.Database.Providers.Sqlite/obj/project.nuget.cache b/src/Jellyfin.Database/Jellyfin.Database.Providers.Sqlite/obj/project.nuget.cache index c4a00c0e..5b2c5edb 100644 --- a/src/Jellyfin.Database/Jellyfin.Database.Providers.Sqlite/obj/project.nuget.cache +++ b/src/Jellyfin.Database/Jellyfin.Database.Providers.Sqlite/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "7p0VjWNAkOM=", + "dgSpecHash": "vHGJFlfns3Y=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.Database\\Jellyfin.Database.Providers.Sqlite\\Jellyfin.Database.Providers.Sqlite.csproj", "expectedPackageFiles": [ diff --git a/src/Jellyfin.Drawing.Skia/obj/project.nuget.cache b/src/Jellyfin.Drawing.Skia/obj/project.nuget.cache index ef341c73..a88faec5 100644 --- a/src/Jellyfin.Drawing.Skia/obj/project.nuget.cache +++ b/src/Jellyfin.Drawing.Skia/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "HMW40QmobtY=", + "dgSpecHash": "Fpoz11tqLl0=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.Drawing.Skia\\Jellyfin.Drawing.Skia.csproj", "expectedPackageFiles": [ diff --git a/src/Jellyfin.Drawing/obj/project.nuget.cache b/src/Jellyfin.Drawing/obj/project.nuget.cache index 63719595..522e6462 100644 --- a/src/Jellyfin.Drawing/obj/project.nuget.cache +++ b/src/Jellyfin.Drawing/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "kfdiYX/qdMo=", + "dgSpecHash": "Vcdm+k15Tts=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.Drawing\\Jellyfin.Drawing.csproj", "expectedPackageFiles": [ diff --git a/src/Jellyfin.Extensions/obj/project.nuget.cache b/src/Jellyfin.Extensions/obj/project.nuget.cache index af2e2577..77731123 100644 --- a/src/Jellyfin.Extensions/obj/project.nuget.cache +++ b/src/Jellyfin.Extensions/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "jFXUtLlrjTY=", + "dgSpecHash": "bmcoRiE2ZBQ=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.Extensions\\Jellyfin.Extensions.csproj", "expectedPackageFiles": [ diff --git a/src/Jellyfin.LiveTv/obj/project.nuget.cache b/src/Jellyfin.LiveTv/obj/project.nuget.cache index 96bf1989..ab1ebe5a 100644 --- a/src/Jellyfin.LiveTv/obj/project.nuget.cache +++ b/src/Jellyfin.LiveTv/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "Wq1Uahcka68=", + "dgSpecHash": "9I/zz4fLYTY=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.LiveTv\\Jellyfin.LiveTv.csproj", "expectedPackageFiles": [ diff --git a/src/Jellyfin.MediaEncoding.Hls/obj/project.nuget.cache b/src/Jellyfin.MediaEncoding.Hls/obj/project.nuget.cache index 86ecdc7f..2fde37c8 100644 --- a/src/Jellyfin.MediaEncoding.Hls/obj/project.nuget.cache +++ b/src/Jellyfin.MediaEncoding.Hls/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "2kUNnZdwGG8=", + "dgSpecHash": "svddOISkg9E=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.MediaEncoding.Hls\\Jellyfin.MediaEncoding.Hls.csproj", "expectedPackageFiles": [ diff --git a/src/Jellyfin.MediaEncoding.Keyframes/FfProbe/FfProbeKeyframeExtractor.cs b/src/Jellyfin.MediaEncoding.Keyframes/FfProbe/FfProbeKeyframeExtractor.cs index b75adc77..e9587fb7 100644 --- a/src/Jellyfin.MediaEncoding.Keyframes/FfProbe/FfProbeKeyframeExtractor.cs +++ b/src/Jellyfin.MediaEncoding.Keyframes/FfProbe/FfProbeKeyframeExtractor.cs @@ -76,6 +76,11 @@ public static class FfProbeKeyframeExtractor } } + /// + /// Parses the keyframe data from the FFProbe stream. + /// + /// The stream reader containing FFProbe output. + /// The parsed keyframe data. internal static KeyframeData ParseStream(StreamReader reader) { var keyframes = new List(); diff --git a/src/Jellyfin.MediaEncoding.Keyframes/Matroska/MatroskaConstants.cs b/src/Jellyfin.MediaEncoding.Keyframes/Matroska/MatroskaConstants.cs index 84a6df41..358fe2f3 100644 --- a/src/Jellyfin.MediaEncoding.Keyframes/Matroska/MatroskaConstants.cs +++ b/src/Jellyfin.MediaEncoding.Keyframes/Matroska/MatroskaConstants.cs @@ -9,26 +9,88 @@ namespace Jellyfin.MediaEncoding.Keyframes.Matroska; /// public static class MatroskaConstants { + /// + /// The Matroska segment container identifier. + /// internal const ulong SegmentContainer = 0x18538067; + /// + /// The Matroska seek head identifier. + /// internal const ulong SeekHead = 0x114D9B74; + + /// + /// The Matroska seek identifier. + /// internal const ulong Seek = 0x4DBB; + /// + /// The Matroska info identifier. + /// internal const ulong Info = 0x1549A966; + + /// + /// The Matroska timestamp scale identifier. + /// internal const ulong TimestampScale = 0x2AD7B1; + + /// + /// The Matroska duration identifier. + /// internal const ulong Duration = 0x4489; + /// + /// The Matroska tracks identifier. + /// internal const ulong Tracks = 0x1654AE6B; + + /// + /// The Matroska track entry identifier. + /// internal const ulong TrackEntry = 0xAE; + + /// + /// The Matroska track number identifier. + /// internal const ulong TrackNumber = 0xD7; + + /// + /// The Matroska track type identifier. + /// internal const ulong TrackType = 0x83; + /// + /// The Matroska video track type value. + /// internal const ulong TrackTypeVideo = 0x1; + + /// + /// The Matroska subtitle track type value. + /// internal const ulong TrackTypeSubtitle = 0x11; + /// + /// The Matroska cues identifier. + /// internal const ulong Cues = 0x1C53BB6B; + + /// + /// The Matroska cue time identifier. + /// internal const ulong CueTime = 0xB3; + + /// + /// The Matroska cue point identifier. + /// internal const ulong CuePoint = 0xBB; + + /// + /// The Matroska cue track positions identifier. + /// internal const ulong CueTrackPositions = 0xB7; + + /// + /// The Matroska cue point track number identifier. + /// internal const ulong CuePointTrackNumber = 0xF7; } diff --git a/src/Jellyfin.MediaEncoding.Keyframes/obj/project.nuget.cache b/src/Jellyfin.MediaEncoding.Keyframes/obj/project.nuget.cache index f6c37485..e5613e27 100644 --- a/src/Jellyfin.MediaEncoding.Keyframes/obj/project.nuget.cache +++ b/src/Jellyfin.MediaEncoding.Keyframes/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "mTVFQQSIGo8=", + "dgSpecHash": "fWFpFkhudto=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.MediaEncoding.Keyframes\\Jellyfin.MediaEncoding.Keyframes.csproj", "expectedPackageFiles": [ diff --git a/src/Jellyfin.Networking/obj/project.nuget.cache b/src/Jellyfin.Networking/obj/project.nuget.cache index bde2e2ce..c0129512 100644 --- a/src/Jellyfin.Networking/obj/project.nuget.cache +++ b/src/Jellyfin.Networking/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "o8ef9/49oOU=", + "dgSpecHash": "nYThmTXT+N4=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.Networking\\Jellyfin.Networking.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Api.Tests/obj/project.nuget.cache b/tests/Jellyfin.Api.Tests/obj/project.nuget.cache index 5cc91304..5c5091f3 100644 --- a/tests/Jellyfin.Api.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Api.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "I6cvgut0KE0=", + "dgSpecHash": "jz3od75Vj9o=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Api.Tests\\Jellyfin.Api.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Common.Tests/obj/project.nuget.cache b/tests/Jellyfin.Common.Tests/obj/project.nuget.cache index 1562062a..f4d4c8d5 100644 --- a/tests/Jellyfin.Common.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Common.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "rSTC0c4hKeg=", + "dgSpecHash": "D3+az8yIj/g=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Common.Tests\\Jellyfin.Common.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Controller.Tests/obj/project.nuget.cache b/tests/Jellyfin.Controller.Tests/obj/project.nuget.cache index 6ab22ad8..53b06e0f 100644 --- a/tests/Jellyfin.Controller.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Controller.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "rCzbZx73oRU=", + "dgSpecHash": "GDKjP2XUxGM=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Controller.Tests\\Jellyfin.Controller.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Extensions.Tests/CopyToExtensionsTests.cs b/tests/Jellyfin.Extensions.Tests/CopyToExtensionsTests.cs index 28388a5d..ba098f84 100644 --- a/tests/Jellyfin.Extensions.Tests/CopyToExtensionsTests.cs +++ b/tests/Jellyfin.Extensions.Tests/CopyToExtensionsTests.cs @@ -8,19 +8,33 @@ namespace Jellyfin.Extensions.Tests using System.Collections.Generic; using Xunit; + /// + /// Tests for CopyTo extension methods. + /// public static class CopyToExtensionsTests { + /// + /// Gets test data for valid CopyTo operations. + /// + /// The test data. public static TheoryData, IList, int, IList> CopyTo_Valid_Correct_TestData() { - var data = new TheoryData, IList, int, IList> + TheoryData, IList, int, IList> data = new TheoryData, IList, int, IList> { { new[] { 0, 1, 2, 3, 4, 5 }, new[] { 0, 0, 0, 0, 0, 0 }, 0, new[] { 0, 1, 2, 3, 4, 5 } }, - { new[] { 0, 1, 2 }, new[] { 5, 4, 3, 2, 1, 0 }, 2, new[] { 5, 4, 0, 1, 2, 0 } } + { new[] { 0, 1, 2 }, new[] { 5, 4, 3, 2, 1, 0 }, 2, new[] { 5, 4, 0, 1, 2, 0 } }, }; return data; } + /// + /// Tests that CopyTo correctly copies elements. + /// + /// The source list. + /// The destination list. + /// The starting index. + /// The expected result. [Theory] [MemberData(nameof(CopyTo_Valid_Correct_TestData))] public static void CopyTo_Valid_Correct(IReadOnlyList source, IList destination, int index, IList expected) @@ -29,20 +43,30 @@ namespace Jellyfin.Extensions.Tests Assert.Equal(expected, destination); } + /// + /// Gets test data for invalid CopyTo operations that should throw. + /// + /// The test data. public static TheoryData, IList, int> CopyTo_Invalid_ThrowsArgumentOutOfRangeException_TestData() { - var data = new TheoryData, IList, int> + TheoryData, IList, int> data = new TheoryData, IList, int> { { new[] { 0, 1, 2, 3, 4, 5 }, new[] { 0, 0, 0, 0, 0, 0 }, -1 }, { new[] { 0, 1, 2 }, new[] { 5, 4, 3, 2, 1, 0 }, 6 }, { new[] { 0, 1, 2 }, Array.Empty(), 0 }, { new[] { 0, 1, 2, 3, 4, 5 }, new[] { 0 }, 0 }, - { new[] { 0, 1, 2, 3, 4, 5 }, new[] { 0, 0, 0, 0, 0, 0 }, 1 } + { new[] { 0, 1, 2, 3, 4, 5 }, new[] { 0, 0, 0, 0, 0, 0 }, 1 }, }; return data; } + /// + /// Tests that CopyTo throws ArgumentOutOfRangeException for invalid inputs. + /// + /// The source list. + /// The destination list. + /// The starting index. [Theory] [MemberData(nameof(CopyTo_Invalid_ThrowsArgumentOutOfRangeException_TestData))] public static void CopyTo_Invalid_ThrowsArgumentOutOfRangeException(IReadOnlyList source, IList destination, int index) diff --git a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonBoolNumberTests.cs b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonBoolNumberTests.cs index ff39d866..96520b28 100644 --- a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonBoolNumberTests.cs +++ b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonBoolNumberTests.cs @@ -11,16 +11,24 @@ namespace Jellyfin.Extensions.Tests.Json.Converters using Jellyfin.Extensions.Json.Converters; using Xunit; + /// + /// Tests for the JsonBoolNumberConverter. + /// public class JsonBoolNumberTests { - private readonly JsonSerializerOptions _jsonOptions = new JsonSerializerOptions() + private readonly JsonSerializerOptions _jsonOptions = new() { Converters = { - new JsonBoolNumberConverter() - } + new JsonBoolNumberConverter(), + }, }; + /// + /// Tests deserialization of numbers to boolean. + /// + /// The input string. + /// The expected output. [Theory] [InlineData("1", true)] [InlineData("0", false)] @@ -29,21 +37,31 @@ namespace Jellyfin.Extensions.Tests.Json.Converters [InlineData("false", false)] public void Deserialize_Number_Valid_Success(string input, bool? output) { - var value = JsonSerializer.Deserialize(input, _jsonOptions); + bool value = JsonSerializer.Deserialize(input, this._jsonOptions); Assert.Equal(value, output); } + /// + /// Tests serialization of boolean values. + /// + /// The input boolean. + /// The expected output. [Theory] [InlineData(true, "true")] [InlineData(false, "false")] public void Serialize_Bool_Success(bool input, string output) { - var value = JsonSerializer.Serialize(input, _jsonOptions); + string value = JsonSerializer.Serialize(input, this._jsonOptions); Assert.Equal(value, output); } + /// + /// Property test that non-zero integers deserialize to true. + /// + /// The input non-zero integer. + /// A property test result. [Property] public Property Deserialize_NonZeroInt_True(NonZeroInt input) - => JsonSerializer.Deserialize(input.ToString(), _jsonOptions).ToProperty(); + => JsonSerializer.Deserialize(input.ToString(), this._jsonOptions).ToProperty(); } } diff --git a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonBoolStringTests.cs b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonBoolStringTests.cs index 918db3a1..94dff8e8 100644 --- a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonBoolStringTests.cs +++ b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonBoolStringTests.cs @@ -14,8 +14,8 @@ namespace Jellyfin.Extensions.Tests.Json.Converters { Converters = { - new JsonBoolStringConverter() - } + new JsonBoolStringConverter(), + }, }; [Theory] @@ -23,7 +23,7 @@ namespace Jellyfin.Extensions.Tests.Json.Converters [InlineData(@"{ ""Value"": ""false"" }", false)] public void Deserialize_String_Valid_Success(string input, bool output) { - var s = JsonSerializer.Deserialize(input, _jsonOptions); + TestStruct s = JsonSerializer.Deserialize(input, _jsonOptions); Assert.Equal(s.Value, output); } @@ -32,7 +32,7 @@ namespace Jellyfin.Extensions.Tests.Json.Converters [InlineData(false, "false")] public void Serialize_Bool_Success(bool input, string output) { - var value = JsonSerializer.Serialize(input, _jsonOptions); + string value = JsonSerializer.Serialize(input, _jsonOptions); Assert.Equal(value, output); } diff --git a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonCommaDelimitedCollectionTests.cs b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonCommaDelimitedCollectionTests.cs index 4b2b2e7d..72e6c7d8 100644 --- a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonCommaDelimitedCollectionTests.cs +++ b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonCommaDelimitedCollectionTests.cs @@ -20,35 +20,37 @@ namespace Jellyfin.Extensions.Tests.Json.Converters { Converters = { - new JsonStringEnumConverter() - } + new JsonStringEnumConverter(), + }, }; [Fact] public void Deserialize_String_Null_Success() { - var value = JsonSerializer.Deserialize>(@"{ ""Value"": null }", _jsonOptions); + GenericBodyArrayModel>(@"{ ""Value"": null }", _jsonOptions); Assert.Null(value?.Value); } [Fact] public void Deserialize_Empty_Success() { - var desiredValue = new GenericBodyArrayModel + GenericBodyArrayModel + { desiredValue = new GenericBodyArrayModel { - Value = Array.Empty() + Value = Array.Empty(), }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": """" }", _jsonOptions); + GenericBodyArrayModel>(@"{ ""Value"": """" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_EmptyList_Success() { - var desiredValue = new GenericBodyListModel + GenericBodyListModel + { desiredValue = new GenericBodyListModel { - Value = [] + Value = [], }; Assert.Throws(() => JsonSerializer.Deserialize>(@"{ ""Value"": """" }", _jsonOptions)); @@ -57,33 +59,36 @@ namespace Jellyfin.Extensions.Tests.Json.Converters [Fact] public void Deserialize_EmptyIReadOnlyList_Success() { - var desiredValue = new GenericBodyIReadOnlyListModel + GenericBodyIReadOnlyListModel + { desiredValue = new GenericBodyIReadOnlyListModel { - Value = [] + Value = [], }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": """" }", _jsonOptions); + GenericBodyIReadOnlyListModel>(@"{ ""Value"": """" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_String_Valid_Success() { - var desiredValue = new GenericBodyArrayModel + GenericBodyArrayModel + { desiredValue = new GenericBodyArrayModel { - Value = ["a", "b", "c"] + Value = ["a", "b", "c"], }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": ""a,b,c"" }", _jsonOptions); + GenericBodyArrayModel>(@"{ ""Value"": ""a,b,c"" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_StringList_Valid_Success() { - var desiredValue = new GenericBodyListModel + GenericBodyListModel + { desiredValue = new GenericBodyListModel { - Value = ["a", "b", "c"] + Value = ["a", "b", "c"], }; Assert.Throws(() => JsonSerializer.Deserialize>(@"{ ""Value"": ""a,b,c"" }", _jsonOptions)); @@ -92,93 +97,101 @@ namespace Jellyfin.Extensions.Tests.Json.Converters [Fact] public void Deserialize_String_Space_Valid_Success() { - var desiredValue = new GenericBodyArrayModel + GenericBodyArrayModel + { desiredValue = new GenericBodyArrayModel { - Value = ["a", "b", "c"] + Value = ["a", "b", "c"], }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": ""a, b, c"" }", _jsonOptions); + GenericBodyArrayModel>(@"{ ""Value"": ""a, b, c"" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_GenericCommandType_Valid_Success() { - var desiredValue = new GenericBodyArrayModel + GenericBodyArrayModel + { desiredValue = new GenericBodyArrayModel { - Value = [GeneralCommandType.MoveUp, GeneralCommandType.MoveDown] + Value = [GeneralCommandType.MoveUp, GeneralCommandType.MoveDown], }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": ""MoveUp,MoveDown"" }", _jsonOptions); + GenericBodyArrayModel>(@"{ ""Value"": ""MoveUp,MoveDown"" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_GenericCommandType_EmptyEntry_Success() { - var desiredValue = new GenericBodyArrayModel + GenericBodyArrayModel + { desiredValue = new GenericBodyArrayModel { - Value = [GeneralCommandType.MoveUp, GeneralCommandType.MoveDown] + Value = [GeneralCommandType.MoveUp, GeneralCommandType.MoveDown], }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": ""MoveUp,,MoveDown"" }", _jsonOptions); + GenericBodyArrayModel>(@"{ ""Value"": ""MoveUp,,MoveDown"" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_GenericCommandType_Invalid_Success() { - var desiredValue = new GenericBodyArrayModel + GenericBodyArrayModel + { desiredValue = new GenericBodyArrayModel { - Value = [GeneralCommandType.MoveUp, GeneralCommandType.MoveDown] + Value = [GeneralCommandType.MoveUp, GeneralCommandType.MoveDown], }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": ""MoveUp,TotallyNotAValidCommand,MoveDown"" }", _jsonOptions); + GenericBodyArrayModel>(@"{ ""Value"": ""MoveUp,TotallyNotAValidCommand,MoveDown"" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_GenericCommandType_Space_Valid_Success() { - var desiredValue = new GenericBodyArrayModel + GenericBodyArrayModel + { desiredValue = new GenericBodyArrayModel { - Value = [GeneralCommandType.MoveUp, GeneralCommandType.MoveDown] + Value = [GeneralCommandType.MoveUp, GeneralCommandType.MoveDown], }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": ""MoveUp, MoveDown"" }", _jsonOptions); + GenericBodyArrayModel>(@"{ ""Value"": ""MoveUp, MoveDown"" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_String_Array_Valid_Success() { - var desiredValue = new GenericBodyArrayModel + GenericBodyArrayModel + { desiredValue = new GenericBodyArrayModel { - Value = ["a", "b", "c"] + Value = ["a", "b", "c"], }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": [""a"",""b"",""c""] }", _jsonOptions); + GenericBodyArrayModel>(@"{ ""Value"": [""a"",""b"",""c""] }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_GenericCommandType_Array_Valid_Success() { - var desiredValue = new GenericBodyArrayModel + GenericBodyArrayModel + { desiredValue = new GenericBodyArrayModel { - Value = [GeneralCommandType.MoveUp, GeneralCommandType.MoveDown] + Value = [GeneralCommandType.MoveUp, GeneralCommandType.MoveDown], }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": [""MoveUp"", ""MoveDown""] }", _jsonOptions); + GenericBodyArrayModel>(@"{ ""Value"": [""MoveUp"", ""MoveDown""] }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Serialize_GenericCommandType_ReadOnlyArray_Valid_Success() { - var valueToSerialize = new GenericBodyIReadOnlyCollectionModel + GenericBodyIReadOnlyCollectionModel + { valueToSerialize = new GenericBodyIReadOnlyCollectionModel { - Value = new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown }.AsReadOnly() + Value = new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown }.AsReadOnly(), }; string value = JsonSerializer.Serialize>(valueToSerialize, _jsonOptions); @@ -188,9 +201,10 @@ namespace Jellyfin.Extensions.Tests.Json.Converters [Fact] public void Serialize_GenericCommandType_ImmutableArrayArray_Valid_Success() { - var valueToSerialize = new GenericBodyIReadOnlyCollectionModel + GenericBodyIReadOnlyCollectionModel + { valueToSerialize = new GenericBodyIReadOnlyCollectionModel { - Value = ImmutableArray.Create(new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown }) + Value = ImmutableArray.Create(new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown }), }; string value = JsonSerializer.Serialize>(valueToSerialize, _jsonOptions); @@ -200,9 +214,10 @@ namespace Jellyfin.Extensions.Tests.Json.Converters [Fact] public void Serialize_GenericCommandType_List_Valid_Success() { - var valueToSerialize = new GenericBodyIReadOnlyListModel + GenericBodyIReadOnlyListModel + { valueToSerialize = new GenericBodyIReadOnlyListModel { - Value = new List { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown } + Value = new List { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown }, }; string value = JsonSerializer.Serialize>(valueToSerialize, _jsonOptions); diff --git a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonCommaDelimitedIReadOnlyListTests.cs b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonCommaDelimitedIReadOnlyListTests.cs index 69f9dded..2927977b 100644 --- a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonCommaDelimitedIReadOnlyListTests.cs +++ b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonCommaDelimitedIReadOnlyListTests.cs @@ -17,88 +17,95 @@ namespace Jellyfin.Extensions.Tests.Json.Converters { Converters = { - new JsonStringEnumConverter() - } + new JsonStringEnumConverter(), + }, }; [Fact] public void Deserialize_String_Valid_Success() { - var desiredValue = new GenericBodyIReadOnlyListModel + GenericBodyIReadOnlyListModel + { desiredValue = new GenericBodyIReadOnlyListModel { - Value = new[] { "a", "b", "c" } + Value = new[] { "a", "b", "c" }, }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": ""a,b,c"" }", _jsonOptions); + GenericBodyIReadOnlyListModel>(@"{ ""Value"": ""a,b,c"" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_String_Space_Valid_Success() { - var desiredValue = new GenericBodyIReadOnlyListModel + GenericBodyIReadOnlyListModel + { desiredValue = new GenericBodyIReadOnlyListModel { - Value = new[] { "a", "b", "c" } + Value = new[] { "a", "b", "c" }, }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": ""a, b, c"" }", _jsonOptions); + GenericBodyIReadOnlyListModel>(@"{ ""Value"": ""a, b, c"" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_GenericCommandType_Valid_Success() { - var desiredValue = new GenericBodyIReadOnlyListModel + GenericBodyIReadOnlyListModel + { desiredValue = new GenericBodyIReadOnlyListModel { - Value = new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown } + Value = new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown }, }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": ""MoveUp,MoveDown"" }", _jsonOptions); + GenericBodyIReadOnlyListModel>(@"{ ""Value"": ""MoveUp,MoveDown"" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_GenericCommandType_Space_Valid_Success() { - var desiredValue = new GenericBodyIReadOnlyListModel + GenericBodyIReadOnlyListModel + { desiredValue = new GenericBodyIReadOnlyListModel { - Value = new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown } + Value = new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown }, }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": ""MoveUp, MoveDown"" }", _jsonOptions); + GenericBodyIReadOnlyListModel>(@"{ ""Value"": ""MoveUp, MoveDown"" }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_String_Array_Valid_Success() { - var desiredValue = new GenericBodyIReadOnlyListModel + GenericBodyIReadOnlyListModel + { desiredValue = new GenericBodyIReadOnlyListModel { - Value = new[] { "a", "b", "c" } + Value = new[] { "a", "b", "c" }, }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": [""a"",""b"",""c""] }", _jsonOptions); + GenericBodyIReadOnlyListModel>(@"{ ""Value"": [""a"",""b"",""c""] }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Deserialize_GenericCommandType_Array_Valid_Success() { - var desiredValue = new GenericBodyIReadOnlyListModel + GenericBodyIReadOnlyListModel + { desiredValue = new GenericBodyIReadOnlyListModel { - Value = new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown } + Value = new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown }, }; - var value = JsonSerializer.Deserialize>(@"{ ""Value"": [""MoveUp"", ""MoveDown""] }", _jsonOptions); + GenericBodyIReadOnlyListModel>(@"{ ""Value"": [""MoveUp"", ""MoveDown""] }", _jsonOptions); Assert.Equal(desiredValue.Value, value?.Value); } [Fact] public void Serialize_GenericCommandType_IReadOnlyList_Valid_Success() { - var valueToSerialize = new GenericBodyIReadOnlyListModel + GenericBodyIReadOnlyListModel + { valueToSerialize = new GenericBodyIReadOnlyListModel { - Value = new List { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown } + Value = new List { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown }, }; string value = JsonSerializer.Serialize>(valueToSerialize, _jsonOptions); diff --git a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonDefaultStringEnumConverterTests.cs b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonDefaultStringEnumConverterTests.cs index 1cfd8825..dacbf126 100644 --- a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonDefaultStringEnumConverterTests.cs +++ b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonDefaultStringEnumConverterTests.cs @@ -24,7 +24,7 @@ public class JsonDefaultStringEnumConverterTests [InlineData("\"Hls\"", MediaStreamProtocol.hls)] public void Deserialize_Enum_Direct(string input, MediaStreamProtocol output) { - var value = JsonSerializer.Deserialize(input, _jsonOptions); + MediaStreamProtocol value = JsonSerializer.Deserialize(input, _jsonOptions); Assert.Equal(output, value); } @@ -42,7 +42,7 @@ public class JsonDefaultStringEnumConverterTests { input ??= "null"; var json = $"{{ \"EnumValue\": {input} }}"; - var value = JsonSerializer.Deserialize(json, _jsonOptions); + TestClass value = JsonSerializer.Deserialize(json, _jsonOptions); Assert.NotNull(value); Assert.Equal(output, value.EnumValue); } @@ -62,7 +62,7 @@ public class JsonDefaultStringEnumConverterTests { input ??= "null"; var json = $"{{ \"EnumValue\": {input} }}"; - var value = JsonSerializer.Deserialize(json, _jsonOptions); + NullTestClass value = JsonSerializer.Deserialize(json, _jsonOptions); Assert.NotNull(value); Assert.Equal(output, value.EnumValue); } diff --git a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonFlagEnumTests.cs b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonFlagEnumTests.cs index df54a73b..3c32ceaa 100644 --- a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonFlagEnumTests.cs +++ b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonFlagEnumTests.cs @@ -15,8 +15,8 @@ public class JsonFlagEnumTests { Converters = { - new JsonFlagEnumConverter() - } + new JsonFlagEnumConverter(), + }, }; [Theory] diff --git a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonStringConverterTests.cs b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonStringConverterTests.cs index 6db04781..1397ce20 100644 --- a/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonStringConverterTests.cs +++ b/tests/Jellyfin.Extensions.Tests/Json/Converters/JsonStringConverterTests.cs @@ -14,8 +14,8 @@ namespace Jellyfin.Extensions.Tests.Json.Converters { Converters = { - new JsonStringConverter() - } + new JsonStringConverter(), + }, }; [Theory] diff --git a/tests/Jellyfin.Extensions.Tests/obj/project.nuget.cache b/tests/Jellyfin.Extensions.Tests/obj/project.nuget.cache index 7dd496fa..cdd45fa5 100644 --- a/tests/Jellyfin.Extensions.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Extensions.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "en/g4Rojfa8=", + "dgSpecHash": "cBK/w0WVJEs=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Extensions.Tests\\Jellyfin.Extensions.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.LiveTv.Tests/obj/project.nuget.cache b/tests/Jellyfin.LiveTv.Tests/obj/project.nuget.cache index 2b70e0e0..e37c6514 100644 --- a/tests/Jellyfin.LiveTv.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.LiveTv.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "YQ4opaxxEO8=", + "dgSpecHash": "nbns8k6jJuA=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.LiveTv.Tests\\Jellyfin.LiveTv.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.MediaEncoding.Hls.Tests/obj/project.nuget.cache b/tests/Jellyfin.MediaEncoding.Hls.Tests/obj/project.nuget.cache index 8d750119..946bb86b 100644 --- a/tests/Jellyfin.MediaEncoding.Hls.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.MediaEncoding.Hls.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "/lT1/xD3XnU=", + "dgSpecHash": "hvFFds1OJpc=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.MediaEncoding.Hls.Tests\\Jellyfin.MediaEncoding.Hls.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.MediaEncoding.Keyframes.Tests/obj/project.nuget.cache b/tests/Jellyfin.MediaEncoding.Keyframes.Tests/obj/project.nuget.cache index 546f0827..1f7062c1 100644 --- a/tests/Jellyfin.MediaEncoding.Keyframes.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.MediaEncoding.Keyframes.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "0nvUEzLEN94=", + "dgSpecHash": "5g3aj0khPqM=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.MediaEncoding.Keyframes.Tests\\Jellyfin.MediaEncoding.Keyframes.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.MediaEncoding.Tests/obj/project.nuget.cache b/tests/Jellyfin.MediaEncoding.Tests/obj/project.nuget.cache index b4bb581b..1febf3d9 100644 --- a/tests/Jellyfin.MediaEncoding.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.MediaEncoding.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "SBmVy71j/UM=", + "dgSpecHash": "2rGlge7UbGY=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.MediaEncoding.Tests\\Jellyfin.MediaEncoding.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Model.Tests/Cryptography/PasswordHashTests.cs b/tests/Jellyfin.Model.Tests/Cryptography/PasswordHashTests.cs index 9767f398..4103da02 100644 --- a/tests/Jellyfin.Model.Tests/Cryptography/PasswordHashTests.cs +++ b/tests/Jellyfin.Model.Tests/Cryptography/PasswordHashTests.cs @@ -53,8 +53,7 @@ namespace Jellyfin.Model.Tests.Cryptography new Dictionary() { { "iterations", "1000" }, - { "m", "120" } - })); + { "m", "120" },`r`n })); // Id + hash data.Add( @@ -83,7 +82,8 @@ namespace Jellyfin.Model.Tests.Cryptography Array.Empty(), new Dictionary() { - { "iterations", "1000" } + { "iterations", "1000" }, + { "iterations", "1000" }, })); // Id + parameters + hash data.Add( @@ -95,7 +95,7 @@ namespace Jellyfin.Model.Tests.Cryptography new Dictionary() { { "iterations", "1000" }, - { "m", "120" } + { "m", "120" }, })); // Id + parameters + salt + hash data.Add( @@ -107,7 +107,7 @@ namespace Jellyfin.Model.Tests.Cryptography new Dictionary() { { "iterations", "1000" }, - { "m", "120" } + { "m", "120" }, })); return data; } diff --git a/tests/Jellyfin.Model.Tests/obj/project.nuget.cache b/tests/Jellyfin.Model.Tests/obj/project.nuget.cache index ecc57c45..a132eada 100644 --- a/tests/Jellyfin.Model.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Model.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "S2M6GE9E6Mw=", + "dgSpecHash": "E+3Xf4aE0A8=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Model.Tests\\Jellyfin.Model.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookFileInfoTests.cs b/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookFileInfoTests.cs index 187c53ba..8203284e 100644 --- a/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookFileInfoTests.cs +++ b/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookFileInfoTests.cs @@ -29,6 +29,6 @@ namespace Jellyfin.Naming.Tests.AudioBook var info1 = new AudioBookFileInfo(string.Empty, string.Empty); var info2 = new AudioBookFileInfo(string.Empty, string.Empty); Assert.Equal(0, info1.CompareTo(info2)); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookListResolverTests.cs b/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookListResolverTests.cs index edc924b9..6bfc637e 100644 --- a/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookListResolverTests.cs +++ b/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookListResolverTests.cs @@ -38,7 +38,7 @@ namespace Jellyfin.Naming.Tests.AudioBook "Ready Player One (2020)/audiobook.mp3", "Ready Player One (2020)/extra.mp3", - ".mp3" + ".mp3", }; var resolver = GetResolver(); @@ -89,7 +89,7 @@ namespace Jellyfin.Naming.Tests.AudioBook "Superman/extra.mp3", "Batman/ Chapter 1 .mp3", - "Batman/Chapter 1[loss-less].mp3" + "Batman/Chapter 1[loss-less].mp3", }; var resolver = GetResolver(); @@ -166,7 +166,7 @@ namespace Jellyfin.Naming.Tests.AudioBook Name = " ", Path = " .mp3", Year = null - } + }, }; var resolver = GetResolver(); @@ -183,7 +183,7 @@ namespace Jellyfin.Naming.Tests.AudioBook { Assert.Equal(data[i].Name, result[i].Name); Assert.Equal(data[i].Year, result[i].Year); - } + }, } [Fact] @@ -192,7 +192,7 @@ namespace Jellyfin.Naming.Tests.AudioBook var files = new[] { "Harry Potter and the Deathly Hallows/Chapter 1.ogg", - "Harry Potter and the Deathly Hallows/Harry Potter and the Deathly Hallows.nfo" + "Harry Potter and the Deathly Hallows/Harry Potter and the Deathly Hallows.nfo", }; var resolver = GetResolver(); @@ -212,7 +212,7 @@ namespace Jellyfin.Naming.Tests.AudioBook var files = new[] { "Harry Potter and the Deathly Hallows/Chapter 1.mp3", - "Harry Potter and the Deathly Hallows/Harry Potter and the Deathly Hallows trailer.mp3" + "Harry Potter and the Deathly Hallows/Harry Potter and the Deathly Hallows trailer.mp3", }; var resolver = GetResolver(); @@ -231,7 +231,7 @@ namespace Jellyfin.Naming.Tests.AudioBook { var files = new[] { - "Harry Potter and the Deathly Hallows trailer.mp3" + "Harry Potter and the Deathly Hallows trailer.mp3", }; var resolver = GetResolver(); @@ -271,6 +271,6 @@ namespace Jellyfin.Naming.Tests.AudioBook public string Name; public string Path; public int? Year; - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookResolverTests.cs b/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookResolverTests.cs index e732f384..1715a558 100644 --- a/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookResolverTests.cs +++ b/tests/Jellyfin.Naming.Tests/AudioBook/AudioBookResolverTests.cs @@ -64,6 +64,6 @@ namespace Jellyfin.Naming.Tests.AudioBook var result = new AudioBookResolver(_namingOptions).Resolve(string.Empty); Assert.Null(result); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Common/NamingOptionsTest.cs b/tests/Jellyfin.Naming.Tests/Common/NamingOptionsTest.cs index c9d31a4b..bef3dec5 100644 --- a/tests/Jellyfin.Naming.Tests/Common/NamingOptionsTest.cs +++ b/tests/Jellyfin.Naming.Tests/Common/NamingOptionsTest.cs @@ -32,6 +32,6 @@ namespace Jellyfin.Naming.Tests.Common exp.Expression = "test"; Assert.Equal("test", exp.Expression); Assert.NotNull(exp.Regex); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/ExternalFiles/ExternalPathParserTests.cs b/tests/Jellyfin.Naming.Tests/ExternalFiles/ExternalPathParserTests.cs index 3989f8bb..ca4d4884 100644 --- a/tests/Jellyfin.Naming.Tests/ExternalFiles/ExternalPathParserTests.cs +++ b/tests/Jellyfin.Naming.Tests/ExternalFiles/ExternalPathParserTests.cs @@ -122,4 +122,4 @@ public class ExternalPathParserTests Assert.Equal(isForced, actual.IsForced); Assert.Equal(isHearingImpaired, actual.IsHearingImpaired); } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Music/MultiDiscAlbumTests.cs b/tests/Jellyfin.Naming.Tests/Music/MultiDiscAlbumTests.cs index b7866675..e1d9a746 100644 --- a/tests/Jellyfin.Naming.Tests/Music/MultiDiscAlbumTests.cs +++ b/tests/Jellyfin.Naming.Tests/Music/MultiDiscAlbumTests.cs @@ -49,6 +49,6 @@ namespace Jellyfin.Naming.Tests.Music var parser = new AlbumParser(_namingOptions); Assert.Equal(result, parser.IsMultiPart(path)); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/AbsoluteEpisodeNumberTests.cs b/tests/Jellyfin.Naming.Tests/TV/AbsoluteEpisodeNumberTests.cs index 2fcc77cf..066d89a1 100644 --- a/tests/Jellyfin.Naming.Tests/TV/AbsoluteEpisodeNumberTests.cs +++ b/tests/Jellyfin.Naming.Tests/TV/AbsoluteEpisodeNumberTests.cs @@ -25,6 +25,6 @@ namespace Jellyfin.Naming.Tests.TV var result = _resolver.Resolve(path, false, null, null, true); Assert.Equal(episodeNumber, result?.EpisodeNumber); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/DailyEpisodeTests.cs b/tests/Jellyfin.Naming.Tests/TV/DailyEpisodeTests.cs index cf238076..842df334 100644 --- a/tests/Jellyfin.Naming.Tests/TV/DailyEpisodeTests.cs +++ b/tests/Jellyfin.Naming.Tests/TV/DailyEpisodeTests.cs @@ -31,6 +31,6 @@ namespace Jellyfin.Naming.Tests.TV Assert.Equal(month, result?.Month); Assert.Equal(day, result?.Day); Assert.Equal(seriesName, result?.SeriesName, true); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/EpisodeNumberTests.cs b/tests/Jellyfin.Naming.Tests/TV/EpisodeNumberTests.cs index dcca11b3..5876d7f3 100644 --- a/tests/Jellyfin.Naming.Tests/TV/EpisodeNumberTests.cs +++ b/tests/Jellyfin.Naming.Tests/TV/EpisodeNumberTests.cs @@ -95,6 +95,6 @@ namespace Jellyfin.Naming.Tests.TV .Parse(path, false); Assert.Equal(expected, result.EpisodeNumber); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/EpisodeNumberWithoutSeasonTests.cs b/tests/Jellyfin.Naming.Tests/TV/EpisodeNumberWithoutSeasonTests.cs index 3f172298..bb6afb15 100644 --- a/tests/Jellyfin.Naming.Tests/TV/EpisodeNumberWithoutSeasonTests.cs +++ b/tests/Jellyfin.Naming.Tests/TV/EpisodeNumberWithoutSeasonTests.cs @@ -33,6 +33,6 @@ namespace Jellyfin.Naming.Tests.TV var result = _resolver.Resolve(path, false); Assert.Equal(episodeNumber, result?.EpisodeNumber); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/EpisodePathParserTest.cs b/tests/Jellyfin.Naming.Tests/TV/EpisodePathParserTest.cs index ee3176f6..7d116703 100644 --- a/tests/Jellyfin.Naming.Tests/TV/EpisodePathParserTest.cs +++ b/tests/Jellyfin.Naming.Tests/TV/EpisodePathParserTest.cs @@ -103,6 +103,6 @@ namespace Jellyfin.Naming.Tests.TV var res = p.Parse("ABC_2019_10_21 11:00:00", false); Assert.True(res.Success); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/MultiEpisodeTests.cs b/tests/Jellyfin.Naming.Tests/TV/MultiEpisodeTests.cs index 5d900458..c9777400 100644 --- a/tests/Jellyfin.Naming.Tests/TV/MultiEpisodeTests.cs +++ b/tests/Jellyfin.Naming.Tests/TV/MultiEpisodeTests.cs @@ -78,6 +78,6 @@ namespace Jellyfin.Naming.Tests.TV var result = _episodePathParser.Parse(filename, false); Assert.Equal(result.EndingEpisodeNumber, endingEpisodeNumber); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/SeasonNumberTests.cs b/tests/Jellyfin.Naming.Tests/TV/SeasonNumberTests.cs index 22d4d9cb..d3d88c74 100644 --- a/tests/Jellyfin.Naming.Tests/TV/SeasonNumberTests.cs +++ b/tests/Jellyfin.Naming.Tests/TV/SeasonNumberTests.cs @@ -63,6 +63,6 @@ namespace Jellyfin.Naming.Tests.TV var result = _resolver.Resolve(path, false); Assert.Equal(expected, result?.SeasonNumber); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/SeasonPathParserTests.cs b/tests/Jellyfin.Naming.Tests/TV/SeasonPathParserTests.cs index be771fb7..cc53287e 100644 --- a/tests/Jellyfin.Naming.Tests/TV/SeasonPathParserTests.cs +++ b/tests/Jellyfin.Naming.Tests/TV/SeasonPathParserTests.cs @@ -87,4 +87,4 @@ public class SeasonPathParserTests Assert.Equal(seasonNumber, result.SeasonNumber); Assert.Equal(isSeasonDirectory, result.IsSeasonFolder); } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/SeriesPathParserTest.cs b/tests/Jellyfin.Naming.Tests/TV/SeriesPathParserTest.cs index a9e65b52..f362f64b 100644 --- a/tests/Jellyfin.Naming.Tests/TV/SeriesPathParserTest.cs +++ b/tests/Jellyfin.Naming.Tests/TV/SeriesPathParserTest.cs @@ -28,6 +28,6 @@ namespace Jellyfin.Naming.Tests.TV Assert.Equal(name, res.SeriesName); Assert.True(res.Success); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/SeriesResolverTests.cs b/tests/Jellyfin.Naming.Tests/TV/SeriesResolverTests.cs index 64ad3a30..6c396800 100644 --- a/tests/Jellyfin.Naming.Tests/TV/SeriesResolverTests.cs +++ b/tests/Jellyfin.Naming.Tests/TV/SeriesResolverTests.cs @@ -29,6 +29,6 @@ namespace Jellyfin.Naming.Tests.TV var res = SeriesResolver.Resolve(_namingOptions, path); Assert.Equal(name, res.Name); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/SimpleEpisodeTests.cs b/tests/Jellyfin.Naming.Tests/TV/SimpleEpisodeTests.cs index be3e9550..034b0c8c 100644 --- a/tests/Jellyfin.Naming.Tests/TV/SimpleEpisodeTests.cs +++ b/tests/Jellyfin.Naming.Tests/TV/SimpleEpisodeTests.cs @@ -48,6 +48,6 @@ namespace Jellyfin.Naming.Tests.TV Assert.Null(result!.StubType); Assert.Equal(episodeEndNumber, result!.EndingEpisodeNumber); Assert.False(result!.IsByDate); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/TV/TvParserHelpersTest.cs b/tests/Jellyfin.Naming.Tests/TV/TvParserHelpersTest.cs index a2636a6a..20195892 100644 --- a/tests/Jellyfin.Naming.Tests/TV/TvParserHelpersTest.cs +++ b/tests/Jellyfin.Naming.Tests/TV/TvParserHelpersTest.cs @@ -32,4 +32,4 @@ public class TvParserHelpersTest Assert.False(successful); Assert.Null(parsed); } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Video/CleanDateTimeTests.cs b/tests/Jellyfin.Naming.Tests/Video/CleanDateTimeTests.cs index 904f2593..7c263f8b 100644 --- a/tests/Jellyfin.Naming.Tests/Video/CleanDateTimeTests.cs +++ b/tests/Jellyfin.Naming.Tests/Video/CleanDateTimeTests.cs @@ -65,6 +65,6 @@ namespace Jellyfin.Naming.Tests.Video Assert.Equal(expectedName, result.Name, true); Assert.Equal(expectedYear, result.Year); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Video/CleanStringTests.cs b/tests/Jellyfin.Naming.Tests/Video/CleanStringTests.cs index 17e7a777..33d88104 100644 --- a/tests/Jellyfin.Naming.Tests/Video/CleanStringTests.cs +++ b/tests/Jellyfin.Naming.Tests/Video/CleanStringTests.cs @@ -52,6 +52,6 @@ namespace Jellyfin.Naming.Tests.Video { Assert.False(VideoResolver.TryCleanString(input, _namingOptions, out var newName)); Assert.True(string.IsNullOrEmpty(newName)); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Video/ExtraTests.cs b/tests/Jellyfin.Naming.Tests/Video/ExtraTests.cs index a42ebeb0..f9a61d03 100644 --- a/tests/Jellyfin.Naming.Tests/Video/ExtraTests.cs +++ b/tests/Jellyfin.Naming.Tests/Video/ExtraTests.cs @@ -166,6 +166,6 @@ namespace Jellyfin.Naming.Tests.Video var res = ExtraRuleResolver.GetExtraInfo("extra.mp4", options); Assert.Equal(rule, res.Rule); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Video/Format3DTests.cs b/tests/Jellyfin.Naming.Tests/Video/Format3DTests.cs index 07a453aa..6b11ccf6 100644 --- a/tests/Jellyfin.Naming.Tests/Video/Format3DTests.cs +++ b/tests/Jellyfin.Naming.Tests/Video/Format3DTests.cs @@ -72,7 +72,7 @@ namespace Jellyfin.Naming.Tests.Video else { Assert.Equal(format3D, result.Format3D, true); - } - } + }, + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Video/MultiVersionTests.cs b/tests/Jellyfin.Naming.Tests/Video/MultiVersionTests.cs index 5cd5d42b..fa8ebd60 100644 --- a/tests/Jellyfin.Naming.Tests/Video/MultiVersionTests.cs +++ b/tests/Jellyfin.Naming.Tests/Video/MultiVersionTests.cs @@ -22,7 +22,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/X-Men Days of Future Past/X-Men Days of Future Past - 1080p.mkv", "/movies/X-Men Days of Future Past/X-Men Days of Future Past-trailer.mp4", "/movies/X-Men Days of Future Past/X-Men Days of Future Past - [hsbs].mkv", - "/movies/X-Men Days of Future Past/X-Men Days of Future Past [hsbs].mkv" + "/movies/X-Men Days of Future Past/X-Men Days of Future Past [hsbs].mkv", }; var result = VideoListResolver.Resolve( @@ -41,7 +41,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/X-Men Days of Future Past/X-Men Days of Future Past - apple.mkv", "/movies/X-Men Days of Future Past/X-Men Days of Future Past-trailer.mp4", "/movies/X-Men Days of Future Past/X-Men Days of Future Past - banana.mkv", - "/movies/X-Men Days of Future Past/X-Men Days of Future Past [banana].mp4" + "/movies/X-Men Days of Future Past/X-Men Days of Future Past [banana].mp4", }; var result = VideoListResolver.Resolve( @@ -59,7 +59,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "/movies/The Phantom of the Opera (1925)/The Phantom of the Opera (1925) - 1925 version.mkv", - "/movies/The Phantom of the Opera (1925)/The Phantom of the Opera (1925) - 1929 version.mkv" + "/movies/The Phantom of the Opera (1925)/The Phantom of the Opera (1925) - 1929 version.mkv", }; var result = VideoListResolver.Resolve( @@ -81,7 +81,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/M/Movie 4.mkv", "/movies/M/Movie 5.mkv", "/movies/M/Movie 6.mkv", - "/movies/M/Movie 7.mkv" + "/movies/M/Movie 7.mkv", }; var result = VideoListResolver.Resolve( @@ -104,7 +104,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/Movie/Movie-5.mkv", "/movies/Movie/Movie-6.mkv", "/movies/Movie/Movie-7.mkv", - "/movies/Movie/Movie-8.mkv" + "/movies/Movie/Movie-8.mkv", }; var result = VideoListResolver.Resolve( @@ -128,7 +128,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/Mo/Movie 6.mkv", "/movies/Mo/Movie 7.mkv", "/movies/Mo/Movie 8.mkv", - "/movies/Mo/Movie 9.mkv" + "/movies/Mo/Movie 9.mkv", }; var result = VideoListResolver.Resolve( @@ -148,7 +148,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/Movie/Movie 2.mkv", "/movies/Movie/Movie 3.mkv", "/movies/Movie/Movie 4.mkv", - "/movies/Movie/Movie 5.mkv" + "/movies/Movie/Movie 5.mkv", }; var result = VideoListResolver.Resolve( @@ -170,7 +170,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/Iron Man/Iron Man (2008).mkv", "/movies/Iron Man/Iron Man (2009).mkv", "/movies/Iron Man/Iron Man (2010).mkv", - "/movies/Iron Man/Iron Man (2011).mkv" + "/movies/Iron Man/Iron Man (2011).mkv", }; var result = VideoListResolver.Resolve( @@ -192,7 +192,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/Iron Man/Iron Man-bluray.mkv", "/movies/Iron Man/Iron Man-3d.mkv", "/movies/Iron Man/Iron Man-3d-hsbs.mkv", - "/movies/Iron Man/Iron Man[test].mkv" + "/movies/Iron Man/Iron Man[test].mkv", }; var result = VideoListResolver.Resolve( @@ -221,7 +221,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/Iron Man/Iron Man - bluray.mkv", "/movies/Iron Man/Iron Man - 3d.mkv", "/movies/Iron Man/Iron Man - 3d-hsbs.mkv", - "/movies/Iron Man/Iron Man [test].mkv" + "/movies/Iron Man/Iron Man [test].mkv", }; var result = VideoListResolver.Resolve( @@ -245,7 +245,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "/movies/Iron Man/Iron Man - B (2006).mkv", - "/movies/Iron Man/Iron Man - C (2007).mkv" + "/movies/Iron Man/Iron Man - C (2007).mkv", }; var result = VideoListResolver.Resolve( @@ -266,7 +266,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/Iron Man/Iron Man_bluray.mkv", "/movies/Iron Man/Iron Man_3d.mkv", "/movies/Iron Man/Iron Man_3d-hsbs.mkv", - "/movies/Iron Man/Iron Man_3d.hsbs.mkv" + "/movies/Iron Man/Iron Man_3d.hsbs.mkv", }; var result = VideoListResolver.Resolve( @@ -288,7 +288,7 @@ namespace Jellyfin.Naming.Tests.Video "/movies/Iron Man/Iron Man (2008).mkv", "/movies/Iron Man/Iron Man (2009).mkv", "/movies/Iron Man/Iron Man (2010).mkv", - "/movies/Iron Man/Iron Man (2011).mkv" + "/movies/Iron Man/Iron Man (2011).mkv", }; var result = VideoListResolver.Resolve( @@ -305,7 +305,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "/movies/Blade Runner (1982)/Blade Runner (1982) [Final Cut] [1080p HEVC AAC].mkv", - "/movies/Blade Runner (1982)/Blade Runner (1982) [EE by ADM] [480p HEVC AAC,AAC,AAC].mkv" + "/movies/Blade Runner (1982)/Blade Runner (1982) [EE by ADM] [480p HEVC AAC,AAC,AAC].mkv", }; var result = VideoListResolver.Resolve( @@ -322,7 +322,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "/movies/X-Men Apocalypse (2016)/X-Men Apocalypse (2016) [1080p] Blu-ray.x264.DTS.mkv", - "/movies/X-Men Apocalypse (2016)/X-Men Apocalypse (2016) [2160p] Blu-ray.x265.AAC.mkv" + "/movies/X-Men Apocalypse (2016)/X-Men Apocalypse (2016) [2160p] Blu-ray.x265.AAC.mkv", }; var result = VideoListResolver.Resolve( @@ -405,7 +405,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "/movies/John Wick - Kapitel 3 (2019) [imdbid=tt6146586]/John Wick - Kapitel 3 (2019) [imdbid=tt6146586] - Version 1.mkv", - "/movies/John Wick - Kapitel 3 (2019) [imdbid=tt6146586]/John Wick - Kapitel 3 (2019) [imdbid=tt6146586] - Version 2.mkv" + "/movies/John Wick - Kapitel 3 (2019) [imdbid=tt6146586]/John Wick - Kapitel 3 (2019) [imdbid=tt6146586] - Version 2.mkv", }; var result = VideoListResolver.Resolve( @@ -422,7 +422,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "/movies/John Wick - Chapter 3 (2019)/John Wick - Chapter 3 (2019) [Version 1].mkv", - "/movies/John Wick - Chapter 3 (2019)/John Wick - Chapter 3 (2019) [Version 2.mkv" + "/movies/John Wick - Chapter 3 (2019)/John Wick - Chapter 3 (2019) [Version 2.mkv", }; var result = VideoListResolver.Resolve( @@ -438,6 +438,6 @@ namespace Jellyfin.Naming.Tests.Video var result = VideoListResolver.Resolve(new List(), _namingOptions).ToList(); Assert.Empty(result); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Video/StackTests.cs b/tests/Jellyfin.Naming.Tests/Video/StackTests.cs index 0532bf93..61831a3a 100644 --- a/tests/Jellyfin.Naming.Tests/Video/StackTests.cs +++ b/tests/Jellyfin.Naming.Tests/Video/StackTests.cs @@ -23,7 +23,7 @@ namespace Jellyfin.Naming.Tests.Video "Bad Boys (2006) part2.mkv", "Bad Boys (2006) part3.mkv", "Bad Boys (2006) part4.mkv", - "Bad Boys (2006)-trailer.mkv" + "Bad Boys (2006)-trailer.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -38,7 +38,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "Bad Boys (2006).mkv", - "Bad Boys (2007).mkv" + "Bad Boys (2007).mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -52,7 +52,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "Bad Boys 2006.mkv", - "Bad Boys 2007.mkv" + "Bad Boys 2007.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -66,7 +66,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "300 (2006).mkv", - "300 (2007).mkv" + "300 (2007).mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -80,7 +80,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "300 2006.mkv", - "300 2007.mkv" + "300 2007.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -94,7 +94,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "Star Trek 1 - The motion picture.mkv", - "Star Trek 2- The wrath of khan.mkv" + "Star Trek 2- The wrath of khan.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -108,7 +108,7 @@ namespace Jellyfin.Naming.Tests.Video { "Red Riding in the Year of Our Lord 1983 (2009).mkv", "Red Riding in the Year of Our Lord 1980 (2009).mkv", - "Red Riding in the Year of Our Lord 1974 (2009).mkv" + "Red Riding in the Year of Our Lord 1974 (2009).mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -122,7 +122,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "d:/movies/300 2006 part1.mkv", - "d:/movies/300 2006 part2.mkv" + "d:/movies/300 2006 part2.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -140,7 +140,7 @@ namespace Jellyfin.Naming.Tests.Video "Bad Boys (2006).part2.stv.unrated.multi.1080p.bluray.x264-rough.mkv", "Bad Boys (2006).part3.stv.unrated.multi.1080p.bluray.x264-rough.mkv", "Bad Boys (2006).part4.stv.unrated.multi.1080p.bluray.x264-rough.mkv", - "Bad Boys (2006)-trailer.mkv" + "Bad Boys (2006)-trailer.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -157,7 +157,7 @@ namespace Jellyfin.Naming.Tests.Video "Bad Boys (2006) 1.mkv", "Bad Boys (2006) 2.mkv", "Bad Boys (2006) 3.mkv", - "Bad Boys (2006)-trailer.mkv" + "Bad Boys (2006)-trailer.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -174,7 +174,7 @@ namespace Jellyfin.Naming.Tests.Video "300 (2006) part2.mkv", "300 (2006) part3.mkv", "300 (2006) part4.mkv", - "300 (2006)-trailer.mkv" + "300 (2006)-trailer.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -192,7 +192,7 @@ namespace Jellyfin.Naming.Tests.Video "Bad Boys (2006) part2.mkv", "Bad Boys (2006) part3.mkv", "Bad Boys (2006) parta.mkv", - "Bad Boys (2006)-trailer.mkv" + "Bad Boys (2006)-trailer.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -214,7 +214,7 @@ namespace Jellyfin.Naming.Tests.Video "300 (2006) part1.mkv", "300 (2006) part2.mkv", "300 (2006) part3.mkv", - "300 (2006)-trailer.mkv" + "300 (2006)-trailer.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -230,7 +230,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "blah blah - cd 1", - "blah blah - cd 2" + "blah blah - cd 2", }; var result = StackResolver.ResolveDirectories(files, _namingOptions).ToList(); @@ -247,7 +247,7 @@ namespace Jellyfin.Naming.Tests.Video "300a.mkv", "300b.mkv", "300c.mkv", - "300-trailer.mkv" + "300-trailer.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -266,7 +266,7 @@ namespace Jellyfin.Naming.Tests.Video "Avatar", "Avengers part1.mkv", "Avengers part2.mkv", - "Avengers part3.mkv" + "Avengers part3.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -295,7 +295,7 @@ namespace Jellyfin.Naming.Tests.Video "300a.mkv", "300b.mkv", "300c.mkv", - "300-trailer.mkv" + "300-trailer.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -319,7 +319,7 @@ namespace Jellyfin.Naming.Tests.Video "300 (2006) parte.mkv", "300 (2006) partf.mkv", "300 (2006) partg.mkv", - "300 (2006)-trailer.mkv" + "300 (2006)-trailer.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -338,7 +338,7 @@ namespace Jellyfin.Naming.Tests.Video new FileSystemMetadata { FullName = "Bad Boys (2006) part2.mkv", IsDirectory = false }, new FileSystemMetadata { FullName = "300 (2006) part2", IsDirectory = true }, new FileSystemMetadata { FullName = "300 (2006) part3", IsDirectory = true }, - new FileSystemMetadata { FullName = "300 (2006) part1", IsDirectory = true } + new FileSystemMetadata { FullName = "300 (2006) part1", IsDirectory = true }, }; var result = StackResolver.Resolve(files, _namingOptions).ToList(); @@ -358,7 +358,7 @@ namespace Jellyfin.Naming.Tests.Video "Harry Potter and the Deathly Hallows 1.mkv", "Harry Potter and the Deathly Hallows 2.mkv", "Harry Potter and the Deathly Hallows 3.mkv", - "Harry Potter and the Deathly Hallows 4.mkv" + "Harry Potter and the Deathly Hallows 4.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -373,7 +373,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "Neverland (2011)[720p][PG][Voted 6.5][Family-Fantasy]part1.mkv", - "Neverland (2011)[720p][PG][Voted 6.5][Family-Fantasy]part2.mkv" + "Neverland (2011)[720p][PG][Voted 6.5][Family-Fantasy]part2.mkv", }; var result = StackResolver.ResolveFiles(files, _namingOptions).ToList(); @@ -389,7 +389,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "M:/Movies (DVD)/Movies (Musical)/The Sound of Music/The Sound of Music (1965) (Disc 01)", - "M:/Movies (DVD)/Movies (Musical)/The Sound of Music/The Sound of Music (1965) (Disc 02)" + "M:/Movies (DVD)/Movies (Musical)/The Sound of Music/The Sound of Music (1965) (Disc 02)", }; var result = StackResolver.ResolveDirectories(files, _namingOptions).ToList(); @@ -402,6 +402,6 @@ namespace Jellyfin.Naming.Tests.Video { Assert.Equal(fileCount, stack.Files.Count); Assert.Equal(name, stack.Name); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Video/StubTests.cs b/tests/Jellyfin.Naming.Tests/Video/StubTests.cs index 3660f5c6..b05b1b1f 100644 --- a/tests/Jellyfin.Naming.Tests/Video/StubTests.cs +++ b/tests/Jellyfin.Naming.Tests/Video/StubTests.cs @@ -51,7 +51,7 @@ namespace Jellyfin.Naming.Tests.Video else { Assert.Null(stubTypeResult); - } - } + }, + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Video/VideoListResolverTests.cs b/tests/Jellyfin.Naming.Tests/Video/VideoListResolverTests.cs index 78ad47f7..618a96ed 100644 --- a/tests/Jellyfin.Naming.Tests/Video/VideoListResolverTests.cs +++ b/tests/Jellyfin.Naming.Tests/Video/VideoListResolverTests.cs @@ -41,7 +41,7 @@ namespace Jellyfin.Naming.Tests.Video "trailer.mkv", // Same as above - "WillyWonka-trailer.mkv" + "WillyWonka-trailer.mkv", }; var result = VideoListResolver.Resolve( @@ -75,7 +75,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "300.mkv", - "300.nfo" + "300.nfo", }; var result = VideoListResolver.Resolve( @@ -91,7 +91,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "300.mkv", - "300 - trailer.mkv" + "300 - trailer.mkv", }; var result = VideoListResolver.Resolve( @@ -109,7 +109,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "X-Men Days of Future Past - 1080p.mkv", - "X-Men Days of Future Past-trailer.mp4" + "X-Men Days of Future Past-trailer.mp4", }; var result = VideoListResolver.Resolve( @@ -128,7 +128,7 @@ namespace Jellyfin.Naming.Tests.Video { "X-Men Days of Future Past - 1080p.mkv", "X-Men Days of Future Past-trailer.mp4", - "X-Men Days of Future Past-trailer2.mp4" + "X-Men Days of Future Past-trailer2.mp4", }; var result = VideoListResolver.Resolve( @@ -148,7 +148,7 @@ namespace Jellyfin.Naming.Tests.Video { "Looper (2012)-trailer.mkv", "Looper 2012-trailer.mkv", - "Looper.2012.bluray.720p.x264.mkv" + "Looper.2012.bluray.720p.x264.mkv", }; var result = VideoListResolver.Resolve( @@ -167,7 +167,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "/movies/Looper (2012)/Looper (2012)-trailer.mkv", - "/movies/Looper (2012)/Looper.bluray.720p.x264.mkv" + "/movies/Looper (2012)/Looper.bluray.720p.x264.mkv", }; var result = VideoListResolver.Resolve( @@ -189,7 +189,7 @@ namespace Jellyfin.Naming.Tests.Video "My video 2.mkv", "My video 3.mkv", "My video 4.mkv", - "My video 5.mkv" + "My video 5.mkv", }; var result = VideoListResolver.Resolve( @@ -205,7 +205,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "M:/Movies (DVD)/Movies (Musical)/Sound of Music (1965)/Sound of Music Disc 1", - "M:/Movies (DVD)/Movies (Musical)/Sound of Music (1965)/Sound of Music Disc 2" + "M:/Movies (DVD)/Movies (Musical)/Sound of Music (1965)/Sound of Music Disc 2", }; var result = VideoListResolver.Resolve( @@ -222,7 +222,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "My movie #1.mp4", - "My movie #2.mp4" + "My movie #2.mp4", }; var result = VideoListResolver.Resolve( @@ -240,7 +240,7 @@ namespace Jellyfin.Naming.Tests.Video "No (2012) part1.mp4", "No (2012) part2.mp4", "No (2012) part1-trailer.mp4", - "No (2012)-trailer.mp4" + "No (2012)-trailer.mp4", }; var result = VideoListResolver.Resolve( @@ -261,7 +261,7 @@ namespace Jellyfin.Naming.Tests.Video "/Movies/Top Gun (1984)/movie.mp4", "/Movies/Top Gun (1984)/Top Gun (1984)-trailer.mp4", "/Movies/Top Gun (1984)/Top Gun (1984)-trailer2.mp4", - "/Movies/trailer.mp4" + "/Movies/trailer.mp4", }; var result = VideoListResolver.Resolve( @@ -283,7 +283,7 @@ namespace Jellyfin.Naming.Tests.Video "/MCFAMILY-PC/Private3$/Heterosexual/Breast In Class 2 Counterfeit Racks (2011)/Breast In Class 2 Counterfeit Racks (2011) Disc 1 cd1.avi", "/MCFAMILY-PC/Private3$/Heterosexual/Breast In Class 2 Counterfeit Racks (2011)/Breast In Class 2 Counterfeit Racks (2011) Disc 1 cd2.avi", "/MCFAMILY-PC/Private3$/Heterosexual/Breast In Class 2 Counterfeit Racks (2011)/Breast In Class 2 Disc 2 cd1.avi", - "/MCFAMILY-PC/Private3$/Heterosexual/Breast In Class 2 Counterfeit Racks (2011)/Breast In Class 2 Disc 2 cd2.avi" + "/MCFAMILY-PC/Private3$/Heterosexual/Breast In Class 2 Counterfeit Racks (2011)/Breast In Class 2 Disc 2 cd2.avi", }; var result = VideoListResolver.Resolve( @@ -298,7 +298,7 @@ namespace Jellyfin.Naming.Tests.Video { var files = new[] { - "/nas-markrobbo78/Videos/INDEX HTPC/Movies/Watched/3 - ACTION/Argo (2012)/movie.mkv" + "/nas-markrobbo78/Videos/INDEX HTPC/Movies/Watched/3 - ACTION/Argo (2012)/movie.mkv", }; var result = VideoListResolver.Resolve( @@ -313,7 +313,7 @@ namespace Jellyfin.Naming.Tests.Video { var files = new[] { - "The Colony.mkv" + "The Colony.mkv", }; var result = VideoListResolver.Resolve( @@ -329,7 +329,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "Four Sisters and a Wedding - A.avi", - "Four Sisters and a Wedding - B.avi" + "Four Sisters and a Wedding - B.avi", }; var result = VideoListResolver.Resolve( @@ -347,7 +347,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "Four Rooms - A.avi", - "Four Rooms - A.mp4" + "Four Rooms - A.mp4", }; var result = VideoListResolver.Resolve( @@ -363,7 +363,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "/Server/Despicable Me/Despicable Me (2010).mkv", - "/Server/Despicable Me/trailer.mkv" + "/Server/Despicable Me/trailer.mkv", }; var result = VideoListResolver.Resolve( @@ -381,7 +381,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "/Server/Despicable Me/Despicable Me (2010).mkv", - "/Server/Despicable Me/trailers/some title.mkv" + "/Server/Despicable Me/trailers/some title.mkv", }; var result = VideoListResolver.Resolve( @@ -399,7 +399,7 @@ namespace Jellyfin.Naming.Tests.Video var files = new[] { "/Movies/Despicable Me/Despicable Me.mkv", - "/Movies/Despicable Me/trailers/trailer.mkv" + "/Movies/Despicable Me/trailers/trailer.mkv", }; var result = VideoListResolver.Resolve( @@ -416,6 +416,6 @@ namespace Jellyfin.Naming.Tests.Video { var stack = new FileStack(string.Empty, false, Array.Empty()); Assert.False(stack.ContainsFile("XX", true)); - } + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/Video/VideoResolverTests.cs b/tests/Jellyfin.Naming.Tests/Video/VideoResolverTests.cs index 952ab17c..723ed299 100644 --- a/tests/Jellyfin.Naming.Tests/Video/VideoResolverTests.cs +++ b/tests/Jellyfin.Naming.Tests/Video/VideoResolverTests.cs @@ -192,7 +192,7 @@ namespace Jellyfin.Naming.Tests.Video foreach (var result in results) { Assert.Null(result?.Container); - } - } + }, + }, } -} +} \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs b/tests/Jellyfin.Naming.Tests/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs index 925b1351..d7ca9f54 100644 --- a/tests/Jellyfin.Naming.Tests/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs +++ b/tests/Jellyfin.Naming.Tests/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs @@ -1,4 +1,4 @@ // using System; using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v10.0", FrameworkDisplayName = ".NET 10.0")] +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v10.0", FrameworkDisplayName = ".NET 10.0")] \ No newline at end of file diff --git a/tests/Jellyfin.Naming.Tests/obj/Debug/net10.0/Jellyfin.Naming.Tests.AssemblyInfo.cs b/tests/Jellyfin.Naming.Tests/obj/Debug/net10.0/Jellyfin.Naming.Tests.AssemblyInfo.cs index 9d434f50..56efb1ab 100644 --- a/tests/Jellyfin.Naming.Tests/obj/Debug/net10.0/Jellyfin.Naming.Tests.AssemblyInfo.cs +++ b/tests/Jellyfin.Naming.Tests/obj/Debug/net10.0/Jellyfin.Naming.Tests.AssemblyInfo.cs @@ -20,4 +20,3 @@ using System.Reflection; [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] // Generated by the MSBuild WriteCodeFragment class. - diff --git a/tests/Jellyfin.Naming.Tests/obj/project.nuget.cache b/tests/Jellyfin.Naming.Tests/obj/project.nuget.cache index f9f28ac9..012be5d7 100644 --- a/tests/Jellyfin.Naming.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Naming.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "aetk2kDndoI=", + "dgSpecHash": "w013NueXjWs=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Naming.Tests\\Jellyfin.Naming.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Networking.Tests/obj/project.nuget.cache b/tests/Jellyfin.Networking.Tests/obj/project.nuget.cache index 3a22e8f1..88263095 100644 --- a/tests/Jellyfin.Networking.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Networking.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "VqeAp96kZ+8=", + "dgSpecHash": "dtvsyCwkixc=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Networking.Tests\\Jellyfin.Networking.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Providers.Tests/obj/project.nuget.cache b/tests/Jellyfin.Providers.Tests/obj/project.nuget.cache index 612e547e..60aceb0f 100644 --- a/tests/Jellyfin.Providers.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Providers.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "yVpchsJCVR8=", + "dgSpecHash": "99YmHljNark=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Providers.Tests\\Jellyfin.Providers.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Server.Implementations.Tests/obj/project.nuget.cache b/tests/Jellyfin.Server.Implementations.Tests/obj/project.nuget.cache index fb9302aa..d5f01a83 100644 --- a/tests/Jellyfin.Server.Implementations.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Server.Implementations.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "SB6n8FaqhDk=", + "dgSpecHash": "ekBTYkgmpdU=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Server.Implementations.Tests\\Jellyfin.Server.Implementations.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Server.Integration.Tests/obj/project.nuget.cache b/tests/Jellyfin.Server.Integration.Tests/obj/project.nuget.cache index 3bd82b26..0061c7c5 100644 --- a/tests/Jellyfin.Server.Integration.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Server.Integration.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "F/F7p6QhWSM=", + "dgSpecHash": "wWSnrqDiePs=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Server.Integration.Tests\\Jellyfin.Server.Integration.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.Server.Tests/obj/project.nuget.cache b/tests/Jellyfin.Server.Tests/obj/project.nuget.cache index 9ad57761..93138c2d 100644 --- a/tests/Jellyfin.Server.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.Server.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "W1tIaEHAq1A=", + "dgSpecHash": "2W4hzYZ52SM=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.Server.Tests\\Jellyfin.Server.Tests.csproj", "expectedPackageFiles": [ diff --git a/tests/Jellyfin.XbmcMetadata.Tests/obj/project.nuget.cache b/tests/Jellyfin.XbmcMetadata.Tests/obj/project.nuget.cache index 6aa62ef1..e42c907c 100644 --- a/tests/Jellyfin.XbmcMetadata.Tests/obj/project.nuget.cache +++ b/tests/Jellyfin.XbmcMetadata.Tests/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "+lkQwnGRsbE=", + "dgSpecHash": "cjfpv0pWthU=", "success": true, "projectFilePath": "E:\\Projects\\pgsql-jellyfin\\tests\\Jellyfin.XbmcMetadata.Tests\\Jellyfin.XbmcMetadata.Tests.csproj", "expectedPackageFiles": [