Make ItemUpdateController.UpdateItem internal instead of reflection
Addresses review feedback from @Bond-009 on PR #17370: the test helper InvokeUpdateItem was invoking the private UpdateItem(BaseItemDto, BaseItem) method via reflection. Jellyfin.Api.csproj already grants InternalsVisibleTo("Jellyfin.Api.Tests"), so the method is changed to internal and the test now calls it directly, removing the GetMethod/Invoke boilerplate. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -236,7 +236,7 @@ public class ItemUpdateController : BaseJellyfinApiController
|
||||
return NoContent();
|
||||
}
|
||||
|
||||
private async Task UpdateItem(BaseItemDto request, BaseItem item)
|
||||
internal async Task UpdateItem(BaseItemDto request, BaseItem item)
|
||||
{
|
||||
item.Name = request.Name;
|
||||
item.ForcedSortName = request.ForcedSortName;
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
using System;
|
||||
using System.Reflection;
|
||||
using System.Threading.Tasks;
|
||||
using Jellyfin.Api.Controllers;
|
||||
using MediaBrowser.Controller.Configuration;
|
||||
@@ -73,15 +72,6 @@ public class ItemUpdateControllerTests
|
||||
|
||||
private Task InvokeUpdateItem(BaseItemDto request, BaseItem item)
|
||||
{
|
||||
var method = typeof(ItemUpdateController).GetMethod(
|
||||
"UpdateItem",
|
||||
BindingFlags.NonPublic | BindingFlags.Instance,
|
||||
null,
|
||||
new[] { typeof(BaseItemDto), typeof(BaseItem) },
|
||||
null);
|
||||
|
||||
Assert.NotNull(method);
|
||||
|
||||
return (Task)method!.Invoke(_subject, new object[] { request, item })!;
|
||||
return _subject.UpdateItem(request, item);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user