mirror of
https://github.com/Sonarr/Sonarr.git
synced 2026-04-24 22:36:19 -04:00
New: Support in services for multiple scene naming/numbering exceptions
This commit is contained in:
+4
-15
@@ -22,26 +22,17 @@ namespace NzbDrone.Core.Test.DecisionEngineTests.Search.SingleEpisodeSearchMatch
|
||||
_remoteEpisode.ParsedEpisodeInfo = new ParsedEpisodeInfo();
|
||||
_remoteEpisode.ParsedEpisodeInfo.SeasonNumber = 5;
|
||||
_remoteEpisode.ParsedEpisodeInfo.EpisodeNumbers = new[] { 1 };
|
||||
_remoteEpisode.MappedSeasonNumber = 5;
|
||||
|
||||
_searchCriteria.SeasonNumber = 5;
|
||||
_searchCriteria.EpisodeNumber = 1;
|
||||
|
||||
Mocker.GetMock<ISceneMappingService>()
|
||||
.Setup(v => v.GetTvdbSeasonNumber(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<int>()))
|
||||
.Returns<string, string, int>((s, r, i) => i);
|
||||
}
|
||||
|
||||
private void GivenMapping(int sceneSeasonNumber, int seasonNumber)
|
||||
{
|
||||
Mocker.GetMock<ISceneMappingService>()
|
||||
.Setup(v => v.GetTvdbSeasonNumber(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<int>()))
|
||||
.Returns<string, string, int>((s, r, i) => i >= sceneSeasonNumber ? (seasonNumber + i - sceneSeasonNumber) : i);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void should_return_false_if_season_does_not_match()
|
||||
{
|
||||
_remoteEpisode.ParsedEpisodeInfo.SeasonNumber = 10;
|
||||
_remoteEpisode.MappedSeasonNumber = 10;
|
||||
|
||||
Subject.IsSatisfiedBy(_remoteEpisode, _searchCriteria).Accepted.Should().BeFalse();
|
||||
}
|
||||
@@ -50,8 +41,7 @@ namespace NzbDrone.Core.Test.DecisionEngineTests.Search.SingleEpisodeSearchMatch
|
||||
public void should_return_true_if_season_matches_after_scenemapping()
|
||||
{
|
||||
_remoteEpisode.ParsedEpisodeInfo.SeasonNumber = 10;
|
||||
|
||||
GivenMapping(10, 5);
|
||||
_remoteEpisode.MappedSeasonNumber = 5; // 10 -> 5 mapping
|
||||
|
||||
Subject.IsSatisfiedBy(_remoteEpisode, _searchCriteria).Accepted.Should().BeTrue();
|
||||
}
|
||||
@@ -60,8 +50,7 @@ namespace NzbDrone.Core.Test.DecisionEngineTests.Search.SingleEpisodeSearchMatch
|
||||
public void should_return_false_if_season_does_not_match_after_scenemapping()
|
||||
{
|
||||
_remoteEpisode.ParsedEpisodeInfo.SeasonNumber = 10;
|
||||
|
||||
GivenMapping(9, 5);
|
||||
_remoteEpisode.MappedSeasonNumber = 6; // 9 -> 5 mapping
|
||||
|
||||
Subject.IsSatisfiedBy(_remoteEpisode, _searchCriteria).Accepted.Should().BeFalse();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user