mirror of
https://github.com/Sonarr/Sonarr.git
synced 2026-04-24 22:36:19 -04:00
New: Custom Format Language Condition
This commit is contained in:
@@ -13,7 +13,6 @@ using NzbDrone.Core.MediaFiles;
|
||||
using NzbDrone.Core.Parser;
|
||||
using NzbDrone.Core.Parser.Model;
|
||||
using NzbDrone.Core.Profiles;
|
||||
using NzbDrone.Core.Profiles.Languages;
|
||||
using NzbDrone.Core.Profiles.Qualities;
|
||||
using NzbDrone.Core.Qualities;
|
||||
using NzbDrone.Core.Test.CustomFormats;
|
||||
@@ -54,16 +53,9 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
Console.WriteLine(profile.ToJson());
|
||||
}
|
||||
|
||||
private void GivenLanguageProfile(LanguageProfile profile)
|
||||
{
|
||||
_remoteMovie.Series.LanguageProfile = profile;
|
||||
|
||||
Console.WriteLine(profile.ToJson());
|
||||
}
|
||||
|
||||
private void GivenFileQuality(QualityModel quality, Language language)
|
||||
{
|
||||
_remoteMovie.Episodes.First().EpisodeFile = Builder<EpisodeFile>.CreateNew().With(x => x.Quality = quality).With(x => x.Language = language).Build();
|
||||
_remoteMovie.Episodes.First().EpisodeFile = Builder<EpisodeFile>.CreateNew().With(x => x.Quality = quality).With(x => x.Languages = new List<Language> { language }).Build();
|
||||
}
|
||||
|
||||
private void GivenNewQuality(QualityModel quality)
|
||||
@@ -100,13 +92,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(Language.English),
|
||||
Cutoff = Language.English,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.DVD, new Revision(version: 2)), Language.English);
|
||||
Subject.IsSatisfiedBy(_remoteMovie, null).Accepted.Should().BeTrue();
|
||||
}
|
||||
@@ -121,13 +106,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(Language.English),
|
||||
Cutoff = Language.English,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.HDTV720p, new Revision(version: 2)), Language.English);
|
||||
Subject.IsSatisfiedBy(_remoteMovie, null).Accepted.Should().BeFalse();
|
||||
}
|
||||
@@ -142,13 +120,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(Language.English),
|
||||
Cutoff = Language.English,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.Bluray1080p, new Revision(version: 2)), Language.English);
|
||||
Subject.IsSatisfiedBy(_remoteMovie, null).Accepted.Should().BeFalse();
|
||||
}
|
||||
@@ -163,13 +134,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(Language.English),
|
||||
Cutoff = Language.English,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.HDTV720p, new Revision(version: 1)), Language.English);
|
||||
GivenNewQuality(new QualityModel(Quality.HDTV720p, new Revision(version: 2)));
|
||||
Subject.IsSatisfiedBy(_remoteMovie, null).Accepted.Should().BeTrue();
|
||||
@@ -185,40 +149,11 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(Language.English),
|
||||
Cutoff = Language.English,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.HDTV720p, new Revision(version: 2)), Language.English);
|
||||
GivenNewQuality(new QualityModel(Quality.Bluray1080p, new Revision(version: 2)));
|
||||
Subject.IsSatisfiedBy(_remoteMovie, null).Accepted.Should().BeFalse();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void should_return_true_if_quality_cutoff_is_met_and_quality_is_higher_but_language_is_not_met()
|
||||
{
|
||||
GivenProfile(new QualityProfile
|
||||
{
|
||||
Cutoff = Quality.HDTV720p.Id,
|
||||
Items = Qualities.QualityFixture.GetDefaultQualities(),
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(),
|
||||
Cutoff = Language.Spanish,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.HDTV720p, new Revision(version: 2)), Language.English);
|
||||
GivenNewQuality(new QualityModel(Quality.Bluray1080p, new Revision(version: 2)));
|
||||
Subject.IsSatisfiedBy(_remoteMovie, null).Accepted.Should().BeTrue();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void should_return_false_if_quality_cutoff_is_met_and_quality_is_higher_but_language_is_met()
|
||||
{
|
||||
@@ -229,13 +164,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(),
|
||||
Cutoff = Language.Spanish,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.HDTV720p, new Revision(version: 2)), Language.Spanish);
|
||||
GivenNewQuality(new QualityModel(Quality.Bluray1080p, new Revision(version: 2)));
|
||||
Subject.IsSatisfiedBy(_remoteMovie, null).Accepted.Should().BeFalse();
|
||||
@@ -251,13 +179,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(),
|
||||
Cutoff = Language.Spanish,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.HDTV720p, new Revision(version: 2)), Language.French);
|
||||
GivenNewQuality(new QualityModel(Quality.Bluray1080p, new Revision(version: 2)));
|
||||
Subject.IsSatisfiedBy(_remoteMovie, null).Accepted.Should().BeFalse();
|
||||
@@ -273,13 +194,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(),
|
||||
Cutoff = Language.Spanish,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.SDTV, new Revision(version: 2)), Language.French);
|
||||
GivenNewQuality(new QualityModel(Quality.Bluray1080p, new Revision(version: 2)));
|
||||
Subject.IsSatisfiedBy(_remoteMovie, null).Accepted.Should().BeTrue();
|
||||
@@ -295,13 +209,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(),
|
||||
Cutoff = Language.Spanish,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.SDTV, new Revision(version: 2)), Language.French);
|
||||
Subject.IsSatisfiedBy(_remoteMovie, null).Accepted.Should().BeTrue();
|
||||
}
|
||||
@@ -318,13 +225,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(Language.English),
|
||||
Cutoff = Language.English,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.HDTV720p), Language.English);
|
||||
GivenNewQuality(new QualityModel(Quality.Bluray1080p));
|
||||
|
||||
@@ -346,13 +246,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(Language.English),
|
||||
Cutoff = Language.English,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.WEBDL1080p, new Revision(version: 1)), Language.English);
|
||||
GivenNewQuality(new QualityModel(Quality.WEBDL1080p, new Revision(version: 2)));
|
||||
|
||||
@@ -369,13 +262,6 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||
UpgradeAllowed = false
|
||||
});
|
||||
|
||||
GivenLanguageProfile(new LanguageProfile
|
||||
{
|
||||
Languages = LanguageFixture.GetDefaultLanguages(Language.English),
|
||||
Cutoff = Language.English,
|
||||
UpgradeAllowed = true
|
||||
});
|
||||
|
||||
GivenFileQuality(new QualityModel(Quality.WEBDL1080p), Language.English);
|
||||
GivenNewQuality(new QualityModel(Quality.Bluray1080p));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user