mirror of
https://github.com/Sonarr/Sonarr.git
synced 2025-04-24 22:37:06 -04:00
parent
dc7b4cebf2
commit
72fa89ba76
3 changed files with 29 additions and 4 deletions
|
@ -260,5 +260,30 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||||
new QualityModel(Quality.Bluray1080p, new Revision(version: 2)),
|
new QualityModel(Quality.Bluray1080p, new Revision(version: 2)),
|
||||||
10).Should().BeTrue();
|
10).Should().BeTrue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void should_return_true_if_cutoffs_are_met_but_is_a_revision_upgrade()
|
||||||
|
{
|
||||||
|
QualityProfile _profile = new QualityProfile
|
||||||
|
{
|
||||||
|
Cutoff = Quality.HDTV1080p.Id,
|
||||||
|
Items = Qualities.QualityFixture.GetDefaultQualities(),
|
||||||
|
};
|
||||||
|
|
||||||
|
LanguageProfile _langProfile = new LanguageProfile
|
||||||
|
{
|
||||||
|
Cutoff = Language.English,
|
||||||
|
Languages = LanguageFixture.GetDefaultLanguages()
|
||||||
|
};
|
||||||
|
|
||||||
|
Subject.CutoffNotMet(
|
||||||
|
_profile,
|
||||||
|
_langProfile,
|
||||||
|
new QualityModel(Quality.WEBDL1080p, new Revision(version: 1)),
|
||||||
|
Language.English,
|
||||||
|
NoPreferredWordScore,
|
||||||
|
new QualityModel(Quality.WEBDL1080p, new Revision(version: 2)),
|
||||||
|
NoPreferredWordScore).Should().BeTrue();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,7 +38,7 @@ namespace NzbDrone.Core.DecisionEngine.Specifications
|
||||||
_logger.Debug("Comparing file quality and language with report. Existing file is {0} - {1}", file.Quality, file.Language);
|
_logger.Debug("Comparing file quality and language with report. Existing file is {0} - {1}", file.Quality, file.Language);
|
||||||
|
|
||||||
if (!_upgradableSpecification.CutoffNotMet(qualityProfile,
|
if (!_upgradableSpecification.CutoffNotMet(qualityProfile,
|
||||||
languageProfile,
|
languageProfile,
|
||||||
file.Quality,
|
file.Quality,
|
||||||
file.Language,
|
file.Language,
|
||||||
_preferredWordServiceCalculator.Calculate(subject.Series, file.GetSceneOrFileName()),
|
_preferredWordServiceCalculator.Calculate(subject.Series, file.GetSceneOrFileName()),
|
||||||
|
|
|
@ -87,14 +87,14 @@ namespace NzbDrone.Core.DecisionEngine.Specifications
|
||||||
|
|
||||||
public bool QualityCutoffNotMet(QualityProfile profile, QualityModel currentQuality, QualityModel newQuality = null)
|
public bool QualityCutoffNotMet(QualityProfile profile, QualityModel currentQuality, QualityModel newQuality = null)
|
||||||
{
|
{
|
||||||
var qualityCompare = new QualityModelComparer(profile).Compare(currentQuality.Quality.Id, profile.Cutoff);
|
var cutoffCompare = new QualityModelComparer(profile).Compare(currentQuality.Quality.Id, profile.Cutoff);
|
||||||
|
|
||||||
if (qualityCompare < 0)
|
if (cutoffCompare < 0)
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (qualityCompare == 0 && newQuality != null && IsRevisionUpgrade(currentQuality, newQuality))
|
if (newQuality != null && IsRevisionUpgrade(currentQuality, newQuality))
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue