From 5e02ab972c344523a7b1d882f87941e221790304 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Fri, 3 Jun 2011 22:32:55 -0700 Subject: [PATCH] Added NzbMatrix Search Url, with tests. --- NzbDrone.Core.Test/IndexerTests.cs | 53 +++++++++++++++++--- NzbDrone.Core/Providers/Indexer/NzbMatrix.cs | 9 +++- 2 files changed, 53 insertions(+), 9 deletions(-) diff --git a/NzbDrone.Core.Test/IndexerTests.cs b/NzbDrone.Core.Test/IndexerTests.cs index 0c74fe042..50ac36d16 100644 --- a/NzbDrone.Core.Test/IndexerTests.cs +++ b/NzbDrone.Core.Test/IndexerTests.cs @@ -117,7 +117,6 @@ namespace NzbDrone.Core.Test Assert.AreEqual(quality, result.Quality.QualityType); } - [Test] [TestCase("Adventure.Inc.DVDRip.XviD-OSiTV")] public void custome_parser_full_parse(string title) @@ -143,8 +142,6 @@ namespace NzbDrone.Core.Test ExceptionVerification.ExcpectedWarns(1); } - - [Test] public void downloadFeed() { @@ -161,7 +158,6 @@ namespace NzbDrone.Core.Test ExceptionVerification.IgnoreWarns(); } - [Test] public void nzbsorg_search_returns_valid_results() { @@ -175,7 +171,6 @@ namespace NzbDrone.Core.Test .SetupGet(c => c.NzbsOrgHash) .Returns("bc8edb4cc49d4ae440775adec5ac001f"); - mocker.Resolve(); var result = mocker.Resolve().FetchEpisode("Simpsons", 21, 23); @@ -186,7 +181,6 @@ namespace NzbDrone.Core.Test result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(23)); } - [Test] public void newzbin_search_returns_valid_results() { @@ -200,7 +194,6 @@ namespace NzbDrone.Core.Test .SetupGet(c => c.NewzbinPassword) .Returns("smartar39865"); - mocker.Resolve(); var result = mocker.Resolve().FetchEpisode("Simpsons", 21, 23); @@ -211,6 +204,28 @@ namespace NzbDrone.Core.Test result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(23)); } + [Test] + public void nzbmatrix_search_returns_valid_results() + { + var mocker = new AutoMoqer(); + + mocker.GetMock() + .SetupGet(c => c.NzbMatrixUsername) + .Returns(""); + + mocker.GetMock() + .SetupGet(c => c.NzbMatrixApiKey) + .Returns(""); + + mocker.Resolve(); + + var result = mocker.Resolve().FetchEpisode("Simpsons", 21, 23); + + result.Should().NotBeEmpty(); + result.Should().OnlyContain(r => r.CleanTitle == "simpsons"); + result.Should().OnlyContain(r => r.SeasonNumber == 21); + result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(23)); + } [Test] public void nzbsorg_multi_word_search_returns_valid_results() @@ -225,7 +240,6 @@ namespace NzbDrone.Core.Test .SetupGet(c => c.NzbsOrgHash) .Returns("bc8edb4cc49d4ae440775adec5ac001f"); - mocker.Resolve(); var result = mocker.Resolve().FetchEpisode("Blue Bloods", 1, 19); @@ -236,5 +250,28 @@ namespace NzbDrone.Core.Test result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(19)); } + + [Test] + public void nzbmatrix_multi_word_search_returns_valid_results() + { + var mocker = new AutoMoqer(); + + mocker.GetMock() + .SetupGet(c => c.NzbMatrixUsername) + .Returns(""); + + mocker.GetMock() + .SetupGet(c => c.NzbMatrixApiKey) + .Returns(""); + + mocker.Resolve(); + + var result = mocker.Resolve().FetchEpisode("Blue Bloods", 1, 19); + + result.Should().NotBeEmpty(); + result.Should().OnlyContain(r => r.CleanTitle == "bluebloods"); + result.Should().OnlyContain(r => r.SeasonNumber == 1); + result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(19)); + } } } diff --git a/NzbDrone.Core/Providers/Indexer/NzbMatrix.cs b/NzbDrone.Core/Providers/Indexer/NzbMatrix.cs index 72e5e1313..ed696518d 100644 --- a/NzbDrone.Core/Providers/Indexer/NzbMatrix.cs +++ b/NzbDrone.Core/Providers/Indexer/NzbMatrix.cs @@ -42,7 +42,14 @@ namespace NzbDrone.Core.Providers.Indexer protected override IList GetSearchUrls(string seriesTitle, int seasonNumber, int episodeNumber) { - return new List(); + var searchUrls = new List(); + + foreach (var url in Urls) + { + searchUrls.Add(String.Format("{0}&term={1}+s{2:00}e{3:00}", url, GetQueryTitle(seriesTitle), seasonNumber, episodeNumber)); + } + + return searchUrls; } }