1
0
mirror of https://github.com/Radarr/Radarr.git synced 2024-09-11 03:52:33 +02:00

Fixed: Check for EnableCompletedDownloadHandling Enabled, Not Defined

This commit is contained in:
Qstick 2020-02-25 21:49:14 -05:00
parent 2d78e0ebb6
commit da80793204
2 changed files with 1 additions and 57 deletions

View File

@ -12,10 +12,6 @@ private void GivenCompletedDownloadHandling(bool? enabled = null)
{
if (enabled.HasValue)
{
Mocker.GetMock<IConfigService>()
.Setup(s => s.IsDefined("EnableCompletedDownloadHandling"))
.Returns(true);
Mocker.GetMock<IConfigService>()
.SetupGet(s => s.EnableCompletedDownloadHandling)
.Returns(enabled.Value);
@ -24,12 +20,6 @@ private void GivenCompletedDownloadHandling(bool? enabled = null)
[Test]
public void should_return_warning_when_completed_download_handling_not_configured()
{
Subject.Check().ShouldBeWarning();
}
[Test]
public void should_return_warning_when_both_completeddownloadhandling_and_dronefactory_are_not_configured()
{
GivenCompletedDownloadHandling(false);

View File

@ -1,11 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using NzbDrone.Core.Configuration;
using NzbDrone.Core.Configuration.Events;
using NzbDrone.Core.Download;
using NzbDrone.Core.Download.Clients.Nzbget;
using NzbDrone.Core.Download.Clients.Sabnzbd;
using NzbDrone.Core.ThingiProvider.Events;
namespace NzbDrone.Core.HealthCheck.Checks
@ -16,55 +11,14 @@ namespace NzbDrone.Core.HealthCheck.Checks
public class ImportMechanismCheck : HealthCheckBase
{
private readonly IConfigService _configService;
private readonly IProvideDownloadClient _provideDownloadClient;
public ImportMechanismCheck(IConfigService configService, IProvideDownloadClient provideDownloadClient)
public ImportMechanismCheck(IConfigService configService)
{
_configService = configService;
_provideDownloadClient = provideDownloadClient;
}
public override HealthCheck Check()
{
List<ImportMechanismCheckStatus> downloadClients;
try
{
downloadClients = _provideDownloadClient.GetDownloadClients().Select(v => new ImportMechanismCheckStatus
{
DownloadClient = v,
Status = v.GetStatus()
}).ToList();
}
catch (Exception)
{
// One or more download clients failed, assume the health is okay and verify later
return new HealthCheck(GetType());
}
var downloadClientIsLocalHost = downloadClients.All(v => v.Status.IsLocalhost);
if (!_configService.IsDefined("EnableCompletedDownloadHandling"))
{
// Migration helper logic
if (!downloadClientIsLocalHost)
{
return new HealthCheck(GetType(), HealthCheckResult.Warning, "Enable Completed Download Handling if possible (Multi-Computer unsupported)", "Migrating-to-Completed-Download-Handling#Unsupported-download-client-on-different-computer");
}
if (downloadClients.All(v => v.DownloadClient is Sabnzbd))
{
return new HealthCheck(GetType(), HealthCheckResult.Warning, "Enable Completed Download Handling if possible (Sabnzbd)", "Migrating-to-Completed-Download-Handling#sabnzbd-enable-completed-download-handling");
}
if (downloadClients.All(v => v.DownloadClient is Nzbget))
{
return new HealthCheck(GetType(), HealthCheckResult.Warning, "Enable Completed Download Handling if possible (Nzbget)", "Migrating-to-Completed-Download-Handling#nzbget-enable-completed-download-handling");
}
return new HealthCheck(GetType(), HealthCheckResult.Warning, "Enable Completed Download Handling if possible", "Migrating-to-Completed-Download-Handling");
}
if (!_configService.EnableCompletedDownloadHandling)
{
return new HealthCheck(GetType(), HealthCheckResult.Warning, "Enable Completed Download Handling");