2
0
Bond_009 4 жил өмнө
parent
commit
ec3237ba55

+ 0 - 1
Jellyfin.Api/Controllers/DashboardController.cs

@@ -6,7 +6,6 @@ using System.Net.Mime;
 using Jellyfin.Api.Attributes;
 using Jellyfin.Api.Models;
 using MediaBrowser.Common.Plugins;
-using MediaBrowser.Controller;
 using MediaBrowser.Model.Net;
 using MediaBrowser.Model.Plugins;
 using Microsoft.AspNetCore.Http;

+ 8 - 0
Jellyfin.Api/Models/ConfigurationPageInfo.cs

@@ -24,6 +24,14 @@ namespace Jellyfin.Api.Models
             PluginId = plugin?.Id;
         }
 
+        /// <summary>
+        /// Initializes a new instance of the <see cref="ConfigurationPageInfo"/> class.
+        /// </summary>
+        public ConfigurationPageInfo()
+        {
+            Name = string.Empty;
+        }
+
         /// <summary>
         /// Gets or sets the name.
         /// </summary>

+ 6 - 3
tests/Jellyfin.Api.Tests/Controllers/DashboardControllerTests.cs

@@ -3,6 +3,7 @@ using System.Net;
 using System.Text.Json;
 using System.Threading.Tasks;
 using Jellyfin.Api.Models;
+using MediaBrowser.Common.Json;
 using Xunit;
 
 namespace Jellyfin.Api.Tests.Controllers
@@ -10,6 +11,7 @@ namespace Jellyfin.Api.Tests.Controllers
     public sealed class DashboardControllerTests : IClassFixture<JellyfinApplicationFactory>
     {
         private readonly JellyfinApplicationFactory _factory;
+        private readonly JsonSerializerOptions _jsonOpions = JsonDefaults.GetOptions();
 
         public DashboardControllerTests(JellyfinApplicationFactory factory)
         {
@@ -57,7 +59,6 @@ namespace Jellyfin.Api.Tests.Controllers
             var response = await client.GetAsync("/web/ConfigurationPages").ConfigureAwait(false);
 
             Assert.True(response.IsSuccessStatusCode);
-            var res = await JsonSerializer.DeserializeAsync<ConfigurationPageInfo[]>(await response.Content.ReadAsStreamAsync());
             // TODO: check content
         }
 
@@ -69,8 +70,10 @@ namespace Jellyfin.Api.Tests.Controllers
             var response = await client.GetAsync("/web/ConfigurationPages?enableInMainMenu=true").ConfigureAwait(false);
 
             Assert.True(response.IsSuccessStatusCode);
-            var res = await JsonSerializer.DeserializeAsync<ConfigurationPageInfo[]>(await response.Content.ReadAsStreamAsync());
-            Assert.Empty(res);
+            var res = await response.Content.ReadAsStreamAsync();
+            System.Console.WriteLine(res);
+            var data = await JsonSerializer.DeserializeAsync<ConfigurationPageInfo[]>(res, _jsonOpions);
+            Assert.Empty(data);
         }
     }
 }