Your ROOT_URL in app.ini is https://git.cloudchain.link/ but you are visiting https://dash.bss.nz/open-source-mirrors/Radarr/commit/a4d6851be10b4dd96fdc91ea450cf2bfdfd33c91
You should set ROOT_URL correctly, otherwise the web may not work correctly.
8 changed files with
56 additions and
5 deletions
@ -1,5 +1,6 @@
using FluentAssertions ;
using NUnit.Framework ;
using NzbDrone.Core.Configuration ;
using NzbDrone.Core.Qualities ;
using NzbDrone.Core.Tv ;
using NzbDrone.Core.DecisionEngine ;
@ -24,11 +25,30 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
new object [ ] { Quality . WEBDL1080p , false , Quality . WEBDL1080p , false , Quality . WEBDL1080p , false }
} ;
private void GivenAutoDownloadPropers ( bool autoDownloadPropers )
{
Mocker . GetMock < IConfigService > ( )
. SetupGet ( s = > s . AutoDownloadPropers )
. Returns ( autoDownloadPropers ) ;
}
[Test, TestCaseSource("IsUpgradeTestCases")]
public void IsUpgradeTest ( Quality current , bool currentProper , Quality newQuality , bool newProper , Quality cutoff , bool expected )
{
GivenAutoDownloadPropers ( true ) ;
Subject . IsUpgradable ( new QualityProfile ( ) { Cutoff = cutoff } , new QualityModel ( current , currentProper ) , new QualityModel ( newQuality , newProper ) )
. Should ( ) . Be ( expected ) ;
}
[Test]
public void should_return_false_if_proper_and_autoDownloadPropers_is_false ( )
{
GivenAutoDownloadPropers ( false ) ;
Subject . IsUpgradable ( new QualityProfile { Cutoff = Quality . Bluray1080p } ,
new QualityModel ( Quality . DVD , true ) ,
new QualityModel ( Quality . DVD , false ) ) . Should ( ) . BeFalse ( ) ;
}
}
}
@ -2,7 +2,7 @@
using FizzWare.NBuilder ;
using FluentAssertions ;
using NUnit.Framework ;
using NzbDrone.Core.DecisionEngine.Specifications ;
using NzbDrone.Core.DecisionEngine.Specifications .RssSync ;
using NzbDrone.Core.History ;
using NzbDrone.Core.IndexerSearch.Definitions ;
using NzbDrone.Core.Parser.Model ;
@ -251,6 +251,13 @@ namespace NzbDrone.Core.Configuration
set { SetValue ( "RssSyncInterval" , value ) ; }
}
public Boolean AutoDownloadPropers
{
get { return GetValueBoolean ( "AutoDownloadPropers" , true ) ; }
set { SetValue ( "AutoDownloadPropers" , value ) ; }
}
private string GetValue ( string key )
{
return GetValue ( key , String . Empty ) ;
@ -37,6 +37,7 @@ namespace NzbDrone.Core.Configuration
PriorityType NzbgetOlderTvPriority { get ; set ; }
string ReleaseRestrictions { get ; set ; }
Int32 RssSyncInterval { get ; set ; }
Boolean AutoDownloadPropers { get ; set ; }
void SaveValues ( Dictionary < string , object > configValues ) ;
}
}
@ -1,4 +1,5 @@
using NLog ;
using NzbDrone.Core.Configuration ;
using NzbDrone.Core.Qualities ;
using NzbDrone.Core.Tv ;
@ -11,10 +12,12 @@ namespace NzbDrone.Core.DecisionEngine
public class QualityUpgradableSpecification : IQualityUpgradableSpecification
{
private readonly IConfigService _configService ;
private readonly Logger _logger ;
public QualityUpgradableSpecification ( Logger logger )
public QualityUpgradableSpecification ( IConfigService configService , Logger logger )
{
_configService = configService ;
_logger = logger ;
}
@ -28,7 +31,7 @@ namespace NzbDrone.Core.DecisionEngine
return false ;
}
if ( currentQuality . Quality = = newQuality . Quality & & newQuality . Proper )
if ( currentQuality . Quality = = newQuality . Quality & & newQuality . Proper & & _configService . AutoDownloadPropers )
{
_logger . Trace ( "Upgrading existing item to proper." ) ;
return true ;
@ -3,7 +3,7 @@ using NzbDrone.Core.History;
using NzbDrone.Core.IndexerSearch.Definitions ;
using NzbDrone.Core.Parser.Model ;
namespace NzbDrone.Core.DecisionEngine.Specifications
namespace NzbDrone.Core.DecisionEngine.Specifications .RssSync
{
public class UpgradeHistorySpecification : IDecisionEngineSpecification
{
@ -186,7 +186,7 @@
<Compile Include= "DecisionEngine\QualityUpgradableSpecification.cs" />
<Compile Include= "DecisionEngine\Specifications\Search\SingleEpisodeSearchMatchSpecification.cs" />
<Compile Include= "DecisionEngine\Specifications\UpgradeDiskSpecification.cs" />
<Compile Include= "DecisionEngine\Specifications\ UpgradeHistorySpecification.cs" />
<Compile Include= "DecisionEngine\Specifications\ RssSync\ UpgradeHistorySpecification.cs" />
<Compile Include= "Download\Clients\Sabnzbd\ConnectionInfoModel.cs" />
<Compile Include= "Download\Clients\Sabnzbd\JsonConverters\SabnzbdPriorityTypeConverter.cs" />
<Compile Include= "Download\Clients\Sabnzbd\JsonConverters\SabnzbdQueueTimeConverter.cs" />
@ -20,4 +20,24 @@
< / span >
< / div >
< / div >
< div class = "control-group" >
< label class = "control-label" > Download Propers< / label >
< div class = "controls" >
< label class = "checkbox toggle well" >
< input type = "checkbox" name = "autoDownloadPropers" / >
< p >
< span > Yes< / span >
< span > No< / span >
< / p >
< div class = "btn btn-primary slide-button" / >
< / label >
< span class = "help-inline-checkbox" >
< i class = "icon-question-sign" title = "Should NzbDrone automatically upgrade to propers when available?" / >
< / span >
< / div >
< / div >
< / fieldset >