From 98d79dab2081c6b16bcc32d1a7b6314ecbbe68eb Mon Sep 17 00:00:00 2001 From: Taloth Saldono Date: Sat, 19 Jul 2014 22:33:12 +0200 Subject: [PATCH] Updated NotInQueueSpecification Tests. --- .../NotInQueueSpecificationFixture.cs | 43 ++++++++++++++----- 1 file changed, 32 insertions(+), 11 deletions(-) diff --git a/src/NzbDrone.Core.Test/DecisionEngineTests/NotInQueueSpecificationFixture.cs b/src/NzbDrone.Core.Test/DecisionEngineTests/NotInQueueSpecificationFixture.cs index a41d36669..ff0457b43 100644 --- a/src/NzbDrone.Core.Test/DecisionEngineTests/NotInQueueSpecificationFixture.cs +++ b/src/NzbDrone.Core.Test/DecisionEngineTests/NotInQueueSpecificationFixture.cs @@ -54,26 +54,30 @@ namespace NzbDrone.Core.Test.DecisionEngineTests private void GivenEmptyQueue() { - Mocker.GetMock() - .Setup(s => s.GetQueue()) - .Returns(new List()); + Mocker.GetMock() + .Setup(s => s.GetQueuedDownloads()) + .Returns(new TrackedDownload[0]); } - private void GivenQueue(IEnumerable remoteEpisodes) + private void GivenQueue(IEnumerable remoteEpisodes, TrackedDownloadState state = TrackedDownloadState.Downloading) { - var queue = new List(); + var queue = new List(); foreach (var remoteEpisode in remoteEpisodes) { - queue.Add(new Queue.Queue + queue.Add(new TrackedDownload { - RemoteEpisode = remoteEpisode - }); + State = state, + DownloadItem = new DownloadClientItem + { + RemoteEpisode = remoteEpisode + } + }); } - Mocker.GetMock() - .Setup(s => s.GetQueue()) - .Returns(queue); + Mocker.GetMock() + .Setup(s => s.GetQueuedDownloads()) + .Returns(queue.ToArray()); } [Test] @@ -95,6 +99,23 @@ namespace NzbDrone.Core.Test.DecisionEngineTests Subject.IsSatisfiedBy(_remoteEpisode, null).Should().BeTrue(); } + [Test] + public void should_return_true_when_download_is_failed() + { + var remoteEpisode = Builder.CreateNew() + .With(r => r.Series = _series) + .With(r => r.Episodes = new List { _episode }) + .With(r => r.ParsedEpisodeInfo = new ParsedEpisodeInfo + { + Quality = new QualityModel(Quality.DVD) + }) + .Build(); + + GivenQueue(new List { remoteEpisode }, TrackedDownloadState.DownloadFailed); + + Subject.IsSatisfiedBy(_remoteEpisode, null).Should().BeTrue(); + } + [Test] public void should_return_true_when_quality_in_queue_is_lower() {