Feature/version check in library migration (#14105)

This commit is contained in:
JPVenson
2025-06-05 17:59:11 +03:00
committed by GitHub
parent a3578caa8c
commit 88332e89c4
17 changed files with 734 additions and 55 deletions

View File

@@ -5,6 +5,7 @@ using System.IO;
using Emby.Server.Implementations;
using Jellyfin.Server.Extensions;
using Jellyfin.Server.Helpers;
using Jellyfin.Server.ServerSetupApp;
using MediaBrowser.Common;
using MediaBrowser.Common.Configuration;
using Microsoft.AspNetCore.Hosting;
@@ -16,6 +17,7 @@ using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging.Abstractions;
using Moq;
using Serilog;
using Serilog.Core;
using Serilog.Extensions.Logging;
namespace Jellyfin.Server.Integration.Tests
@@ -95,7 +97,8 @@ namespace Jellyfin.Server.Integration.Tests
.AddInMemoryCollection(ConfigurationOptions.DefaultConfiguration)
.AddEnvironmentVariables("JELLYFIN_")
.AddInMemoryCollection(commandLineOpts.ConvertToConfig());
});
})
.ConfigureServices(e => e.AddSingleton<IStartupLogger, NullStartupLogger>().AddSingleton(e));
}
/// <inheritdoc/>
@@ -128,5 +131,39 @@ namespace Jellyfin.Server.Integration.Tests
base.Dispose(disposing);
}
private sealed class NullStartupLogger : IStartupLogger
{
public IStartupLogger BeginGroup(FormattableString logEntry)
{
return this;
}
public IDisposable? BeginScope<TState>(TState state)
where TState : notnull
{
return NullLogger.Instance.BeginScope(state);
}
public bool IsEnabled(LogLevel logLevel)
{
return NullLogger.Instance.IsEnabled(logLevel);
}
public void Log<TState>(LogLevel logLevel, EventId eventId, TState state, Exception? exception, Func<TState, Exception?, string> formatter)
{
NullLogger.Instance.Log(logLevel, eventId, state, exception, formatter);
}
public Microsoft.Extensions.Logging.ILogger With(Microsoft.Extensions.Logging.ILogger logger)
{
return this;
}
IStartupLogger IStartupLogger.With(Microsoft.Extensions.Logging.ILogger logger)
{
return this;
}
}
}
}